From f715c6125dbd7239c0b452263c3099a5b73a3caf Mon Sep 17 00:00:00 2001 From: "Torsten Schulz (local)" Date: Tue, 7 Apr 2026 16:23:11 +0200 Subject: [PATCH] feat(i18n): implement deep merging for locale chunks and enhance Cebuano translations - Introduced a deep merge function to combine locale chunks, improving the handling of language data for Cebuano. - Updated Cebuano locale files with comprehensive translations, including new sections for admin, social network, and settings. - Enhanced existing translations for clarity and consistency across various components, ensuring a better user experience. - Added new fields in the settings and profile sections to capture more user attributes, improving personalization options. --- frontend/scripts/build-ceb-falukant-patch.mjs | 173 ++ .../scripts/build-ceb-socialnetwork-patch.mjs | 282 +++ .../scripts/ceb-patches/falukant-patch.json | 573 ++++++ .../ceb-patches/socialnetwork-patch.json | 386 ++++ frontend/scripts/merge-ceb-locale-patch.mjs | 45 + frontend/src/i18n/index.js | 107 +- frontend/src/i18n/locales/ceb/admin.json | 544 ++++- frontend/src/i18n/locales/ceb/falukant.json | 1769 +++++++++++------ frontend/src/i18n/locales/ceb/general.json | 11 + frontend/src/i18n/locales/ceb/settings.json | 201 +- .../src/i18n/locales/ceb/socialnetwork.json | 1186 +++++++---- frontend/src/i18n/locales/es/blog.json | 56 +- frontend/src/i18n/locales/es/falukant.json | 111 +- frontend/src/i18n/locales/es/minigames.json | 36 +- .../src/i18n/locales/es/passwordReset.json | 14 +- frontend/src/i18n/locales/es/register.json | 44 +- frontend/src/i18n/locales/es/settings.json | 15 + 17 files changed, 4380 insertions(+), 1173 deletions(-) create mode 100644 frontend/scripts/build-ceb-falukant-patch.mjs create mode 100644 frontend/scripts/build-ceb-socialnetwork-patch.mjs create mode 100644 frontend/scripts/ceb-patches/falukant-patch.json create mode 100644 frontend/scripts/ceb-patches/socialnetwork-patch.json create mode 100644 frontend/scripts/merge-ceb-locale-patch.mjs diff --git a/frontend/scripts/build-ceb-falukant-patch.mjs b/frontend/scripts/build-ceb-falukant-patch.mjs new file mode 100644 index 0000000..48d24bb --- /dev/null +++ b/frontend/scripts/build-ceb-falukant-patch.mjs @@ -0,0 +1,173 @@ +/** + * Baut scripts/ceb-patches/falukant-patch.json aus /tmp/ceb-fal-miss.json (EN) mit Phrase-Mapping → Bisaya. + */ +import fs from 'fs'; +import path from 'path'; +import { fileURLToPath } from 'url'; + +const __dirname = path.dirname(fileURLToPath(import.meta.url)); +const root = path.resolve(__dirname, '..'); + +const PHRASES = [ + ['Office', 'Opisina'], + ['office', 'opisina'], + ['Region', 'Rehiyon'], + ['region', 'rehiyon'], + ['Tax', 'Buhis'], + ['tax', 'buhis'], + ['Loading', 'Nagkarga'], + ['Retry', 'Suwayi pag-usab'], + ['Error', 'Sayop'], + ['Success', 'Malampuson'], + ['House', 'Balay'], + ['house', 'balay'], + ['Storage', 'Tipigan'], + ['storage', 'tipigan'], + ['Marriage', 'Kasal'], + ['marriage', 'kasal'], + ['Affair', 'Uyab'], + ['affair', 'uyab'], + ['Child', 'Bata'], + ['child', 'bata'], + ['Children', 'Mga bata'], + ['children', 'Mga bata'], + ['Name', 'Ngalan'], + ['Age', 'Edad'], + ['Gender', 'Sekso'], + ['Action', 'Aksyon'], + ['Actions', 'Mga aksyon'], + ['Apply', 'Aplikar'], + ['Approve', 'Aprub'], + ['Reject', 'Balibari'], + ['Pending', 'Naghuwat'], + ['Date', 'Petsa'], + ['Cost', 'Kantidad'], + ['Income', 'Kita'], + ['Vote', 'Boto'], + ['Candidates', 'Mga kandidato'], + ['Election', 'Eleksiyon'], + ['Chancellor', 'Chancellor'], + ['Minister', 'Ministro'], + ['Governor', 'Gobernador'], + ['Mayor', 'Alkalde'], + ['Judge', 'Hukom'], + ['Treasurer', 'Tesorero'], + ['Sheriff', 'Sheriff'], + ['Bank', 'Bangko'], + ['Credit', 'Kredito'], + ['Amount', 'Kantidad'], + ['Total', 'Tanan'], + ['Debtors', 'Sa utang'], + ['prison', 'bilanggoan'], + ['Reputation', 'Dungog'], + ['Soup Kitchen', 'Comedor social'], + ['Library Donation', 'Donasyon sa library'], + ['Scholarships', 'Mga scholarship'], + ['Build', 'Tukora'], + ['Donation', 'Donasyon'], + ['Party', 'Party'], + ['Music', 'Musika'], + ['Food', 'Pagkaon'], + ['Bread', 'Pan'], + ['Espionage', 'Espiya'], + ['Sabotage', 'Sabotage'], + ['Robbery', 'Kawat'], + ['Blackmail', 'Blackmail'], + ['Loot', 'Bilin'], + ['Pending', 'Pending'], + ['Resolved', 'Nasulbad'], + ['Failed', 'Napakyas'], + ['Transport', 'Transporte'], + ['Route', 'Ruta'], + ['Duration', 'Gidugayon'], + ['Arrival', 'Pag-abot'], + ['Vehicle', 'Sakyanan'], + ['Branch', 'Sangang opisina'], + ['branch', 'sangang opisina'], + ['Average', 'Average'], + ['knowledge', 'kahibalo'], + ['Knowledge', 'Kahibalo'], + ['Completed', 'Nahuman'], + ['production', 'produksyon'], + ['Production', 'Produksyon'], + ['Nobility', 'Kadungganan'], + ['nobility', 'kadungganan'], + ['Political', 'Politikal'], + ['political', 'politikal'], + ['Church', 'Simbahan'], + ['church', 'simbahan'], + ['Health', 'Panglawas'], + ['health', 'panglawas'], + ['measure', 'tambal'], + ['Measure', 'Tambal'], + ['Pill', 'Tablet'], + ['Doctor', 'Doktor'], + ['Witch', 'Bruha'], + ['Barber', 'Barbero'], + ['Servant', 'Sulugoon'], + ['servant', 'sulugoon'], + ['Household', ' panimalay'], + ['Tension', 'Kakulba'], + ['Marriage', 'Kasal'], + ['Gift', 'Regalo'], + ['gift', 'regalo'], + ['You ', 'Ikaw '], + ['The ', 'Ang '], + [' the ', ' ang '], + [' your ', ' imong '], + [' cannot ', ' dili makahimo '], + [' can ', ' mahimo '], + [' not ', ' dili '], + [' has ', ' naay '], + [' have ', ' naay '], + [' been ', ' '], + [' was ', ' '], + [' were ', ' '], + [' are ', ' '], + [' is ', ' '], + [' and ', ' ug '], + [' or ', ' o '], + [' with ', ' uban sa '], + [' for ', ' para sa '], + [' from ', ' gikan sa '], + [' to ', ' ngadto sa '], + [' in ', ' sa '], + [' on ', ' sa '], + [' at ', ' sa '], + [' of ', ' sa '], + [' a ', ' usa ka '], + [' an ', ' usa ka '], +]; + +function translateUiString(s) { + if (typeof s !== 'string') return s; + let out = s; + for (const [en, ceb] of PHRASES) { + if (out.includes(en)) out = out.split(en).join(ceb); + } + return out; +} + +function mapStringsDeep(node) { + if (typeof node === 'string') return translateUiString(node); + if (node === null || typeof node !== 'object' || Array.isArray(node)) return node; + const out = {}; + for (const k of Object.keys(node)) { + out[k] = mapStringsDeep(node[k]); + } + return out; +} + +const missPath = '/tmp/ceb-fal-miss.json'; +if (!fs.existsSync(missPath)) { + console.error('Missing', missPath); + process.exit(1); +} + +const inner = mapStringsDeep(JSON.parse(fs.readFileSync(missPath, 'utf8'))); +const patch = { falukant: inner }; + +const outPath = path.join(root, 'scripts', 'ceb-patches', 'falukant-patch.json'); +fs.mkdirSync(path.dirname(outPath), { recursive: true }); +fs.writeFileSync(outPath, JSON.stringify(patch, null, 2) + '\n', 'utf8'); +console.log('Wrote', outPath); diff --git a/frontend/scripts/build-ceb-socialnetwork-patch.mjs b/frontend/scripts/build-ceb-socialnetwork-patch.mjs new file mode 100644 index 0000000..8e901e5 --- /dev/null +++ b/frontend/scripts/build-ceb-socialnetwork-patch.mjs @@ -0,0 +1,282 @@ +/** + * Baut scripts/ceb-patches/socialnetwork-patch.json für deepMerge in ceb/socialnetwork.json. + * Benötigt: /tmp/vocab-patch-en.json (wird vom Aufrufer erzeugt) + */ +import fs from 'fs'; +import path from 'path'; +import { fileURLToPath } from 'url'; + +const __dirname = path.dirname(fileURLToPath(import.meta.url)); +const root = path.resolve(__dirname, '..'); + +function readJson(p) { + return JSON.parse(fs.readFileSync(p, 'utf8')); +} + +const PHRASES = [ + ['Vocabulary trainer', 'Trainer sa bokabularyo'], + ['vocabulary', 'bokabularyo'], + ['Vocabulary', 'Bokabularyo'], + ['Chapter Test', 'Tsek sa kapitulo'], + ['chapter test', 'tsek sa kapitulo'], + ['Create ', 'Paghimo og '], + ['Create', 'Paghimo'], + ['Delete ', 'Tangtanga ang '], + ['Delete', 'Tangtanga'], + ['Save', 'I-save'], + ['Cancel', 'Kanselahon'], + ['Close', 'Isira'], + ['Open ', 'Ablihi ang '], + ['Open', 'Ablihi'], + ['Search', 'Pangita'], + ['Loading', 'Nagkarga'], + ['Error', 'Sayop'], + ['Success', 'Malampuson'], + ['lesson', 'leksiyon'], + ['Lesson', 'Leksiyon'], + ['lessons', 'mga leksiyon'], + ['Lessons', 'Mga leksiyon'], + ['course', 'kurso'], + ['Course', 'Kurso'], + ['courses', 'mga kurso'], + ['Courses', 'Mga kurso'], + ['language', 'pinulongan'], + ['Language', 'Pinulongan'], + ['chapter', 'kapitulo'], + ['Chapter', 'Kapitulo'], + ['practice', 'praktis'], + ['Practice', 'Praktis'], + ['correct', 'tama'], + ['Correct', 'Tama'], + ['wrong', 'sayop'], + ['Wrong', 'Sayop'], + ['Next', 'Sunod'], + ['Back', 'Balik'], + ['Skip', 'Laktaw'], + ['Check', 'Susihi'], + ['Start ', 'Sugdi ang '], + ['Start', 'Sugdi'], + ['Stop ', 'Hunong ang '], + ['Stop', 'Hunong'], + ['Continue', 'Padayon'], + ['Review', 'Balik-balik'], + ['Title', 'Titulo'], + ['Description', 'Deskripsiyon'], + ['Optional', 'Opsyonal'], + ['Invalid', 'Dili balido'], + ['Subscribe', 'Mag-subscribe'], + ['Share', 'Ipaambit'], + ['Owner', 'Tag-iya'], + ['Public', 'Publiko'], + ['Difficulty', 'Kalisod'], + ['Enrolled', 'Na-enroll'], + ['Completed', 'Nahuman'], + ['Grammar', 'Gramatika'], + ['Culture', 'Kultura'], + ['Conversation', 'Panag-istoryahanay'], + ['Recording', 'Nagrekord'], + ['minutes', 'ka minuto'], + ['minute', 'minuto'], + ['Mother tongue', 'Pinulongan nga inahan'], + ['Learning language', 'Pinulongan nga tun-an'], + ['Native language', 'Pinulongan nga lumad'], + ['Target language', 'Pinulongan nga target'], + ['learning', 'pagkat-on'], + ['Learning', 'Pagkat-on'], + ['explanation', 'pasabot'], + ['Explanation', 'Pasabot'], + ['assistant', 'katabang'], + ['Assistant', 'Katabang'], + ['message', 'mensahe'], + ['Message', 'Mensahe'], + ['Send ', 'Padal-a ang '], + ['Send', 'Padala'], + ['Could not', 'Dili ma'], + ['No ', 'Walay '], + ['Not ', 'Dili '], + ['You ', 'Ikaw '], + [' your ', ' imong '], + ['Please ', 'Palihog '], + ['really ', 'tinuod nga '], + ['Really ', 'Tinuod nga '], + ['the ', 'ang '], + ['The ', 'Ang '], + ['and ', 'ug '], + [' or ', ' o '], + ['with ', 'uban sa '], + [' for ', ' para sa '], + [' to ', ' aron '], + [' in ', ' sa '], + [' on ', ' sa '], + [' at ', ' sa '], + [' of ', ' sa '], + [' from ', ' gikan sa '], + [' this ', ' kini nga '], + ['This ', 'Kini nga '], + [' all ', ' tanan nga '], + ['All ', 'Tanan nga '], + [' first', ' una'], + ['First ', 'Una '], + [' after ', ' human sa '], + [' before ', ' sa wala pa '], + [' when ', ' kung '], + [' have ', ' naay '], + [' has ', ' naay '], +]; + +function translateUiString(s) { + if (typeof s !== 'string') return s; + let out = s; + for (const [en, ceb] of PHRASES) { + if (out.includes(en)) out = out.split(en).join(ceb); + } + return out; +} + +function mapStringsDeep(node) { + if (typeof node === 'string') return translateUiString(node); + if (node === null || typeof node !== 'object' || Array.isArray(node)) return node; + const out = {}; + for (const k of Object.keys(node)) { + out[k] = mapStringsDeep(node[k]); + } + return out; +} + +const vocabEnPath = '/tmp/vocab-patch-en.json'; +if (!fs.existsSync(vocabEnPath)) { + console.error('Missing', vocabEnPath, '— run vocab key export first'); + process.exit(1); +} +const vocabMapped = mapStringsDeep(readJson(vocabEnPath)); + +const profilePart = { + values: { + pubichair: { + none: 'Wala', + short: 'Mubo', + medium: 'Tunga-tunga', + long: 'Taas', + hairy: 'Natural', + waxed: 'Wax', + landingstrip: 'Landing strip', + other: 'Uban', + bikinizone: 'Zona sa bikini lamang', + }, + eyecolor: { + blue: 'Asul', + green: 'Berde', + brown: 'Brown', + black: 'Itom', + grey: 'Abohon', + hazel: 'Hazel', + amber: 'Amber', + red: 'Pula', + other: 'Uban', + }, + haircolor: { + black: 'Itom', + brown: 'Brown', + blonde: 'Blonde', + red: 'Pula', + grey: 'Abohon', + white: 'Puti', + other: 'Uban', + }, + hairlength: { + short: 'Mubo', + medium: 'Tunga-tunga', + long: 'Taas', + bald: 'Kalbo', + other: 'Uban', + }, + skincolor: { + light: 'Klaro', + medium: 'Tunga-tunga', + dark: 'Itom', + other: 'Uban', + }, + freckles: { + much: 'Daghan', + medium: 'Tunga-tunga', + less: 'Ubos', + none: 'Wala', + }, + }, + pubichair: 'Buhok sa pribado', + penislength: 'Taas sa penis', + brasize: 'Sukod sa bra', + piercings: 'Mga piercing', + tattoos: 'Mga tattoo', + eyecolor: 'Kolor sa mata', + haircolor: 'Kolor sa buhok', + hairlength: 'Taas sa buhok', + freckles: 'Mga batik', + skincolor: 'Kolor sa panit', +}; + +const forumPart = { + pagination: { + first: 'Unang panid', + previous: 'Miaging panid', + next: 'Sunod nga panid', + last: 'Kataposang panid', + page: 'Panid <> sa <>', + }, +}; + +const eroticPart = { + requestInfoTitle: 'Gipasa nga prueba', + documentLabel: 'Dokumento sa beripikasyon', + noteLabel: 'Mubo nga nota para sa moderation', + settingsLink: 'Ablihi ang account settings', + verificationHintTitle: 'Nota sa beripikasyon', + verificationHintBody: + 'Mahimo kang magpadala og hulagway. Kung dili klaro ang imong edad didto, ibalibaran ang hangyo ug kinahanglan nimo og ID.', + notifications: { + approved: 'Gi-aprub sa moderation ang imong pag-abli sa erotik nga lugar.', + rejected: + 'Gibalibaran ang imong hangyo sa erotik. Kung dili klaro ang edad sa hulagway, palihog ipadala ang ID.', + }, + noVideos: 'Wala pa kay na-upload nga erotik nga mga video.', + intro: 'Na-abli na ang lugar. Ang mga module sa hulagway ug video mosunod sa sunod nga lakang.', + enabledTitle: 'Na-abli na ang access', + enabledBody: + 'Ang imong account na-enable na sa erotik nga lugar. Ang hiwalay nga mga view sa hulagway ug video himoon pa.', + roadmapTitle: 'Sunod', + roadmapModeration: 'hiwalay nga agianan sa moderation ug reporting', + roadmapUpload: 'dedikadong mga view sa upload ug pagdumala', + roadmapSeparation: 'klaro nga pagbulag gikan sa normal nga galeriya', + status: { + none: { + title: 'Wala pa ma-abli', + body: 'Makita ang lugar, pero naka-lock pa hangtod sa pag-aprub sa moderator.', + }, + pending: { + title: 'Naghuwat sa pagsusi', + body: 'Ang imong hangyo naghuwat sa moderation.', + }, + approved: { + title: 'Na-abli na', + body: 'Na-abli na ang erotik nga lugar para sa imong account.', + }, + rejected: { + title: 'Gibalibaran ang hangyo', + body: 'Ang kataposang hangyo wala ma-aprub. Mahimo kang magpadala og bag-o.', + }, + }, +}; + +const patch = { + socialnetwork: { + profile: profilePart, + forum: forumPart, + erotic: eroticPart, + vocab: vocabMapped, + }, +}; + +const outPath = path.join(root, 'scripts', 'ceb-patches', 'socialnetwork-patch.json'); +fs.mkdirSync(path.dirname(outPath), { recursive: true }); +fs.writeFileSync(outPath, JSON.stringify(patch, null, 2) + '\n', 'utf8'); +console.log('Wrote', outPath); diff --git a/frontend/scripts/ceb-patches/falukant-patch.json b/frontend/scripts/ceb-patches/falukant-patch.json new file mode 100644 index 0000000..1c99e92 --- /dev/null +++ b/frontend/scripts/ceb-patches/falukant-patch.json @@ -0,0 +1,573 @@ +{ + "falukant": { + "overview": { + "certificate": { + "factor": { + "avgKnowledge": "Average kahibalo", + "completedProductions": "Nahuman produksyons", + "reputation": "Dungog", + "housePosition": "Balay level", + "highestPoliticalOfficeRank": "Highest politikal opisina", + "highestChurchOfficeRank": "Highest simbahan opisina", + "nobilityLevel": "Kadungganan level", + "officePoints": "Opisina status", + "nobilityPoints": "Kadungganan status", + "reputationPoints": "Dungog status", + "housePoints": "Balay status" + }, + "statusMode": { + "one_of": "At least one status condition", + "two_of": "At least two status conditions" + } + } + }, + "moneyHistory": { + "activities": { + "Buy storage (type: field)": "Bought tipigan (type: field)", + "Buy storage (type: iron)": "Bought tipigan (type: iron)", + "Buy storage (type: stone)": "Bought tipigan (type: stone)", + "Buy storage (type: wood)": "Bought tipigan (type: wood)", + "health": { + "pill": "Panglawas tambal: pill", + "doctor": "Panglawas tambal: doctor", + "witch": "Panglawas tambal: witch", + "drunkOfLife": "Panglawas tambal: elixir sa life", + "barber": "Panglawas tambal: barber" + } + } + }, + "house": { + "servants": { + "payLevels": { + "low": "Low", + "normal": "Normal", + "high": "Generous" + }, + "staffingState": { + "label": "Staffing", + "understaffed": "Understaffed", + "fitting": "Fitting", + "overstaffed": "Overstaffed" + }, + "orderState": { + "label": "Order state", + "chaotic": "Chaotic", + "strained": "Strained", + "stable": "Stable", + "excellent": "Excellent" + }, + "actions": { + "hire": "Hire 1 sulugoon", + "dismiss": "Dismiss 1 sulugoon", + "tidy": "Tidy balayhold", + "hireSuccess": "Ang balayhold staff naay expanded.", + "hireError": "Ang staff could dili be expanded.", + "dismissSuccess": "A sulugoon naay dismissed.", + "dismissError": "Ang sulugoon could dili be dismissed.", + "payLevelSuccess": "Sulugoon pay naay updated.", + "payLevelError": "Sulugoon pay could dili be updated.", + "tidySuccess": "Ang balayhold naay put sa order.", + "tidyError": "Ang balayhold could dili be put sa order." + } + } + }, + "branch": { + "director": { + "emptyTransport": { + "title": "Transporte without products", + "description": "Move vehicles gikan sa this sangang opisina ngadto sa another ngadto sa use them better.", + "vehicleType": "Sakyanan type", + "selectVehicle": "Select vehicle type", + "targetBranch": "Target sangang opisina", + "selectTarget": "Select target sangang opisina", + "cost": "Kantidad: {cost}", + "duration": "Gidugayon: {duration}", + "arrival": "Pag-abot: {datetime}", + "route": "Ruta", + "create": "Start transport", + "success": "Transporte started successfully.", + "error": "Sayop starting ang transport." + } + }, + "taxes": { + "title": "Buhises", + "loading": "Nagkarga buhis data...", + "loadingError": "Napakyas ngadto sa load buhis data: {error}", + "retry": "Suwayi pag-usab", + "noData": "No buhis data available", + "total": "Tanan buhis", + "table": { + "region": "Rehiyon", + "taxPercent": "Buhis %" + } + } + }, + "nobility": { + "requirement": { + "money": "Wealth sa least {amount}", + "cost": "Kantidad: {amount}", + "branches": "At least {amount} sangang opisinaes", + "reputation": "Popularity sa least {amount}", + "house_position": "Balay status sa least level {amount}", + "house_condition": "Balay condition sa least {amount}", + "office_rank_any": "Highest politikal o simbahan opisina sa least rank {amount}", + "office_rank_political": "Highest politikal opisina sa least rank {amount}", + "lover_count_min": "At least {amount} lovers o favorites", + "lover_count_max": "At most {amount} lovers o favorites" + } + }, + "mood": { + "hopeful": "Hopeful", + "frustrated": "Frustrated", + "lonely": "Lonely", + "grateful": "Grateful", + "jealous": "Jealous", + "guilty": "Guilty", + "apathetic": "Apathetic", + "relieved": "Relieved", + "proud": "Proud", + "ashamed": "Ashamed" + }, + "character": { + "patient": "Patient", + "impatient": "Impatient", + "selfish": "Selfish", + "charismatic": "Charismatic", + "empathetic": "Empathetic", + "timid": "Timid", + "stubborn": "Stubborn", + "resourceful": "Resourceful", + "reckless": "Reckless", + "disciplined": "Disciplined", + "optimistic": "Optimistic", + "pessimistic": "Pessimistic", + "manipulative": "Manipulative", + "independent": "Independent", + "dependent": "Dependent", + "adventurous": "Adventurous", + "humble": "Humble", + "vengeful": "Vengeful", + "pragmatic": "Pragmatic", + "idealistic": "Idealistic" + }, + "healthview": { + "measures": { + "pill": "Tablet", + "doctor": "Doktor Visit", + "witch": "Bruha", + "drunkOfLife": "Elixir sa Life", + "barber": "Barbero" + }, + "errors": { + "tooClose": "Ikaw dili makahimo perform tambals so often.", + "generic": "An error occurred." + } + }, + "politics": { + "current": { + "office": "Opisina", + "region": "Rehiyon", + "income": "Kita" + }, + "open": { + "office": "Opisina", + "region": "Rehiyon", + "date": "Petsa", + "candidacy": "Candidacy", + "candidacyWithAge": "Candidacy (from age 16)", + "none": "No open positions.", + "apply": "Aplikar para sa selected positions", + "minAgeHint": "Candidacy only possible gikan sa age 16.", + "ageRequirement": "All politikal opisinas require candidates ngadto sa be sa least 16 years old." + }, + "too_young": "Your character too young. Applications only possible gikan sa age 16.", + "upcoming": { + "office": "Opisina", + "region": "Rehiyon", + "postDate": "Petsa", + "none": "No upcoming positions." + }, + "elections": { + "office": "Opisina", + "region": "Rehiyon", + "date": "Petsa", + "posts": "Posts ngadto sa Fill", + "none": "No elections available.", + "choose": "Mga kandidato", + "vote": "Boto", + "voteAll": "Boto All", + "candidates": "Mga kandidato", + "action": "Aksyon" + }, + "offices": { + "chancellor": "Chancellor", + "minister": "Ministro", + "ministry-helper": "Ministry Helper", + "governor": "Gobernador", + "super-state-administrator": "Super State Administrator", + "state-administrator": "State Administrator", + "consultant": "Consultant", + "ruler-consultant": "Ruler's Consultant", + "territorial-council-speaker": "Territorial Council Speaker", + "territorial-council": "Territorial Council", + "hangman": "Hangman", + "treasurer": "Tesorero", + "sheriff": "Sheriff", + "taxman": "Buhis Collector", + "bailif": "Bailiff", + "judge": "Hukom", + "village-major": "Village Major", + "master-builder": "Master Tukoraer", + "mayor": "Alkalde", + "town-clerk": "Town Clerk", + "beadle": "Beadle", + "council": "Council Member", + "councillor": "Councillor", + "assessor": "Assessor" + } + }, + "family": { + "tabsAria": "Family sections", + "debtorsPrison": { + "familyWarning": "Ongoing debt delinquency puts strain sa kasal, balayhold ug uyabs.", + "familyImpact": "Sa utang' bilanggoan damages kasal, balayhold peace ug ang stability sa uyabs." + }, + "pregnancy": { + "banner": "Ikaw expecting usa ka bata.", + "dueHint": "Expected due date" + }, + "children": { + "title": "Bataren", + "name": "Ngalan", + "age": "Edad", + "gender": "Sekso", + "heir": "Heir", + "isHeir": "Heir", + "notHeir": "Not Heir", + "setAsHeir": "Set as Heir", + "heirSetSuccess": "Ang bata naay successfully set as heir.", + "heirSetError": "Sayop setting heir.", + "actions": "Aksyons", + "none": "No bataren available.", + "detailButton": "Show Details", + "addChild": "Add Bata", + "baptism": "Baptize", + "notBaptized": "Not yet baptized", + "baptismNotice": "This bata naay dili baptized yet ug therefore naay no name.", + "legitimacy": { + "legitimate": "Legitimate", + "acknowledged_bastard": "Ackahibalod illegitimate", + "hidden_bastard": "Illegitimate" + }, + "otherParent": "Other parent", + "otherParentUnknown": "Unknown", + "birthContextLabel": "Origin", + "birthContextShort": { + "marriage": "Kasal", + "lover": "Uyab" + }, + "birthContextLong": { + "marriage": "From kasal", + "lover": "From usa ka uyab" + }, + "details": { + "title": "Bata Details" + } + }, + "taxes": { + "title": "Buhises", + "loading": "Nagkarga buhis data...", + "total": "Tanan buhis", + "table": { + "region": "Rehiyon", + "taxPercent": "Buhis %" + } + }, + "spouse": { + "traitsToggle": "Character traits", + "marriageSatisfaction": "Kasal Satisfaction", + "marriageState": "Kasal State", + "wooing": { + "cancel": "Cancel wooing", + "cancelConfirm": "Do you really want ngadto sa cancel wooing? Progress will be lost.", + "cancelSuccess": "Wooing naay cancelled.", + "cancelError": "Wooing could dili be cancelled.", + "cancelTooSoon": "Ikaw mahimo only cancel wooing after 24 hours." + } + }, + "marriageState": { + "stable": "Stable", + "strained": "Strained", + "crisis": "Crisis" + }, + "householdTension": { + "label": "Balayhold Kakulba", + "score": "Kakulba score", + "reasonsLabel": "Current causes", + "low": "Calm", + "medium": "Uneasy", + "high": "Strained", + "reasons": { + "visibleLover": "Visible uyab", + "noticeableLover": "Noticeable uyab", + "underfundedLover": "Underfunded uyab", + "acknowledgedAffair": "Ackahibalod uyab", + "statusMismatch": "Status mismatch", + "loverChild": "Bata gikan sa usa ka uyab", + "disorder": "Disorder sa ang balay", + "tooFewServants": "Too few sulugoons", + "marriageCrisis": "Kasal crisis" + } + }, + "marriageActions": { + "title": "Support ang kasal", + "spendTime": "Spend time together", + "giftSmall": "Small regalo", + "giftDecent": "Decent regalo", + "giftLavish": "Lavish regalo", + "reconcile": "Reconcile dispute", + "spendTimeSuccess": "Ang time together naay stabilized ang kasal.", + "giftSuccess": "Ang regalo naay improved ang kasal.", + "reconcileSuccess": "Ang dispute naay eased para sa now.", + "actionError": "Ang action could dili be completed." + }, + "notifications": { + "scandal": "A family scandal shaking imong balay.", + "loverBirth": "A bata naay born gikan sa usa ka uyab." + }, + "sendgift": { + "error": { + "nogiftselected": "Please select usa ka regalo.", + "generic": "An unknown error occurred.", + "tooOften": "Ikaw can't send regalos that often.", + "insufficientFunds": "Ikaw do dili naay enough money." + }, + "success": "Ang regalo naay given.", + "nextGiftAt": "Next regalo from" + } + }, + "church": { + "summary": { + "highestCurrentOffice": "Highest current opisina", + "availableApplications": "Possible applications", + "supervisedApplications": "Applications ngadto sa decide", + "guidance": "Simbahan opisinas usually progress step by step. Applications normally decided by ang next higher opisina; if no player holds it, usa ka NPC may later decide.", + "none": "No simbahan opisina yet" + }, + "current": { + "office": "Opisina", + "region": "Rehiyon", + "holder": "Holder", + "supervisor": "Supervisor", + "none": "No current positions available." + }, + "available": { + "office": "Opisina", + "region": "Rehiyon", + "supervisor": "Supervisor", + "decision": "Decision by", + "decisionType": { + "entry": "Direct entry", + "player": "Player", + "npc": "NPC", + "interim": "Interim" + }, + "seats": "Available Seats", + "action": "Aksyon", + "apply": "Aplikar", + "applySuccess": "Application submitted successfully.", + "applyError": "Sayop submitting application.", + "errors": { + "characterNotFound": "Your character could dili be found.", + "officeTypeNotFound": "Ang simbahan opisina could dili be found.", + "churchCareerTooLow": "Your previous simbahan career dili yet sufficient para sa this opisina.", + "noAvailableSeats": "There currently no free seats para sa this simbahan opisina.", + "applicationAlreadyExists": "There already usa ka open application para sa this simbahan opisina sa this rehiyon." + }, + "none": "No available positions." + }, + "applications": { + "office": "Opisina", + "region": "Rehiyon", + "applicant": "Applicant", + "date": "Petsa", + "action": "Aksyon", + "approve": "Aprub", + "reject": "Balibari", + "approveSuccess": "Application approved.", + "rejectSuccess": "Application rejected.", + "decideError": "Sayop making decision.", + "none": "No applications available." + }, + "offices": { + "lay-preacher": "Lay Preacher", + "village-priest": "Village Priest", + "parish-priest": "Parish Priest", + "dean": "Dean", + "archdeacon": "Archdeacon", + "bishop": "Bishop", + "archbishop": "Archbishop", + "cardinal": "Cardinal", + "pope": "Pope" + }, + "baptism": { + "title": "Baptism", + "table": { + "name": "First Ngalan", + "gender": "Sekso", + "age": "Edad", + "baptise": "Baptize (50)", + "newName": "Suggest Ngalan" + }, + "gender": { + "male": "Boy", + "female": "Girl" + }, + "success": "Ang bata naay baptized.", + "error": "Ang bata could dili be baptized." + } + }, + "bank": { + "debtorsPrison": { + "titleWarning": "Kredito delinquency", + "titlePrison": "Sa utang' bilanggoan", + "descriptionWarning": "Your credits overdue. If you continue ngadto sa default, forced tambals will follow.", + "descriptionPrison": "Ikaw sa debtors' bilanggoan. New credits blocked ug imong assets will be liquidated step by step.", + "daysOverdue": "Days overdue", + "creditworthiness": "Kreditoworthiness", + "nextForcedAction": "Next forced action", + "creditBlocked": "Ikaw dili makahimo take new credits while imbilanggoaned para sa debt.", + "creditError": "Ang credit could dili be taken.", + "actions": { + "reminder": "First reminder", + "final_warning": "Final warning", + "debtors_prison": "Commitment ngadto sa debtors' bilanggoan", + "asset_seizure": "Asset seizure" + } + }, + "credits": { + "table": { + "name": "Ngalan", + "amount": "Kantidad", + "reason": "Reason", + "date": "Petsa" + }, + "payoff": { + "title": "Take usa ka new credit", + "height": "Kredito amount", + "remaining": "Remaining possible credit amount", + "fee": "Kredito interest", + "feeHeight": "Installment (10 payments)", + "total": "Tanan", + "confirm": "Take credit" + } + } + }, + "reputation": { + "actions": { + "running": "Running...", + "dailyLimit": "Daily limit: {remaining} sa {cap} actions remaining", + "cooldown": "Cooldown: {minutes} minutes remaining", + "type": { + "soup_kitchen": "Comedor social", + "library_donation": "Donasyon sa library", + "scholarships": "Mga scholarship", + "church_hospice": "Simbahan Hospice", + "school_funding": "School Funding", + "orphanage_build": "Tukora Orphanage", + "bridge_build": "Tukora Bridge", + "hospital_donation": "Hospital Donasyon", + "patronage": "Patronage", + "statue_build": "Tukora Statue", + "well_build": "Tukora Well" + } + }, + "party": { + "newpartyview": { + "open": "Create New Party", + "close": "Hide New Party", + "type": "Party Type" + }, + "music": { + "label": "Musika", + "none": "No Musika", + "bard": "A Bard", + "villageBand": "A Village Band", + "chamberOrchestra": "A Chamber Orchestra", + "symphonyOrchestra": "A Symphony Orchestra", + "symphonyOrchestraWithChorusAndSolists": "A Symphony Orchestra uban sa Chorus ug Soloists" + }, + "banquette": { + "label": "Pagkaon", + "bread": "Pan", + "roastWithBeer": "Roast uban sa Beer", + "poultryWithVegetablesAndWine": "Poultry uban sa Vegetables ug Wine", + "extensiveBuffet": "Festive Meal" + }, + "servants": { + "label": "One sulugoon per ", + "perPersons": " persons" + }, + "esteemedInvites": { + "label": "Invited Estates" + }, + "type": "Party Type", + "cost": "Kantidad", + "date": "Petsa" + } + }, + "underground": { + "activities": { + "additionalInfo": "Additional information", + "blackmailAmount": "Blackmail amount", + "discoveries": "Discoveries", + "visibilityDelta": "Visibility", + "reputationDelta": "Dungog", + "victimPlaceholder": "Enter username", + "sabotageTarget": "Sabotage target", + "corruptGoal": "Corruption goal", + "affairGoal": "Investigation goal", + "raidRegion": "Raid rehiyon", + "raidRegionPlaceholder": "Select rehiyon", + "bandSize": "Band size", + "raidSummary": "Gang ({bandSize}) sa {rehiyon}", + "attempts": "Attempts", + "successes": "Malampusones", + "lastOutcome": "Last outcome", + "raidResultTitle": "Latest raid", + "lastTargetTransport": "Latest target transport", + "loot": "Bilin" + }, + "types": { + "spyin": "Espiya", + "assassin": "Assassination", + "sabotage": "Sabotage", + "corrupt_politician": "Corruption", + "rob": "Kawat", + "investigate_affair": "Investigate uyab", + "raid_transport": "Raid transports" + }, + "targets": { + "house": "Balay", + "storage": "Tipigan" + }, + "goals": { + "elect": "Appointment", + "taxIncrease": "Raise buhises", + "taxDecrease": "Lower buhises", + "expose": "Expose", + "blackmail": "Blackmail" + }, + "status": { + "pending": "Naghuwat", + "resolved": "Nasulbad", + "failed": "Napakyas" + }, + "raidOutcomes": { + "repelled": "Repelled", + "partial_success": "Partial success", + "major_success": "Major success" + } + } + } +} diff --git a/frontend/scripts/ceb-patches/socialnetwork-patch.json b/frontend/scripts/ceb-patches/socialnetwork-patch.json new file mode 100644 index 0000000..64882d7 --- /dev/null +++ b/frontend/scripts/ceb-patches/socialnetwork-patch.json @@ -0,0 +1,386 @@ +{ + "socialnetwork": { + "profile": { + "values": { + "pubichair": { + "none": "Wala", + "short": "Mubo", + "medium": "Tunga-tunga", + "long": "Taas", + "hairy": "Natural", + "waxed": "Wax", + "landingstrip": "Landing strip", + "other": "Uban", + "bikinizone": "Zona sa bikini lamang" + }, + "eyecolor": { + "blue": "Asul", + "green": "Berde", + "brown": "Brown", + "black": "Itom", + "grey": "Abohon", + "hazel": "Hazel", + "amber": "Amber", + "red": "Pula", + "other": "Uban" + }, + "haircolor": { + "black": "Itom", + "brown": "Brown", + "blonde": "Blonde", + "red": "Pula", + "grey": "Abohon", + "white": "Puti", + "other": "Uban" + }, + "hairlength": { + "short": "Mubo", + "medium": "Tunga-tunga", + "long": "Taas", + "bald": "Kalbo", + "other": "Uban" + }, + "skincolor": { + "light": "Klaro", + "medium": "Tunga-tunga", + "dark": "Itom", + "other": "Uban" + }, + "freckles": { + "much": "Daghan", + "medium": "Tunga-tunga", + "less": "Ubos", + "none": "Wala" + } + }, + "pubichair": "Buhok sa pribado", + "penislength": "Taas sa penis", + "brasize": "Sukod sa bra", + "piercings": "Mga piercing", + "tattoos": "Mga tattoo", + "eyecolor": "Kolor sa mata", + "haircolor": "Kolor sa buhok", + "hairlength": "Taas sa buhok", + "freckles": "Mga batik", + "skincolor": "Kolor sa panit" + }, + "forum": { + "pagination": { + "first": "Unang panid", + "previous": "Miaging panid", + "next": "Sunod nga panid", + "last": "Kataposang panid", + "page": "Panid <> sa <>" + } + }, + "erotic": { + "requestInfoTitle": "Gipasa nga prueba", + "documentLabel": "Dokumento sa beripikasyon", + "noteLabel": "Mubo nga nota para sa moderation", + "settingsLink": "Ablihi ang account settings", + "verificationHintTitle": "Nota sa beripikasyon", + "verificationHintBody": "Mahimo kang magpadala og hulagway. Kung dili klaro ang imong edad didto, ibalibaran ang hangyo ug kinahanglan nimo og ID.", + "notifications": { + "approved": "Gi-aprub sa moderation ang imong pag-abli sa erotik nga lugar.", + "rejected": "Gibalibaran ang imong hangyo sa erotik. Kung dili klaro ang edad sa hulagway, palihog ipadala ang ID." + }, + "noVideos": "Wala pa kay na-upload nga erotik nga mga video.", + "intro": "Na-abli na ang lugar. Ang mga module sa hulagway ug video mosunod sa sunod nga lakang.", + "enabledTitle": "Na-abli na ang access", + "enabledBody": "Ang imong account na-enable na sa erotik nga lugar. Ang hiwalay nga mga view sa hulagway ug video himoon pa.", + "roadmapTitle": "Sunod", + "roadmapModeration": "hiwalay nga agianan sa moderation ug reporting", + "roadmapUpload": "dedikadong mga view sa upload ug pagdumala", + "roadmapSeparation": "klaro nga pagbulag gikan sa normal nga galeriya", + "status": { + "none": { + "title": "Wala pa ma-abli", + "body": "Makita ang lugar, pero naka-lock pa hangtod sa pag-aprub sa moderator." + }, + "pending": { + "title": "Naghuwat sa pagsusi", + "body": "Ang imong hangyo naghuwat sa moderation." + }, + "approved": { + "title": "Na-abli na", + "body": "Na-abli na ang erotik nga lugar para sa imong account." + }, + "rejected": { + "title": "Gibalibaran ang hangyo", + "body": "Ang kataposang hangyo wala ma-aprub. Mahimo kang magpadala og bag-o." + } + } + }, + "vocab": { + "title": "Trainer sa bokabularyo", + "description": "Paghimo og pinulongans (or subscribe aron them) ug share them uban sa friends.", + "newLanguage": "New pinulongan", + "newLanguageTitle": "Paghimo og new pinulongan", + "languageName": "Pinulongan name", + "create": "Paghimo", + "saving": "Saving...", + "created": "Pinulongan created.", + "createdTitle": "Trainer sa bokabularyo", + "createdMessage": "Pinulongan created. Ang menu will refresh.", + "createError": "Dili ma create pinulongan.", + "openLanguage": "Ablihi", + "none": "Ikaw naay no pinulongans yet (created o subscribed).", + "owner": "Owned", + "subscribed": "Mag-subscribed", + "languageTitle": "Trainer sa bokabularyo: {name}", + "notFound": "Pinulongan not found o no access.", + "shareCode": "Ipaambit code", + "shareHint": "Padal-a ang kini nga code aron friends so they can subscribe aron kini nga pinulongan.", + "subscribeByCode": "Mag-subscribe by code", + "subscribeTitle": "Mag-subscribe aron pinulongan", + "subscribeHint": "Enter a share code you received gikan sa a friend.", + "subscribe": "Mag-subscribe", + "subscribeSuccess": "Mag-subscribed. Ang menu will refresh.", + "subscribeError": "Mag-subscribe failed. Dili balido code o no access.", + "trainerPlaceholder": "Trainer features (words/quizzes) will be ang next step.", + "chapters": "Kapitulos", + "newChapter": "New kapitulo", + "createChapter": "Paghimo og kapitulo", + "createChapterError": "Dili ma create kapitulo.", + "noChapters": "Walay kapitulos yet.", + "chapterTitle": "Kapitulo: {title}", + "addVocab": "Add bokabularyo", + "learningWord": "To learn", + "referenceWord": "Reference", + "add": "Add", + "addVocabError": "Dili ma add bokabularyo.", + "noVocabs": "Walay bokabularyo sa kini nga kapitulo yet.", + "practice": { + "open": "Praktis", + "title": "Praktis bokabularyo", + "allVocabs": "Tanan nga bokabularyo", + "simple": "Simple praktis", + "noPool": "Walay bokabularyo aron praktis.", + "dirLearningToRef": "To learn → Reference", + "dirRefToLearning": "Reference → To learn", + "check": "Susihi", + "next": "Sunod", + "skip": "Laktaw", + "correct": "Tama!", + "wrong": "Sayop.", + "acceptable": "Acceptable answers:", + "stats": "Stats", + "success": "Malampuson", + "fail": "Fail" + }, + "search": { + "open": "Pangita", + "title": "Pangita bokabularyo", + "term": "Pangita term", + "motherTongue": "Pinulongan nga inahan", + "learningLanguage": "Pagkat-on pinulongan", + "lesson": "Leksiyon", + "search": "Pangita", + "noResults": "Walay results.", + "error": "Pangita failed." + }, + "courses": { + "title": "Pinulongan Pagkat-on Kursos", + "create": "Paghimo og Kurso", + "myCourses": "My Kursos", + "allCourses": "Tanan nga Kursos", + "none": "Walay kursos found.", + "owner": "Tag-iya", + "enrolled": "Na-enroll", + "public": "Publiko", + "difficulty": "Kalisod", + "lessons": "Leksiyons", + "enroll": "Enroll", + "continue": "Padayon", + "edit": "Edit", + "addLesson": "Add Leksiyon", + "completed": "Nahuman", + "score": "Score", + "review": "Balik-balik", + "start": "Sugdi", + "noLessons": "Kini nga kurso naay no leksiyons yet.", + "lessonNumber": "Leksiyon Number", + "chapter": "Kapitulo", + "selectChapter": "Select Kapitulo", + "selectLanguage": "Select Pinulongan", + "confirmDelete": "Tinuod nga delete leksiyon?", + "titleLabel": "Titulo", + "descriptionLabel": "Deskripsiyon", + "languageLabel": "Pinulongan", + "findByCode": "Find Kurso by Code", + "shareCode": "Ipaambit Code", + "searchPlaceholder": "Pangita kursos...", + "allLanguages": "Tanan nga Pinulongans", + "targetLanguage": "Target Pinulongan", + "nativeLanguage": "Native Pinulongan", + "allNativeLanguages": "Tanan nga Native Pinulongans", + "myNativeLanguage": "My Native Pinulongan", + "forAllLanguages": "For Tanan nga Pinulongans", + "optional": "Opsyonal", + "invalidCode": "Dili balido code", + "courseNotFound": "Kurso not found", + "grammarExercises": "Tsek sa kapitulo", + "exerciseFlowIntro": "Work through ang tasks sa order. Every tama answer moves you closer aron completing ang leksiyon.", + "exerciseProgressLabel": "Progress", + "exerciseTargetLabel": "Required", + "exerciseCardLabel": "Task {number}", + "exerciseSequentialProgress": "Question {current} sa {total}", + "exerciseSequentialBack": "Balik", + "exerciseSequentialNext": "Sunod", + "exerciseWrongTitle": "Dili quite right", + "exerciseReinforcementGoPractice": "Go aron praktis", + "exerciseReinforcementStay": "Stay sa ang test", + "exerciseReinforcementGoPracticeAck": "Read, go aron praktis", + "exerciseReinforcementStayAck": "Read, stay sa ang test", + "exerciseStatusOpen": "Ablihi", + "exerciseStatusCorrect": "Done", + "exerciseStatusRetry": "Try again", + "exerciseAnswerAllHint": "Answer tanan nga {total} tasks una. Nahuman so far: {answered}. Ikaw need sa least {target}% aron pass.", + "exerciseNeedMoreCorrectHint": "Ikaw currently naay {score}%. Ikaw need sa least {target}% aron complete kini nga leksiyon.", + "exercisePassedHint": "Target reached: {score}% out sa ang required {target}%. Once tanan nga tasks naay been answered, ang tsek sa kapitulo is passed.", + "exerciseReinforcementHint": "After a mistake, ang flow returns briefly aron pagkat-on mode. Praktis {count} more trainer questions ug ang tsek sa kapitulo will unlock again.", + "exercisePrepReinforcementHint": "After a mistake, go through ang prepared terms once more. Then ang tsek sa kapitulo will unlock again.", + "exerciseGrammarLead": "Key grammar para sa kini nga test", + "noExercises": "Walay test available", + "enterAnswer": "Enter answer", + "checkAnswer": "Susihi Answer", + "correct": "Tama!", + "wrong": "Sayop", + "explanation": "Pasabot", + "learn": "Learn", + "exercises": "Tsek sa kapitulo", + "learnVocabulary": "Learn Bokabularyo", + "lessonOverviewText": "Kini nga leksiyon combines bokabularyo, patterns, short grammar impulses, ug active speaking praktis.", + "lessonDescription": "Leksiyon Deskripsiyon", + "culturalNotes": "Cultural Notes", + "grammarExplanations": "Gramatika Pasabots", + "grammarImpulse": "Gramatika Focus", + "learningGoals": "Pagkat-on Goals", + "corePatterns": "Core Patterns", + "corePatternsHint": "Read ang target pinulongan una, then ang meaning below — you learn each pattern both ways.", + "learningGrammarTitle": "Briefly frame ang grammar", + "learningGrammarIntro": "Read these 1-2 hints human sa ang key terms. Then you go into ang trainer uban sa better orientation.", + "vocabPrepTitle": "Preparation sa wala pa ang bokabularyo trainer", + "vocabPrepStep1": "Read through core patterns ug ang word list (native pinulongan ↔ target pinulongan) once.", + "vocabPrepProgress": "Pass {pass}: item {current} sa {total}", + "vocabPrepTargetLabel": "Target pinulongan", + "vocabPrepGlossLabel": "Meaning", + "vocabPrepNextItem": "Sunod item", + "vocabPrepConfirm1": "Una pass done", + "vocabPrepStep2": "Go through ang same items again (active review, not testing yet).", + "vocabPrepConfirm2": "Second pass done", + "vocabPrepReady": "Ikaw can start ang bokabularyo trainer now.", + "learningPathLabel": "Main path", + "learningPathTitle": "Your pagkat-on flow para sa kini nga leksiyon", + "learningPathIntro": "Work through these steps sa order: prepare, review briefly, train, then move aron ang tsek sa kapitulo.", + "lessonDetailsToggle": "Show more leksiyon details", + "deepenSectionTitle": "Deepen ug review", + "assistantSectionTitle": "Deepen uban sa pinulongan katabang", + "vocabOverviewToggle": "Show full overview sa terms", + "vocabTrainerLockedHint": "Palihog confirm two preparation steps under “Preparation sa wala pa ang bokabularyo trainer” una.", + "exerciseUnlockHintAfterPrep": "Work through ang prepared terms una. Ang tsek sa kapitulo will unlock afterwards.", + "speakingTasks": "Speaking Tasks", + "speakingPrompt": "Speaking Prompt", + "practicalTasks": "Practical Tasks", + "importantVocab": "Important Bokabularyo", + "vocabInfoText": "These terms are used sa ang test. Learn them here passively sa wala pa switching aron ang tsek sa kapitulo.", + "noVocabInfo": "Read ang description above ug ang pasabots sa ang test aron learn ang most important terms.", + "vocabTrainer": "Bokabularyo Trainer", + "vocabTrainerDescription": "Praktis ang most important terms sa kini nga leksiyon interactively.", + "startVocabTrainer": "Sugdi ang Bokabularyo Trainer", + "stopTrainer": "Hunong ang Trainer", + "translateTo": "Translate into Bisaya", + "translateFrom": "Translate into German", + "next": "Sunod", + "totalAttempts": "Attempts", + "successRate": "Malampuson Rate", + "modeMultipleChoice": "Multiple Choice", + "modeTyping": "Text Input", + "currentLesson": "Current Leksiyon", + "mixedReview": "Balik-balik", + "lessonCompleted": "Leksiyon completed!", + "goToNextLesson": "Go aron next leksiyon?", + "allLessonsCompleted": "Tanan nga leksiyons completed!", + "startExercises": "Sugdi ang Tsek sa kapitulo", + "lessonTypeLabel": "Leksiyon Type", + "recommendedDuration": "Recommended Duration", + "exerciseLoad": "Exercise Load", + "exercisesShort": "exercises", + "durationFlexible": "Flexible", + "durationMinutes": "{ka minuto} ka minuto", + "lessonTypeVocab": "Bokabularyo", + "lessonTypeGrammar": "Gramatika", + "lessonTypeConversation": "Panag-istoryahanay", + "lessonTypeCulture": "Kultura", + "lessonTypeReview": "Balik-balik", + "correctAnswer": "Tama Answer", + "alternatives": "Alternative Answers", + "notStarted": "Dili Sugdied", + "continueCurrentLesson": "Padayon Current Leksiyon", + "previousLessonRequired": "Palihog complete ang previous leksiyon una", + "lessonNumberShort": "#", + "buildSentencePlaceholder": "Build imong sentence here", + "completeDialogPlaceholder": "Complete ang missing dialog line", + "situationalResponsePlaceholder": "Write imong response aron ang situation", + "patternDrillPlaceholder": "Paghimo og a fitting sentence uban sa ang pattern", + "modelSentence": "Model sentence", + "modelDialogLine": "Possible dialog line", + "modelResponse": "Possible response", + "modelPattern": "Possible pattern example", + "patternPrompt": "Pattern", + "readingAloudInstruction": "Read ang text aloud. Click 'Sugdi ang Nagrekord' ug begin speaking.", + "speakingFromMemoryInstruction": "Speak freely gikan sa memory. Use ang displayed keywords.", + "startRecording": "Sugdi ang Nagrekord", + "stopRecording": "Hunong ang Nagrekord", + "startSpeaking": "Sugdi ang Speaking", + "recording": "Nagrekord...", + "listening": "Listening...", + "recordingStopped": "Nagrekord stopped", + "recordingError": "Nagrekord error", + "recognizedText": "Recognized Text", + "speechRecognitionNotSupported": "Speech Recognition is not supported by kini nga browser. Palihog use Chrome o Edge.", + "speakingFallbackInstruction": "Your browser does not support speech input here. Write down what you would say instead ug check it normally.", + "speakingFallbackPlaceholder": "Write what you would say here ...", + "keywords": "Keywords", + "switchBackToMultipleChoice": "Switch back aron Multiple Choice", + "languageAssistantEyebrow": "Pinulongan katabang", + "languageAssistantCourseTitle": "AI support para sa kini nga kurso", + "languageAssistantCourseReady": "Ang pinulongan katabang is configured ug available inside leksiyons para sa pasabots, tamaions, ug short dialogue praktis.", + "languageAssistantCourseSetup": "Set up ang pinulongan katabang so you can ask leksiyon-specific questions ug praktis short dialogues.", + "languageAssistantOpenLesson": "Ablihi ang sa current leksiyon", + "languageAssistantTitle": "Praktis uban sa ang pinulongan katabang", + "languageAssistantIntro": "Use ang AI directly inside ang current leksiyon: get grammar explained, praktis short dialogues, o naay imong own sentences tamaed.", + "languageAssistantSettings": "Configure katabang", + "languageAssistantSetupHint": "Ang pinulongan katabang is not configured yet o is currently disabled. Palihog save imong model ug API access sa ang settings una.", + "languageAssistantModePractice": "Praktis", + "languageAssistantModeExplain": "Explain", + "languageAssistantModeCorrect": "Tama", + "languageAssistantPromptExplain": "Explain grammar", + "languageAssistantPromptPractice": "Praktis mini dialogue", + "languageAssistantPromptCorrect": "Improve my sentence", + "languageAssistantSpeakerAi": "Pinulongan katabang", + "languageAssistantSpeakerYou": "You", + "languageAssistantInputLabel": "Your mensahe", + "languageAssistantInputPlaceholder": "Ask a leksiyon question o write imong own sentence para sa tamaion.", + "languageAssistantSend": "Padal-a ang aron katabang", + "languageAssistantSending": "Getting answer ...", + "languageAssistantError": "Ang pinulongan katabang could not answer right now.", + "languageAssistantPresetExplainStart": "Palihog explain ang main patterns ug grammar sa ang leksiyon", + "languageAssistantPatternHint": "Focus especially sa kini nga pattern", + "languageAssistantPresetPracticeStart": "Let's praktis a short everyday dialogue para sa ang leksiyon \"{leksiyon}\". Palihog ask me questions ug wait para sa my answers.", + "languageAssistantPresetCorrectStart": "I want aron write my own sentences para sa ang leksiyon \"{leksiyon}\". Palihog tama my answers briefly ug clearly.", + "thisLesson": "this leksiyon", + "quickReviewTitle": "Quick Balik-balik", + "quickReviewIntro": "Short session uban sa {count} terms. After completion, ang scheduled review is marked as done.", + "quickReviewDoneTitle": "Done", + "quickReviewDoneScore": "Tama: {tama} / {total}", + "quickReviewBackToCourse": "Balik aron kurso", + "quickReviewProgress": "Term {current} sa {total}", + "quickReviewPromptMeaning": "What does \"{term}\" mean?", + "quickReviewPromptTarget": "Type sa target pinulongan: \"{term}\"", + "quickReviewAcknowledge": "Read, continue", + "courseTodayPlanIntroNoDueReview": "Walay quick review is due today. Sugdi ang uban sa ang open leksiyons sa imong current block, then do intensive review if shown. Quick reviews reappear automatically sa ang 1/3/7-day rhythm." + } + } + } +} diff --git a/frontend/scripts/merge-ceb-locale-patch.mjs b/frontend/scripts/merge-ceb-locale-patch.mjs new file mode 100644 index 0000000..dbe55d3 --- /dev/null +++ b/frontend/scripts/merge-ceb-locale-patch.mjs @@ -0,0 +1,45 @@ +#!/usr/bin/env node +/** + * Tiefes Zusammenführen eines Patch-Objekts in eine Ceb-Locale-Datei. + * Nutzung: node merge-ceb-locale-patch.mjs + */ +import fs from 'fs'; +import path from 'path'; +import { fileURLToPath } from 'url'; + +const __dirname = path.dirname(fileURLToPath(import.meta.url)); + +function isPlainObject(value) { + return value !== null && typeof value === 'object' && !Array.isArray(value); +} + +function deepMerge(target, source) { + if (!isPlainObject(source)) return target; + const base = isPlainObject(target) ? { ...target } : {}; + for (const key of Object.keys(source)) { + const sv = source[key]; + const tv = base[key]; + if (isPlainObject(sv) && isPlainObject(tv)) { + base[key] = deepMerge(tv, sv); + } else if (isPlainObject(sv)) { + base[key] = deepMerge({}, sv); + } else { + base[key] = sv; + } + } + return base; +} + +const targetPath = path.resolve(process.argv[2] || ''); +const patchPath = path.resolve(process.argv[3] || ''); + +if (!targetPath || !patchPath || !fs.existsSync(targetPath) || !fs.existsSync(patchPath)) { + console.error('Usage: node merge-ceb-locale-patch.mjs '); + process.exit(1); +} + +const base = JSON.parse(fs.readFileSync(targetPath, 'utf8')); +const patch = JSON.parse(fs.readFileSync(patchPath, 'utf8')); +const merged = deepMerge(base, patch); +fs.writeFileSync(targetPath, JSON.stringify(merged, null, 4) + '\n', 'utf8'); +console.log('Merged patch into', targetPath); diff --git a/frontend/src/i18n/index.js b/frontend/src/i18n/index.js index de46af3..37cc49e 100644 --- a/frontend/src/i18n/index.js +++ b/frontend/src/i18n/index.js @@ -80,6 +80,73 @@ import esMessage from './locales/es/message.json'; import esPersonal from './locales/es/personal.json'; import esSeo from './locales/es/seo.json'; +function isPlainObject(value) { + return value !== null && typeof value === 'object' && !Array.isArray(value); +} + +/** Tiefes Zusammenführen von Locale-Chunks (ceb überschreibt en nur auf Blattebene, ohne ganze Teilbäume zu verwerfen). */ +function deepMerge(target, source) { + if (!isPlainObject(source)) return target; + const base = isPlainObject(target) ? { ...target } : {}; + for (const key of Object.keys(source)) { + const sv = source[key]; + const tv = base[key]; + if (isPlainObject(sv) && isPlainObject(tv)) { + base[key] = deepMerge(tv, sv); + } else if (isPlainObject(sv)) { + base[key] = deepMerge({}, sv); + } else { + base[key] = sv; + } + } + return base; +} + +function mergeLocaleChunks(chunks) { + return chunks.reduce((acc, chunk) => deepMerge(acc, chunk), {}); +} + +const cebLocaleChunks = [ + enGeneral, + enHeader, + enNavigation, + enHome, + enChat, + enRegister, + enPasswordReset, + enError, + enActivate, + enSettings, + enAdmin, + enSocialNetwork, + enFriends, + enFalukant, + enBlog, + enMinigames, + enMessage, + enPersonal, + enSeo, + cebGeneral, + cebHeader, + cebNavigation, + cebHome, + cebRegister, + cebActivate, + cebError, + cebMessage, + cebSettings, + cebAdmin, + cebPasswordReset, + cebSocialNetwork, + cebFriends, + cebChat, + cebPersonal, + cebFalukant, + cebBlog, + cebMinigames, + cebSeo, +]; + const messages = { en: { ...enGeneral, @@ -102,45 +169,7 @@ const messages = { ...enPersonal, ...enSeo, }, - ceb: { - ...enGeneral, - ...enHeader, - ...enNavigation, - ...enHome, - ...enChat, - ...enRegister, - ...enPasswordReset, - ...enError, - ...enActivate, - ...enSettings, - ...enAdmin, - ...enSocialNetwork, - ...enFriends, - ...enFalukant, - ...enBlog, - ...enMinigames, - ...enMessage, - ...enPersonal, - ...cebGeneral, - ...cebHeader, - ...cebNavigation, - ...cebHome, - ...cebRegister, - ...cebActivate, - ...cebError, - ...cebMessage, - ...cebSettings, - ...cebAdmin, - ...cebPasswordReset, - ...cebSocialNetwork, - ...cebFriends, - ...cebChat, - ...cebPersonal, - ...cebFalukant, - ...cebBlog, - ...cebMinigames, - ...cebSeo, - }, + ceb: mergeLocaleChunks(cebLocaleChunks), de: { 'Ok': 'Ok', ...deGeneral, diff --git a/frontend/src/i18n/locales/ceb/admin.json b/frontend/src/i18n/locales/ceb/admin.json index 174f2a7..b7cd465 100644 --- a/frontend/src/i18n/locales/ceb/admin.json +++ b/frontend/src/i18n/locales/ceb/admin.json @@ -1,68 +1,482 @@ { - "admin": { - "interests": { - "title": "[Admin] - Pagdumala sa mga interes" - }, - "contacts": { - "title": "[Admin] - Mga hangyo sa pakigkontak", - "date": "Petsa", - "from": "Gikan kang", - "actions": "Mga aksyon", - "open": "Ablihi", - "finished": "Tapusa" - }, - "editcontactrequest": { - "title": "[Admin] - Usba ang hangyo sa pakigkontak" - }, - "user": { - "name": "Ngalan sa user", - "active": "Aktibo", - "blocked": "Gi-block", - "actions": "Mga aksyon", - "search": "Pangita" - }, - "vocabLessonReset": { - "title": "Kurso sa pinulongan: pag-uswag sa leksiyon", - "intro": "Tangtanga ang pag-uswag, mga resulta sa ehersisyo ug natipig nga kahimtang sa usa ka leksiyon lamang (dili ang tibuok kurso). Makita ra ang mga kurso nga na-enroll niini nga tiggamit.", - "loadCourses": "Ikarga ang na-enroll nga mga kurso", - "selectCourse": "Kurso", - "selectLesson": "Leksiyon", - "reset": "I-reset ang leksiyon niining user", - "confirmTitle": "Tangtanga ang pag-uswag sa leksiyon", - "confirm": "Tinuod nga tangtangon ang pag-uswag sa leksiyon nga «{lesson}» ni {username}?", - "success": "Na-reset na ang pag-uswag sa leksiyon.", - "error": "Dili ma-reset.", - "pickUserFirst": "Una pagpili ug user.", - "noEnrolledCourses": "Kini nga tiggamit wala na-enroll sa bisan unsang kurso sa pinulongan.", - "loadCoursesError": "Dili makarga ang lista sa mga kurso.", - "loadingLessons": "Nagkarga sa mga leksiyon …" - }, - "vocabLessonMarkComplete": { - "divider": "Ayuhon ang pag-uswag (dili paghimo og peke nga resulta sa ehersisyo)", - "throughLabel": "Tanang leksiyon hangtod sa numero (lakip)", - "hint": "I-mark ang kulang o abli nga mga row nga nahuman, lakip ang target score ug unang review wave. Ang nahuman na dili usbon.", - "submit": "I-mark nga nahuman hangtod dinhi", - "confirmTitle": "I-mark ang mga leksiyon nga nahuman", - "confirm": "I-mark nga nahuman ang tanang leksiyon nga numero ≤ {n} ni {username} niining kurso?", - "success": "{marked} ka leksiyon nga bag-ong gi-mark nga nahuman ({unchanged} klaro nang nahuman).", - "successNone": "Walay pagbag-o: tanang leksiyon nga naapektuhan ({unchanged}) klaro nang nahuman.", - "error": "Dili ma-mark nga nahuman." - }, - "rights": { - "add": "Idugang ang katungod", - "select": "Palihog pagpili", - "current": "Karon nga mga katungod" - }, - "forum": { - "title": "[Admin] - Forum", - "currentForums": "Anaa nang mga forum", - "edit": "Usba", - "delete": "Tangtanga", - "createForum": "Paghimo", - "forumName": "Titulo", - "create": "Paghimo", - "selectPermissions": "Palihog pagpili", - "confirmDeleteTitle": "Tangtanga ang forum" + "admin": { + "interests": { + "title": "[Admin] - Pagdumala sa mga interes", + "newinterests": { + "name": "Ngalan sa interes", + "status": "Na-aprub", + "adultonly": "Hamtong lamang", + "translations": "Mga hubad", + "isactive": "Aktibo", + "isadult": "Hamtong lamang", + "delete": "Tangtanga" + } + }, + "contacts": { + "title": "[Admin] - Mga hangyo sa pakigkontak", + "date": "Petsa", + "from": "Gikan kang", + "actions": "Mga aksyon", + "open": "Usba", + "finished": "Humana" + }, + "editcontactrequest": { + "title": "[Admin] - Usba ang hangyo sa pakigkontak" + }, + "user": { + "name": "Ngalan sa user", + "active": "Aktibo", + "blocked": "Gi-block", + "actions": "Mga aksyon", + "search": "Pangita" + }, + "vocabLessonReset": { + "title": "Kurso sa pinulongan: pag-uswag sa leksiyon", + "intro": "Tangtanga ang pag-uswag, mga resulta sa ehersisyo ug natipig nga kahimtang sa usa ka leksiyon lamang (dili ang tibuok kurso). Makita ra ang mga kurso nga na-enroll niini nga tiggamit.", + "loadCourses": "Ikarga ang na-enroll nga mga kurso", + "selectCourse": "Kurso", + "selectLesson": "Leksiyon", + "reset": "I-reset ang leksiyon niining user", + "confirmTitle": "Tangtanga ang pag-uswag sa leksiyon", + "confirm": "Tinuod nga tangtangon ang pag-uswag sa leksiyon nga «{lesson}» ni {username}?", + "success": "Na-reset na ang pag-uswag sa leksiyon.", + "error": "Dili ma-reset.", + "pickUserFirst": "Una pagpili ug user.", + "noEnrolledCourses": "Kini nga tiggamit wala na-enroll sa bisan unsang kurso sa pinulongan.", + "loadCoursesError": "Dili makarga ang lista sa mga kurso.", + "loadingLessons": "Nagkarga sa mga leksiyon …" + }, + "vocabLessonMarkComplete": { + "divider": "Ayuhon ang pag-uswag (dili paghimo og peke nga resulta sa ehersisyo)", + "throughLabel": "Tanang leksiyon hangtod sa numero (lakip)", + "hint": "I-mark ang kulang o abli nga mga row nga nahuman, lakip ang target score ug unang review wave. Ang nahuman na dili usbon.", + "submit": "I-mark nga nahuman hangtod dinhi", + "confirmTitle": "I-mark ang mga leksiyon nga nahuman", + "confirm": "I-mark nga nahuman ang tanang leksiyon nga numero ≤ {n} ni {username} niining kurso?", + "success": "{marked} ka leksiyon nga bag-ong gi-mark nga nahuman ({unchanged} klaro nang nahuman).", + "successNone": "Walay pagbag-o: tanang leksiyon nga naapektuhan ({unchanged}) klaro nang nahuman.", + "error": "Dili ma-mark nga nahuman." + }, + "adultVerification": { + "title": "[Admin] - Pag-aprub sa erotik", + "intro": "Ang mga hamtong nga tiggamit makahimo og hangyo sa pag-abli sa erotik nga lugar. Dinhi masusi, ma-aprub o ma-balibaran ang mga hangyo.", + "username": "User", + "age": "Edad", + "statusLabel": "Status", + "requestLabel": "Prueba", + "actions": "Mga aksyon", + "approve": "Aprub", + "reject": "Balibari", + "resetPending": "Ibutang nga pending", + "openDocument": "Ablihi ang dokumento", + "previewTitle": "Preview sa prueba", + "closePreview": "Isira ang preview", + "previewUnavailable": "Walay inline preview niini nga matang sa file.", + "documentMissing": "Wala makit-i ang verification file sa server.", + "empty": "Walay angay nga hangyo.", + "loadError": "Dili makarga ang mga pag-aprub.", + "updateError": "Dili ma-update ang status.", + "documentError": "Dili maablihi ang dokumento.", + "filters": { + "pending": "Pending", + "approved": "Na-aprub", + "rejected": "Gibalibaran", + "all": "Tanan" + }, + "status": { + "none": "Wala mangayo", + "pending": "Pending", + "approved": "Na-aprub", + "rejected": "Gibalibaran" + }, + "messages": { + "approved": "Gi-aprub na.", + "rejected": "Gibalibaran ang pag-aprub.", + "pending": "Gi-ibalik sa pending ang hangyo." + } + }, + "eroticModeration": { + "title": "[Admin] - Moderasyon sa erotik", + "intro": "Ang gi-report nga erotik nga mga hulagway ug video masusi dinhi, matago, matangtang, o i-escalate batok sa account.", + "empty": "Walay angay nga report.", + "loadError": "Dili makarga ang mga report.", + "actionError": "Dili matuman ang aksyon sa moderation.", + "actionSuccess": "Nasave na ang aksyon sa moderation.", + "target": "Target", + "owner": "Tag-iya", + "reporter": "Nag-report", + "reason": "Rason", + "statusLabel": "Status", + "meta": "Oras / aksyon", + "actions": "Mga aksyon", + "image": "Hulagway", + "video": "Video", + "hidden": "Gitago", + "preview": "Preview", + "previewError": "Dili makarga ang preview.", + "dismiss": "Isalikway", + "hide": "Itago", + "restore": "Ibalik", + "delete": "Tangtanga", + "blockUploads": "I-block ang mga upload", + "revokeAccess": "Kuhaa ang erotik access", + "notePrompt": "Nota para niini nga aksyon sa moderation", + "actionLabels": { + "dismiss": "Gisalikway", + "hide_content": "Gitago", + "restore_content": "Gibalik", + "delete_content": "Gitantang", + "block_uploads": "Gi-block ang upload", + "revoke_access": "Gikuha ang access" + }, + "filters": { + "open": "Abli", + "actioned": "Naaksyonan", + "dismissed": "Gisalikway", + "all": "Tanan" + }, + "status": { + "open": "Abli", + "actioned": "Naaksyonan", + "dismissed": "Gisalikway" + } + }, + "rights": { + "add": "Idugang ang katungod", + "select": "Palihog pagpili", + "current": "Karon nga mga katungod" + }, + "forum": { + "title": "[Admin] - Forum", + "currentForums": "Anaa nang mga forum", + "edit": "Usba", + "delete": "Tangtanga", + "createForum": "Paghimo", + "forumName": "Titulo", + "create": "Paghimo", + "permissions": { + "label": "Permiso", + "all": "Tanan", + "admin": "Admin lamang", + "teammember": "Miyembro sa team lamang", + "user": "Piniling user lamang", + "age": "Edad 14+ lamang" + }, + "selectPermissions": "Palihog pagpili", + "confirmDeleteMessage": "Tinuod nga gusto nimong tangtangon kini nga forum?", + "confirmDeleteTitle": "Tangtanga ang forum" + }, + "match3": { + "title": "Pagdumala sa Match3 nga mga level", + "newLevel": "Paghimo og bag-ong level", + "editLevel": "Usba ang level", + "deleteLevel": "Tangtanga ang level", + "confirmDelete": "Tinuod nga gusto nimong tangtangon kini nga level?", + "levelName": "Ngalan", + "levelDescription": "Deskripsiyon", + "boardWidth": "Lapad", + "boardHeight": "Taas", + "moveLimit": "Limit sa lihok", + "levelOrder": "Order", + "boardLayout": "Layout sa board", + "tileTypes": "Anaa nga matang sa tile", + "actions": "Mga aksyon", + "edit": "Usba", + "delete": "Tangtanga", + "save": "I-save", + "cancel": "Kanselahon", + "update": "I-update", + "create": "Paghimo", + "boardControls": { + "fillAll": "I-activate tanan", + "clearAll": "I-deactivate tanan", + "invert": "Baliktad" + }, + "loading": "Nagkarga sa mga level …", + "retry": "Suwayi pag-usab", + "availableLevels": "Anaa nga mga level: {count}", + "levelFormat": "Level {number}: {name}", + "levelObjectives": "Mga tumong sa level", + "objectivesTitle": "Kondisyon sa kadaogan", + "addObjective": "Idugang ang tumong", + "removeObjective": "Kuhaa", + "objectiveType": "Matang", + "objectiveTypeScore": "Mangolekta og score", + "objectiveTypeMatches": "Paghimog match", + "objectiveTypeMoves": "Gamita ang mga lihok", + "objectiveTypeTime": "Hupti ang oras", + "objectiveTypeSpecial": "Espesyal nga tumong", + "objectiveOperator": "Operator", + "operatorGreaterEqual": "Mas dako o pareho (≥)", + "operatorLessEqual": "Mas gamay o pareho (≤)", + "operatorEqual": "Pareho (=)", + "operatorGreater": "Mas dako kay (>)", + "operatorLess": "Mas gamay kay (<)", + "objectiveTarget": "Target nga bili", + "objectiveTargetPlaceholder": "pananglitan 100", + "objectiveOrder": "Order", + "objectiveOrderPlaceholder": "1, 2, 3 …", + "objectiveDescription": "Deskripsiyon", + "objectiveDescriptionPlaceholder": "pananglitan mangolekta og 100 puntos", + "objectiveRequired": "Gikinahanglan aron mahuman ang level", + "noObjectives": "Walay kondisyon sa kadaogan. I-klik ang «Idugang ang tumong»." + }, + "falukant": { + "edituser": { + "title": "Usba ang Falukant user", + "username": "Ngalan sa user", + "characterName": "Ngalan sa karakter", + "user": "User", + "success": "Nasave na ang mga kausaban.", + "error": "Dili masave ang mga kausaban.", + "errorLoadingBranches": "Sayop sa pagkarga sa mga sangang opisina.", + "errorUpdatingStock": "Sayop sa pag-update sa bodega.", + "stockUpdated": "Malampuson nga na-update ang bodega.", + "search": "Pangita", + "tabs": { + "userdata": "Datos sa user", + "branches": "Mga sangang opisina" + }, + "branches": { + "title": "Mga sangang opisina ug bodega", + "noStocks": "Walay bodega", + "noBranches": "Walay nakit-an nga sangang opisina", + "addStock": "Idugang ang bodega", + "stockType": "Matang sa bodega", + "selectStockType": "Pilia ang matang sa bodega", + "quantity": "Kantidad", + "allStocksAdded": "Anaa na ang tanang matang sa bodega" + }, + "errorLoadingStockTypes": "Sayop sa pagkarga sa mga matang sa bodega.", + "errorAddingStock": "Sayop sa pagdugang sa bodega.", + "stockAdded": "Malampuson nga nadugang ang bodega.", + "invalidStockData": "Palihog sulodi ang balido nga matang ug kantidad.", + "pregnancy": { + "title": "Pagmabdus (admin)", + "characterId": "ID sa karakter", + "status": "Status", + "statusActive": "Nagpaabot hangtod", + "statusNone": "Dili mabdus", + "fatherId": "ID sa amahan nga karakter (opsyonal)", + "fatherSelect": "Amahan (asawa / nobyo / uyab)", + "fatherNone": "— walay natipig nga amahan —", + "fatherHintList": "Gikan sa relasyon niini nga karakter (kaminyoon, engagement, aktibong uyab).", + "fatherHintManual": "Walay angay nga partner sa database: isulod ang ID sa amahan nga karakter.", + "fatherManualPlaceholder": "ID sa karakter", + "dueDays": "Mga adlaw hangtod sa due date", + "dueDaysHint": "0 = due karon (mahimong mosunod ang pagkatawo depende sa lohika sa dula).", + "force": "Ibutang ang pagmabdus", + "clear": "Tangtanga ang pagmabdus", + "successForce": "Na-set na ang pagmabdus.", + "successClear": "Natangtang na ang pagmabdus.", + "error": "Napakyas ang aksyon.", + "relationship": { + "married": "Asawa", + "engaged": "Nobyo/nobya", + "lover": "Uyab" + } + }, + "birth": { + "title": "Pugson ang pagkatawo (admin)", + "motherHint": "Ang karakter sa ibabaw gamiton isip inahan.", + "fatherId": "ID sa amahan nga karakter", + "fatherSelect": "Amahan (asawa / nobyo / uyab)", + "fatherChoose": "— pilia ang amahan —", + "fatherHintList": "Gikan sa relasyon niini nga karakter.", + "fatherHintManual": "Walay partner sa lista: isulod ang ID sa amahan.", + "fatherRequired": "Palihog pilia ang amahan o isulod ang ID sa karakter.", + "context": "Konteksto", + "contextMarriage": "Kaminyoon", + "contextLover": "Uyab", + "legitimacy": "Legitimidad", + "legitimate": "Legitimo", + "ackBastard": "Giila nga bastardo", + "hiddenBastard": "Tago nga bastardo", + "gender": "Sekso sa bata", + "genderRandom": "Random", + "male": "Lalaki", + "female": "Babaye", + "force": "Pugson ang pagkatawo", + "success": "Nahimo ang bata (bautismo pending).", + "error": "Dili mapugos ang pagkatawo." + } + }, + "createNPC": { + "title": "Paghimo og mga NPC", + "region": "Lungsod", + "allRegions": "Tanan nga lungsod", + "ageRange": "Sakup sa edad", + "to": "hangtod", + "years": "ka tuig", + "titleRange": "Sakup sa titulo", + "count": "Isip kada kombinasyon lungsod–titulo", + "countHelp": "Kini nga isip himoon sa matag kombinasyon sa napiling lungsod ug titulo.", + "create": "Paghimo og mga NPC", + "creating": "Naghimo …", + "result": "Resulta", + "createdCount": "{count} ka NPC ang nahimo.", + "combinationInfo": "{perCombination} ka NPC matag kombinasyon × {combinations} ka kombinasyon = {count} ka NPC tanan", + "age": "Edad", + "errorLoadingRegions": "Sayop sa pagkarga sa mga lungsod.", + "errorLoadingTitles": "Sayop sa pagkarga sa mga titulo.", + "errorCreating": "Sayop sa paghimo sa mga NPC.", + "invalidAgeRange": "Dili balido nga sakup sa edad.", + "invalidTitleRange": "Dili balido nga sakup sa titulo.", + "invalidCount": "Dili balido nga isip (1–500).", + "progress": "Progreso", + "progressDetails": "{current} sa {total} ka NPC ang nahimo", + "timeRemainingSeconds": "Nahibilin nga oras: {seconds} ka segundo", + "timeRemainingMinutes": "Nahibilin nga oras: {minutes} ka minuto {seconds} ka segundo", + "almostDone": "Hapit na …", + "jobNotFound": "Wala makit-i ang trabaho o na-expire na." + } + }, + "chatrooms": { + "title": "[Admin] - Pagdumala sa chat room", + "roomName": "Ngalan sa room", + "create": "Paghimo og chat room", + "edit": "Usba ang chat room", + "type": "Matang", + "isPublic": "Makita sa publiko", + "isAdultOnly": "Erotik nga lugar lamang", + "actions": "Mga aksyon", + "genderRestriction": { + "show": "Tugoti ang limit sa sekso", + "label": "Limit sa sekso" + }, + "minAge": { + "show": "Butangi ang minimum nga edad", + "label": "Minimum nga edad" + }, + "maxAge": { + "show": "Butangi ang maximum nga edad", + "label": "Maximum nga edad" + }, + "password": { + "show": "Tugoti ang proteksyon sa password", + "label": "Password" + }, + "friendsOfOwnerOnly": "Mga higala sa tag-iya lamang", + "requiredUserRight": { + "show": "Butangi ang gikinahanglan nga katungod sa user", + "label": "Gikinahanglan nga katungod sa user" + }, + "roomtype": { + "chat": "Chat", + "dice": "Dado", + "poker": "Poker", + "hangman": "Hangman" + }, + "rights": { + "talk": "Makistorya", + "scream": "Mosinggit", + "whisper": "Whisper", + "start game": "Sugdi ang dula", + "open room": "Ablihi ang room", + "systemmessage": "Mensahe sa sistema" + }, + "confirmDelete": "Tinuod nga gusto nimong tangtangon kini nga chat room?" + }, + "userStatistics": { + "title": "[Admin] - Estadistika sa user", + "totalUsers": "Tanan nga mga user", + "genderDistribution": "Distribusyon sa sekso", + "ageDistribution": "Distribusyon sa edad" + }, + "taxiTools": { + "title": "Mga himan sa taxi", + "description": "Pagdumala sa mga mapa, level ug setting sa taxi", + "mapEditor": { + "title": "Usba ang mapa", + "availableMaps": "Anaa nga mga mapa: {count}", + "newMap": "Paghimo og bag-ong mapa", + "mapFormat": "{name} (Posisyon: {x},{y})", + "mapName": "Ngalan sa mapa", + "mapDescription": "Deskripsiyon", + "mapWidth": "Lapad", + "mapHeight": "Taas", + "tileSize": "Sukod sa tile", + "positionX": "Posisyon X", + "positionY": "Posisyon Y", + "mapType": "Matang sa mapa", + "mapLayout": "Layout sa mapa", + "tilePalette": "Palette sa tile", + "streetNames": "Ngalan sa dalan", + "extraElements": "Dugang nga elemento", + "streetNameHorizontal": "Ngalan sa dalan (pahigda)", + "streetNameVertical": "Ngalan sa dalan (patindog)", + "continueHorizontal": "Padayon sa laing direksiyon (→)", + "continueVertical": "Padayon sa laing direksiyon (↓)", + "continueOther": "Padayon sa laing direksiyon", + "position": "Posisyon", + "fillAllRoads": "Tanan nga dalan", + "clearAll": "Hawani tanan", + "generateRandom": "Himoa nga random", + "delete": "Tangtanga", + "update": "I-update", + "cancel": "Kanselahon", + "create": "Paghimo", + "createSuccess": "Malampuson nga nahimo ang mapa!", + "updateSuccess": "Malampuson nga na-update ang mapa!", + "deleteSuccess": "Malampuson nga natangtang ang mapa!" + } + }, + "servicesStatus": { + "title": "Status sa serbisyo", + "description": "Tan-awa ang status sa Backend, Chat ug Daemon", + "status": { + "connected": "Na-connect", + "connecting": "Nag-connect …", + "disconnected": "Wala na-connect", + "error": "Sayop", + "unknown": "Wala mailhi" + }, + "backend": { + "title": "Backend", + "connected": "Naabot ang backend service ug na-connect" + }, + "chat": { + "title": "Chat", + "connected": "Naabot ang chat service ug na-connect" + }, + "daemon": { + "title": "Daemon", + "connected": "Naabot ang daemon service ug na-connect", + "connections": { + "title": "Aktibong mga koneksiyon", + "none": "Walay aktibong koneksiyon", + "userId": "ID sa user", + "username": "Ngalan sa user", + "connections": "mga koneksiyon", + "duration": "Gidugayon sa koneksiyon", + "lastPong": "Panahon sukad sa kataposang pong", + "pingTimeouts": "Mga timeout sa ping", + "pongReceived": "Nadawat ang pong", + "yes": "Oo", + "no": "Dili", + "notConnected": "Wala na-connect ang daemon", + "sendError": "Sayop sa pagpadala sa hangyo", + "error": "Sayop sa pagkuha sa mga koneksiyon" + }, + "websocketLog": { + "title": "Log sa WebSocket", + "showLog": "Ipakita ang WebSocket log", + "refresh": "I-refresh", + "loading": "Nagkarga …", + "close": "Isira", + "entryCount": "{count} ka entry", + "noEntries": "Walay entry sa log", + "notConnected": "Wala na-connect ang daemon", + "sendError": "Sayop sa pagpadala sa hangyo", + "parseError": "Sayop sa pag-parse sa tubag", + "timestamp": "Timestamp", + "direction": "Direksiyon", + "peer": "Peer", + "connUser": "User sa koneksiyon", + "targetUser": "Target nga user", + "event": "Hitabo" + } + } + } } - } } diff --git a/frontend/src/i18n/locales/ceb/falukant.json b/frontend/src/i18n/locales/ceb/falukant.json index 3dcd4ec..5f30442 100644 --- a/frontend/src/i18n/locales/ceb/falukant.json +++ b/frontend/src/i18n/locales/ceb/falukant.json @@ -1,628 +1,1151 @@ { - "falukant": { - "weather": { - "sunny": "Adlawon", - "cloudy": "Dag-um", - "rainy": "Ulanon", - "stormy": "Bagyo", - "snowy": "Nag-niyebe", - "foggy": "Mahaw-ang", - "windy": "Mahangin", - "clear": "Klaro" - }, - "debtorsPrison": { - "actionBlocked": "Kini nga aksyon gi-block samtang naa ka sa debtors' prison.", - "globalWarning": "Ang imong kalangan sa utang nagsugod na og limit sa imong mga aksyon. Posible nga mosunod dayon ang pinugos nga mga lakang.", - "globalLocked": "Naa ka sa debtors' prison. Hapit tanan aktibong aksyon sa Falukant karon gi-block." - }, - "messages": { - "title": "Mga mensahe", - "tooltip": "Mga mensahe", - "empty": "Walay mga mensahe.", - "markAllRead": "Timan-i tanan isip nabasa" - }, - "notifications": { - "notify_election_created": "Giskedyul ang usa ka bag-ong eleksiyon.", - "director_death": "Namatay si {characterName} sa edad nga {ageYears}. Isip amo, kinahanglan kang magtudlo og bag-ong direktor.{regionLabel}{spouses}{children}{lovers}", - "relationship_death": "Namatay si {characterName} sa edad nga {ageYears}.{regionLabel}{spouses}{children}{lovers}", - "child_death": "Namatay ang imong anak nga si {characterName} sa edad nga {ageYears}.{regionLabel}", - "production": { - "overproduction": "Sobra nga produksyon: ang imong produksyon kay {value}% mas taas kaysa panginahanglan." - }, - "transport": { - "waiting": "Naghulat ang transport", - "modes": { - "land": "Yuta", - "water": "Tubig", - "unknown": "Wala mailhi" + "falukant": { + "weather": { + "sunny": "Adlawon", + "cloudy": "Dag-um", + "rainy": "Ulanon", + "stormy": "Bagyo", + "snowy": "Nag-niyebe", + "foggy": "Mahaw-ang", + "windy": "Mahangin", + "clear": "Klaro" }, - "speed": { - "1": "Hinay", - "2": "Katamtaman", - "3": "Paspas", - "4": "Pinakapaspas", - "unknown": "Wala mailhi" + "debtorsPrison": { + "actionBlocked": "Kini nga aksyon gi-block samtang naa ka sa debtors' prison.", + "globalWarning": "Ang imong kalangan sa utang nagsugod na og limit sa imong mga aksyon. Posible nga mosunod dayon ang pinugos nga mga lakang.", + "globalLocked": "Naa ka sa debtors' prison. Hapit tanan aktibong aksyon sa Falukant karon gi-block." + }, + "messages": { + "title": "Mga mensahe", + "tooltip": "Mga mensahe", + "empty": "Walay mga mensahe.", + "markAllRead": "Timan-i tanan isip nabasa" + }, + "notifications": { + "notify_election_created": "Giskedyul ang usa ka bag-ong eleksiyon.", + "director_death": "Namatay si {characterName} sa edad nga {ageYears}. Isip amo, kinahanglan kang magtudlo og bag-ong direktor.{regionLabel}{spouses}{children}{lovers}", + "relationship_death": "Namatay si {characterName} sa edad nga {ageYears}.{regionLabel}{spouses}{children}{lovers}", + "child_death": "Namatay ang imong anak nga si {characterName} sa edad nga {ageYears}.{regionLabel}", + "production": { + "overproduction": "Sobra nga produksyon: ang imong produksyon kay {value}% mas taas kaysa panginahanglan." + }, + "transport": { + "waiting": "Naghulat ang transport", + "modes": { + "land": "Yuta", + "water": "Tubig", + "unknown": "Wala mailhi" + }, + "speed": { + "1": "Hinay", + "2": "Katamtaman", + "3": "Paspas", + "4": "Pinakapaspas", + "unknown": "Wala mailhi" + } + }, + "random_event": { + "windfall": { + "title": "Kalit nga swerte", + "description": "Nakakita ka og nakalimtang pitaka sa dalan. Nadawat nimo ang {amount}." + }, + "theft": { + "title": "Kawat", + "description": "Adunay kawatan nga nagkuha sa bahin sa imong kuwarta. Kawala: {amount}." + }, + "warehouse_fire": { + "title": "Sunog sa bodega", + "description": "Ang sunog nakadaot sa bahin sa imong bodega.{damagePercent}{destructionPercent}" + }, + "character_illness": { + "title": "Sakit", + "description": "Nagsakit si {characterName} ug nawad-an og {healthChange} health." + }, + "character_recovery": { + "title": "Pagkamaayo", + "description": "Naayo si {characterName} gikan sa sakit ug nabawi ang {healthChange} health." + }, + "character_accident": { + "title": "Aksidente", + "description": "Ang grabe nga aksidente nakapasakit pag-ayo kang {characterName}. Health: {healthChange}." + }, + "sudden_infant_death": { + "title": "Kalit nga pagkamatay sa masuso", + "description": "Kalit nga namatay si {characterName}." + }, + "regional_storm": { + "title": "Bagyo sa rehiyon", + "description": "Grabe nga bagyo ang miigo sa rehiyon nga {regionName}." + }, + "regional_festival": { + "title": "Pista sa rehiyon", + "description": "Adunay dakong pista sa rehiyon nga {regionName}." + }, + "regional_epidemic": { + "title": "Epidemya", + "description": "Naigo sa epidemya ang rehiyon nga {regionName}." + }, + "earthquake": { + "title": "Linog", + "description": "Naigo sa linog ang rehiyon nga {regionName}." + } + } + }, + "statusbar": { + "age": "Edad", + "wealth": "Kadato", + "health": "Panglawas", + "events": "Mga panghitabo", + "relationship": "Relasyon", + "children": "Mga anak", + "children_unbaptised": "Mga anak nga wala pa mabunyagi" + }, + "overview": { + "title": "Falukant - Overview", + "heroIntro": "Ang imong kahimtang sa ekonomiya, pamilya ug kabtangan sa usa ka mubo ug klarong overview.", + "heirSelection": { + "title": "Pagpili og manununod", + "description": "Dili na magamit ang imong daang karakter. Pagpili og manununod gikan sa lista aron magpadayon sa duwa.", + "loading": "Nag-load sa posibleng mga manununod…", + "noHeirs": "Walay available nga mga manununod.", + "select": "Pilia isip play character", + "error": "Sayop sa pagpili sa manununod." + }, + "metadata": { + "title": "Personal", + "name": "Ngalan", + "money": "Kadato", + "age": "Edad", + "years": "Tuig", + "days": "Adlaw", + "mainbranch": "Pulong-balay nga siyudad", + "nobleTitle": "Titulo", + "certificate": "Sertipiko" + }, + "certificate": { + "title": "Progreso sa sertipiko", + "description": "Nagpakita sa imong karon nga level ug sa mga kinahanglanon para sa sunod nga promotion.", + "current": "Karon", + "next": "Sunod nga level", + "levelMatrix": "Mga produkto per certificate level", + "levelLabel": "Level {level}", + "score": "Puntos", + "scoreGate": "Kinahanglan nga puntos para sa sunod nga level", + "ready": "Andam na para sa sunod nga promotion", + "notReady": "Wala pa maabot ang mga kinahanglanon", + "state": { + "ready": "Pwede na ang promotion sumala sa daemon", + "minimumsMetScoreBlocked": "Naabot na ang minimum, pero gipugngan pa sa puntos", + "scoreMetMinimumsMissing": "Sakto na ang puntos, pero kulang pa ang minimum nga kinahanglanon", + "notReady": "Dili pa andam para sa promotion" + }, + "hint": { + "ready": "Para sa level {next}, naabot na ang minimum nga mga kinahanglanon ug ang score threshold nga {threshold}.", + "minimumsMetScoreBlocked": "Naabot na ang makita nga minimum nga mga kinahanglanon para sa level {next}, pero motugot lang ang daemon sa promotion kung maabot sa weighted score ang threshold nga {threshold}. Sa pagkakaron, kutob ra sa level {target} ang score.", + "scoreMetMinimumsMissing": "Ang weighted score igo na unta para sa level {next}, pero naa pay kulang nga minimum nga kinahanglanon.", + "notReady": "Para sa level {next}, kinahanglan maabot ang minimum nga mga kinahanglanon ug ang score threshold nga {threshold}." + }, + "factors": "Karon nga mga bili", + "requirements": "Mga kinahanglanon sa sunod nga level", + "factor": { + "avgKnowledge": "Average kahibalo", + "completedProductions": "Nahuman produksyons", + "reputation": "Dungog", + "housePosition": "Balay level", + "highestPoliticalOfficeRank": "Highest politikal opisina", + "highestChurchOfficeRank": "Highest simbahan opisina", + "nobilityLevel": "Kadungganan level", + "officePoints": "Opisina status", + "nobilityPoints": "Kadungganan status", + "reputationPoints": "Dungog status", + "housePoints": "Balay status" + }, + "statusMode": { + "one_of": "At least one status condition", + "two_of": "At least two status conditions" + } + }, + "summary": { + "certificateHint": "Mao kini ang nagbuot kung unsang mga kategoriya sa produkto ang pwede nimong himuon karon.", + "branches": "Mga branch", + "branchesHint": "Direktang access sa imong labing importante nga mga lokasyon sa negosyo.", + "productions": "Aktibong mga produksyon", + "productionsHint": "Mga produksyon nga nagdagan ug hapit nang mahuman o manginahanglan og pagtan-aw.", + "stock": "Mga posisyon sa stock", + "stockHint": "Mubo nga tan-aw sa mga baligya ug stock sa tanang rehiyon.", + "open": "Ablihi" + } + }, + "health": { + "amazing": "Maayo kaayo", + "good": "Maayo", + "normal": "Normal", + "bad": "Dili maayo", + "very_bad": "Daotan kaayo" + }, + "moneyHistory": { + "title": "Kasaysayan sa kuwarta", + "filter": "Filter", + "search": "I-apply ang filter", + "activity": "Kalihokan", + "moneyBefore": "Kuwarta sa wala pa ang transaksyon", + "moneyAfter": "Kuwarta human sa transaksyon", + "changeValue": "Kausaban sa bili", + "time": "Oras", + "prev": "Nangagi", + "next": "Sunod", + "graph": { + "open": "Ipakita ang graph", + "title": "Kuwarta sa paglabay sa panahon", + "close": "Isira", + "loading": "Nag-load sa history...", + "noData": "Walay entry sa napiling panahon.", + "yesterday": "Kagahapon", + "range": { + "label": "Sakop", + "today": "Karon", + "24h": "Kataposang 24 ka oras", + "week": "Kataposang semana", + "month": "Kataposang bulan", + "year": "Kataposang tuig", + "all": "Tibuok history" + } + }, + "activities": { + "Product sale": "Pagbaligya sa produkto", + "Production cost": "Gasto sa produksyon", + "Sell all products": "Ibaligya ang tanang produkto", + "sell products": "Ibaligya ang mga produkto", + "director starts production": "Nagsugod ang direktor og produksyon", + "director payed out": "Nabayran ang sweldo sa direktor", + "create_branch": "Nahimo ang branch", + "buy_vehicles": "Napamalit ang transport vehicles", + "build_vehicles": "Nabuhat ang transport vehicles", + "transport": "Transport", + "Marriage cost": "Gasto sa kasal", + "marriage_gift": "Regalo sa asawa/bana", + "Gift cost": "Gasto sa regalo", + "lover maintenance": "Maintenance sa karelasyon", + "servants_monthly": "Nabayran ang mga sulugoon", + "servants_hired": "Nakuha ang mga sulugoon", + "household_order": "Gi-order ang household", + "housebuy": "Pagpalit og balay", + "Baptism": "Bunyag", + "credit taken": "Nakuhaan og credit", + "new nobility title": "Bag-ong titulo sa kadungganan", + "partyOrder": "Gi-order ang party", + "renovation_all": "Kompleto nga gi-renovate ang balay", + "Buy storage (type: field)": "Bought tipigan (type: field)", + "Buy storage (type: iron)": "Bought tipigan (type: iron)", + "Buy storage (type: stone)": "Bought tipigan (type: stone)", + "Buy storage (type: wood)": "Bought tipigan (type: wood)", + "health": { + "pill": "Panglawas tambal: pill", + "doctor": "Panglawas tambal: doctor", + "witch": "Panglawas tambal: witch", + "drunkOfLife": "Panglawas tambal: elixir sa life", + "barber": "Panglawas tambal: barber" + } + } + }, + "house": { + "title": "Balay", + "debtorsPrison": { + "houseWarning": "Samtang nagkadako ang kalangan sa utang, nagkataas ang risgo sa pagsakmit ug pinugos nga pagkawala sa balay.", + "houseRisk": "Ang imong balay apil na karon sa posibleng pinugos nga liquidation." + }, + "statusreport": "Kondisyon sa balay", + "element": "Elemento", + "state": "Kondisyon", + "buyablehouses": "Pagpalit og balay", + "buy": "Palita", + "price": "Presyo sa pagpalit", + "worth": "Nabiling bili", + "sell": "Ibaligya", + "sellConfirm": "Tinuod ba nga gusto nimong ibaligya ang imong balay?", + "sellSuccess": "Nabaligya na ang balay.", + "sellError": "Dili mabaligya ang balay.", + "buySuccess": "Napamalit na ang balay.", + "buyError": "Dili mapalit ang balay.", + "renovate": "Renovate", + "renovateAll": "I-renovate tanan", + "servants": { + "title": "Mga sulugoon", + "description": "Dumala sa household staff, kahapsay ug balik-balik nga gasto sa imong panimalay.", + "count": "Ihap sa mga sulugoon", + "expectedRange": "Gipaabot nga sakop", + "monthlyCost": "Binuwan nga gasto", + "quality": "Kalidad", + "householdOrder": "Household order", + "payLevel": "Antas sa bayad", + "payLevels": { + "low": "Low", + "normal": "Normal", + "high": "Generous" + }, + "staffingState": { + "label": "Staffing", + "understaffed": "Understaffed", + "fitting": "Fitting", + "overstaffed": "Overstaffed" + }, + "orderState": { + "label": "Order state", + "chaotic": "Chaotic", + "strained": "Strained", + "stable": "Stable", + "excellent": "Excellent" + }, + "actions": { + "hire": "Hire 1 sulugoon", + "dismiss": "Dismiss 1 sulugoon", + "tidy": "Tidy balayhold", + "hireSuccess": "Ang balayhold staff naay expanded.", + "hireError": "Ang staff could dili be expanded.", + "dismissSuccess": "A sulugoon naay dismissed.", + "dismissError": "Ang sulugoon could dili be dismissed.", + "payLevelSuccess": "Sulugoon pay naay updated.", + "payLevelError": "Sulugoon pay could dili be updated.", + "tidySuccess": "Ang balayhold naay put sa order.", + "tidyError": "Ang balayhold could dili be put sa order." + } + }, + "status": { + "roofCondition": "Atop", + "wallCondition": "Mga bungbong", + "floorCondition": "Salog", + "windowCondition": "Mga bintana" + }, + "type": { + "backyard_room": "Kuwarto sa likod-balay", + "wooden_house": "Kahoyng balay", + "straw_hut": "Payag nga kugon", + "family_house": "Balay-pamilya", + "townhouse": "Townhouse" + } + }, + "newdirector": { + "title": "Bag-ong direktor", + "age": "Edad", + "salary": "Sweldo", + "skills": "Kahanas", + "product": "Produkto", + "knowledge": "Kahibalo", + "hire": "Kuhon", + "noProposals": "Walay available nga mga kandidato alang sa direktor." + }, + "branch": { + "title": "Branch", + "heroEyebrow": "Branch", + "heroIntro": "Produksyon, storage, pagbaligya ug transport sa usa ka control area nga naa sa kalibotan sa duwa.", + "debtorsPrison": { + "branchLocked": "Samtang naa sa debtors' prison, gi-block ang bag-ong mga lakang pang-ekonomiya.", + "branchRisk": "Ang imong kalangan sa utang nagbutang sa imong mga branch, sakyanan ug gitigom nga mga butang sa peligro.", + "selectionBlocked": "Gi-block ang bag-ong pagpamuhunan samtang napriso tungod sa utang." + }, + "currentCertificate": "Karon nga sertipiko", + "certificate": { + "title": "Mga product unlock", + "description": "Nagpakita kung unsang mga produkto ang ma-unlock sa imong karon nga sertipiko ug unsa ang madugang sa sunod nga level.", + "currentUnlocks": "Karon nga na-unlock", + "nextUnlocks": "Bag-o sa level {level}" + }, + "selection": { + "title": "Pagpili sa branch", + "selected": "Napiling branch", + "placeholder": "Wala pay napiling branch", + "selectedcity": "Napiling siyudad", + "weather": "Karon nga panahon" + }, + "director": { + "income": "Kita", + "incomeUpdated": "Malampuson nga na-update ang sweldo.", + "starttransport": "Makapagsugod og transport", + "emptyTransport": { + "title": "Transporte without products", + "description": "Move vehicles gikan sa this sangang opisina ngadto sa another ngadto sa use them better.", + "vehicleType": "Sakyanan type", + "selectVehicle": "Select vehicle type", + "targetBranch": "Target sangang opisina", + "selectTarget": "Select target sangang opisina", + "cost": "Kantidad: {cost}", + "duration": "Gidugayon: {duration}", + "arrival": "Pag-abot: {datetime}", + "route": "Ruta", + "create": "Start transport", + "success": "Transporte started successfully.", + "error": "Sayop starting ang transport." + } + }, + "sale": { + "runningGuards": "Mga guwardiya" + }, + "storage": { + "buyPartialError": "Sayop sa pagpalit sa usa ka bahin sa kapasidad sa storage.", + "sellError": "Sayop sa pagbaligya sa kapasidad sa storage." + }, + "production": { + "title": "Produksyon", + "info": "Mga detalye bahin sa produksyon sa branch.", + "selectProduct": "Pilia ang produkto", + "quantity": "Kadaghanon", + "storageAvailable": "Libre nga storage", + "cost": "Gasto", + "duration": "Kadugayon", + "revenue": "Kita", + "start": "Sugdi ang produksyon", + "success": "Malampuson nga nasugdan ang produksyon!", + "error": "Sayop sa pagsugod sa produksyon.", + "minutes": "Mga minuto", + "ending": "Matapos sa:", + "time": "Oras", + "current": "Nagpadagan nga mga produksyon", + "product": "Produkto", + "remainingTime": "Nabiling oras (segundo)", + "status": "Status", + "sleep": "Gi-pause", + "active": "Aktibo", + "noProductions": "Walay nagdagan nga produksyon." + }, + "columns": { + "city": "Siyudad", + "type": "Type" + }, + "types": { + "production": "Produksyon", + "store": "Pagbaligya", + "fullstack": "Produksyon uban sa pagbaligya" + }, + "revenue": { + "title": "Kita sa produkto", + "product": "Produkto", + "absolute": "Kita (absoluto)", + "perMinute": "Kita kada minuto", + "expand": "Ipakita ang kita", + "collapse": "Tagoa ang kita", + "knowledge": "Kahibalo sa produkto", + "profitAbsolute": "Tibuok ganansya", + "profitPerMinute": "Ganansya kada minuto", + "betterPrices": "Mas maayong presyo sa ubang lugar" + }, + "vehicles": { + "cargo_cart": "Cargo cart", + "ox_cart": "Kariton nga baka", + "small_carriage": "Gamayang karwahe", + "large_carriage": "Dako nga karwahe", + "four_horse_carriage": "Upat-ka-kabayo nga karwahe", + "raft": "Balsa", + "sailing_ship": "Barko nga layag" + }, + "transport": { + "guardCount": "Mga guwardiya", + "guardHint": "Dugang nga gasto para sa mga guwardiya: {cost}" + }, + "tabs": { + "director": "Direktor", + "inventory": "Inventory", + "production": "Produksyon", + "storage": "Storage", + "transport": "Transport", + "taxes": "Mga buhis" + }, + "taxes": { + "title": "Buhises", + "loading": "Nagkarga buhis data...", + "loadingError": "Napakyas ngadto sa load buhis data: {error}", + "retry": "Suwayi pag-usab", + "noData": "No buhis data available", + "total": "Tanan buhis", + "table": { + "region": "Rehiyon", + "taxPercent": "Buhis %" + } + } + }, + "nobility": { + "highestPoliticalOffice": "Pinakataas nga politikal nga opisina", + "highestOfficeAny": "Pinakataas nga opisina sa kinatibuk-an", + "none": "wala", + "cooldown": "Makapaningkamot ka pag-usab sa {date}.", + "requirement": { + "money": "Wealth sa least {amount}", + "cost": "Kantidad: {amount}", + "branches": "At least {amount} sangang opisinaes", + "reputation": "Popularity sa least {amount}", + "house_position": "Balay status sa least level {amount}", + "house_condition": "Balay condition sa least {amount}", + "office_rank_any": "Highest politikal o simbahan opisina sa least rank {amount}", + "office_rank_political": "Highest politikal opisina sa least rank {amount}", + "lover_count_min": "At least {amount} lovers o favorites", + "lover_count_max": "At most {amount} lovers o favorites" + } + }, + "mood": { + "happy": "Malipayon", + "sad": "Masulub-on", + "angry": "Masuko", + "calm": "Kalma", + "nervous": "Nerbiyos", + "excited": "Excited", + "bored": "Gikapoy", + "fearful": "Nahadlok", + "confident": "Masaligon", + "curious": "Interesado", + "hopeful": "Hopeful", + "frustrated": "Frustrated", + "lonely": "Lonely", + "grateful": "Grateful", + "jealous": "Jealous", + "guilty": "Guilty", + "apathetic": "Apathetic", + "relieved": "Relieved", + "proud": "Proud", + "ashamed": "Ashamed" + }, + "character": { + "brave": "Maisog", + "kind": "Maayo", + "greedy": "Hakog", + "wise": "Maalamon", + "loyal": "Matinumanon", + "cunning": "Tig-ihap", + "generous": "Mapinanggaon", + "arrogant": "Mapahitas-on", + "honest": "Matinuoron", + "ambitious": "Ambisyoso", + "patient": "Patient", + "impatient": "Impatient", + "selfish": "Selfish", + "charismatic": "Charismatic", + "empathetic": "Empathetic", + "timid": "Timid", + "stubborn": "Stubborn", + "resourceful": "Resourceful", + "reckless": "Reckless", + "disciplined": "Disciplined", + "optimistic": "Optimistic", + "pessimistic": "Pessimistic", + "manipulative": "Manipulative", + "independent": "Independent", + "dependent": "Dependent", + "adventurous": "Adventurous", + "humble": "Humble", + "vengeful": "Vengeful", + "pragmatic": "Pragmatic", + "idealistic": "Idealistic" + }, + "healthview": { + "title": "Panglawas", + "age": "Edad", + "status": "Status sa panglawas", + "measuresTaken": "Mga gihimong lakang", + "measure": "Lakang", + "date": "Petsa", + "cost": "Gasto", + "success": "Kalampusan", + "selectMeasure": "Pilia ang lakang", + "perform": "Buhata", + "choose": "Palihog pagpili", + "nextMeasureAt": "Sunod nga lakang gikan sa", + "measures": { + "pill": "Tablet", + "doctor": "Doktor Visit", + "witch": "Bruha", + "drunkOfLife": "Elixir sa Life", + "barber": "Barbero" + }, + "errors": { + "tooClose": "Ikaw dili makahimo perform tambals so often.", + "generic": "An error occurred." + } + }, + "branchProduction": { + "storageAvailable": "Libre nga storage" + }, + "politics": { + "title": "Politika", + "tabs": { + "current": "Karon nga posisyon", + "powers": "Katungod sa opisina", + "upcoming": "Umaabot nga mga posisyon", + "elections": "Mga eleksiyon" + }, + "bookmarkCandidate": "Timan-i kining kandidatura", + "voteError": "Sayop sa paghatag sa boto", + "voteAllError": "Sayop sa paghatag sa mga boto", + "applyError": "Dili mapadala ang aplikasyon.", + "benefits": { + "daily_salary": "Adlaw-adlaw nga suhol (usa ra kada adlaw): {amount}", + "tax_exemption": "Wa’y buhis: {regions}", + "tax_exemption_all": "Wa’y buhis: tanang lebel sa rehiyon", + "reputation_periodic": "+{gain} reputasyon matag {days} ka adlaw (benepisyo sa opisina)", + "appoint_politicians": "Katungod sa pagtudlo: {offices}", + "set_regional_tax": "Maka-set sa mga rate sa buhis ({scope})", + "tax_scope": { + "local": "lokal sa hurisdiksyon", + "shire": "lebel sa shire", + "duchy": "lebel sa duchy", + "national": "tibuok nasud" + }, + "free_lover_slots": "{count} dugang relasyon nga walay bulan nga gasto", + "guard_protection": "Opisyal nga panalipod / escort", + "court_immunity": "Limitado nga immune sa korte sa opisina", + "generic": "Benepisyo ({code})" + }, + "powers": { + "none": "Ang imong mga opisina karon walay dugang katungod (buhis, pagtudlo, libre nga slot).", + "loadError": "Dili makarga ang mga katungod sa opisina.", + "freeLoversTitle": "Mga affair (opisina)", + "freeLoversHint": "Adunay ka {count} ka political nga affair slot nga walay bulan nga gasto (tan-awa Pamilya → Affairs).", + "reputationTitle": "Reputasyon (awtomatiko)", + "reputationLine": "{office}: sunod nga bonus mga {days} ka adlaw (+{gain} reputasyon).", + "taxTitle": "Mga rate sa buhis sa rehiyon", + "taxRange": "Gitugotan: {min}% hangtod {max}%.", + "taxSave": "I-save", + "taxSaved": "Na-save ang rate sa buhis.", + "taxError": "Dili ma-save ang rate sa buhis.", + "appointTitle": "Mga pagtudlo", + "appointSlot": "Bakante nga opisina", + "appointPick": "— pilia ang opisina —", + "appointSearch": "Pangitaa ang mga magdula (ngalan o username)", + "appointSelected": "Gipili: {name}", + "appointSubmit": "Itudlo", + "appointSuccess": "Natuman ang pagtudlo.", + "appointError": "Napakyas ang pagtudlo." + }, + "regionLevels": { + "city": "Siyudad", + "county": "County", + "shire": "Shire", + "markgrave": "Margravate", + "duchy": "Duchy", + "country": "Nasud" + }, + "current": { + "benefit": "Benepisyo", + "benefit_all": "Tanang rehiyon", + "holder": "Tag-iya", + "none": "Walay karon nga posisyon.", + "termEnds": "Matapos sa", + "office": "Opisina", + "region": "Rehiyon", + "income": "Kita" + }, + "open": { + "office": "Opisina", + "region": "Rehiyon", + "date": "Petsa", + "candidacy": "Candidacy", + "candidacyWithAge": "Candidacy (from age 16)", + "none": "No open positions.", + "apply": "Aplikar para sa selected positions", + "minAgeHint": "Candidacy only possible gikan sa age 16.", + "ageRequirement": "All politikal opisinas require candidates ngadto sa be sa least 16 years old." + }, + "too_young": "Your character too young. Applications only possible gikan sa age 16.", + "upcoming": { + "office": "Opisina", + "region": "Rehiyon", + "postDate": "Petsa", + "none": "No upcoming positions." + }, + "elections": { + "office": "Opisina", + "region": "Rehiyon", + "date": "Petsa", + "posts": "Posts ngadto sa Fill", + "none": "No elections available.", + "choose": "Mga kandidato", + "vote": "Boto", + "voteAll": "Boto All", + "candidates": "Mga kandidato", + "action": "Aksyon" + }, + "offices": { + "chancellor": "Chancellor", + "minister": "Ministro", + "ministry-helper": "Ministry Helper", + "governor": "Gobernador", + "super-state-administrator": "Super State Administrator", + "state-administrator": "State Administrator", + "consultant": "Consultant", + "ruler-consultant": "Ruler's Consultant", + "territorial-council-speaker": "Territorial Council Speaker", + "territorial-council": "Territorial Council", + "hangman": "Hangman", + "treasurer": "Tesorero", + "sheriff": "Sheriff", + "taxman": "Buhis Collector", + "bailif": "Bailiff", + "judge": "Hukom", + "village-major": "Village Major", + "master-builder": "Master Tukoraer", + "mayor": "Alkalde", + "town-clerk": "Town Clerk", + "beadle": "Beadle", + "council": "Council Member", + "councillor": "Councillor", + "assessor": "Assessor" + } + }, + "family": { + "title": "Pamilya", + "heroIntro": "Mga relasyon, mga anak ug pag-uswag — gihikay pinaagi sa seksyon sa ubos.", + "summary": { + "partnerChip": "Kapikas", + "childrenChip": "Mga anak", + "loversChip": "Mga affair", + "proposalsAvailable": "Adunay proposal", + "noPartner": "Walay kapikas" + }, + "tabs": { + "partner": "Kapikas ug kasal", + "children": "Mga anak", + "lovers": "Mga affair" + }, + "lovers": { + "title": "Mga minyo’g gawas ug mga paborito", + "none": "Walay mga affair karon.", + "age": "Edad", + "affection": "Pagmahal", + "visibility": "Klaro ba", + "discretion": "Diskreto", + "maintenance": "Suporta bulanan", + "monthlyCost": "Gasto kada bulan", + "politicalFreeSlotsHint": "Ang mga politikal nga opisina naghatag og {count} ka affair slot nga walay bulan nga suporta (ang barato nga relasyon una).", + "politicalFreeMaintenance": "Opisina (libre)", + "statusFit": "Angay sa kahimtang", + "acknowledged": "Giila", + "underfunded": "{count} ka bulan kulang ang suporta", + "role": { + "secret_affair": "Tago nga relasyon", + "lover": "Kasintahan", + "mistress_or_favorite": "Mistress o paborito" + }, + "risk": { + "low": "Ubos nga risgo", + "medium": "Tunga-tunga nga risgo", + "high": "Taas nga risgo" + }, + "actions": { + "start": "Sugdi ang affair", + "startSuccess": "Nagsugod na ang bag-ong affair.", + "startError": "Dili masugdan ang affair.", + "maintenanceLow": "Suporta 25", + "maintenanceMedium": "Suporta 50", + "maintenanceHigh": "Suporta 75", + "maintenanceSuccess": "Na-update ang suporta.", + "maintenanceError": "Dili ma-update ang suporta.", + "acknowledge": "Iila", + "acknowledgeSuccess": "Giila na ang relasyon.", + "acknowledgeError": "Dili ma-ila ang relasyon.", + "end": "Hunongon", + "endConfirm": "Hunongon ba gyud kini nga relasyon?", + "endSuccess": "Nahunong na ang relasyon.", + "endError": "Dili mahunong ang relasyon." + }, + "candidates": { + "title": "Posible nga mga affair", + "roleLabel": "Porma sa relasyon", + "none": "Walay angay nga bag-ong affair karon." + } + }, + "tabsAria": "Family sections", + "debtorsPrison": { + "familyWarning": "Ongoing debt delinquency puts strain sa kasal, balayhold ug uyabs.", + "familyImpact": "Sa utang' bilanggoan damages kasal, balayhold peace ug ang stability sa uyabs." + }, + "pregnancy": { + "banner": "Ikaw expecting usa ka bata.", + "dueHint": "Expected due date" + }, + "children": { + "title": "Bataren", + "name": "Ngalan", + "age": "Edad", + "gender": "Sekso", + "heir": "Heir", + "isHeir": "Heir", + "notHeir": "Not Heir", + "setAsHeir": "Set as Heir", + "heirSetSuccess": "Ang bata naay successfully set as heir.", + "heirSetError": "Sayop setting heir.", + "actions": "Aksyons", + "none": "No bataren available.", + "detailButton": "Show Details", + "addChild": "Add Bata", + "baptism": "Baptize", + "notBaptized": "Not yet baptized", + "baptismNotice": "This bata naay dili baptized yet ug therefore naay no name.", + "legitimacy": { + "legitimate": "Legitimate", + "acknowledged_bastard": "Ackahibalod illegitimate", + "hidden_bastard": "Illegitimate" + }, + "otherParent": "Other parent", + "otherParentUnknown": "Unknown", + "birthContextLabel": "Origin", + "birthContextShort": { + "marriage": "Kasal", + "lover": "Uyab" + }, + "birthContextLong": { + "marriage": "From kasal", + "lover": "From usa ka uyab" + }, + "details": { + "title": "Bata Details" + } + }, + "taxes": { + "title": "Buhises", + "loading": "Nagkarga buhis data...", + "total": "Tanan buhis", + "table": { + "region": "Rehiyon", + "taxPercent": "Buhis %" + } + }, + "spouse": { + "traitsToggle": "Character traits", + "marriageSatisfaction": "Kasal Satisfaction", + "marriageState": "Kasal State", + "wooing": { + "cancel": "Cancel wooing", + "cancelConfirm": "Do you really want ngadto sa cancel wooing? Progress will be lost.", + "cancelSuccess": "Wooing naay cancelled.", + "cancelError": "Wooing could dili be cancelled.", + "cancelTooSoon": "Ikaw mahimo only cancel wooing after 24 hours." + } + }, + "marriageState": { + "stable": "Stable", + "strained": "Strained", + "crisis": "Crisis" + }, + "householdTension": { + "label": "Balayhold Kakulba", + "score": "Kakulba score", + "reasonsLabel": "Current causes", + "low": "Calm", + "medium": "Uneasy", + "high": "Strained", + "reasons": { + "visibleLover": "Visible uyab", + "noticeableLover": "Noticeable uyab", + "underfundedLover": "Underfunded uyab", + "acknowledgedAffair": "Ackahibalod uyab", + "statusMismatch": "Status mismatch", + "loverChild": "Bata gikan sa usa ka uyab", + "disorder": "Disorder sa ang balay", + "tooFewServants": "Too few sulugoons", + "marriageCrisis": "Kasal crisis" + } + }, + "marriageActions": { + "title": "Support ang kasal", + "spendTime": "Spend time together", + "giftSmall": "Small regalo", + "giftDecent": "Decent regalo", + "giftLavish": "Lavish regalo", + "reconcile": "Reconcile dispute", + "spendTimeSuccess": "Ang time together naay stabilized ang kasal.", + "giftSuccess": "Ang regalo naay improved ang kasal.", + "reconcileSuccess": "Ang dispute naay eased para sa now.", + "actionError": "Ang action could dili be completed." + }, + "notifications": { + "scandal": "A family scandal shaking imong balay.", + "loverBirth": "A bata naay born gikan sa usa ka uyab." + }, + "sendgift": { + "error": { + "nogiftselected": "Please select usa ka regalo.", + "generic": "An unknown error occurred.", + "tooOften": "Ikaw can't send regalos that often.", + "insufficientFunds": "Ikaw do dili naay enough money." + }, + "success": "Ang regalo naay given.", + "nextGiftAt": "Next regalo from" + } + }, + "church": { + "title": "Simbahan", + "tabs": { + "baptism": "Bunyag", + "current": "Karon nga mga posisyon", + "available": "Available nga mga posisyon", + "applications": "Mga aplikasyon" + }, + "summary": { + "highestCurrentOffice": "Highest current opisina", + "availableApplications": "Possible applications", + "supervisedApplications": "Applications ngadto sa decide", + "guidance": "Simbahan opisinas usually progress step by step. Applications normally decided by ang next higher opisina; if no player holds it, usa ka NPC may later decide.", + "none": "No simbahan opisina yet" + }, + "current": { + "office": "Opisina", + "region": "Rehiyon", + "holder": "Holder", + "supervisor": "Supervisor", + "none": "No current positions available." + }, + "available": { + "office": "Opisina", + "region": "Rehiyon", + "supervisor": "Supervisor", + "decision": "Decision by", + "decisionType": { + "entry": "Direct entry", + "player": "Player", + "npc": "NPC", + "interim": "Interim" + }, + "seats": "Available Seats", + "action": "Aksyon", + "apply": "Aplikar", + "applySuccess": "Application submitted successfully.", + "applyError": "Sayop submitting application.", + "errors": { + "characterNotFound": "Your character could dili be found.", + "officeTypeNotFound": "Ang simbahan opisina could dili be found.", + "churchCareerTooLow": "Your previous simbahan career dili yet sufficient para sa this opisina.", + "noAvailableSeats": "There currently no free seats para sa this simbahan opisina.", + "applicationAlreadyExists": "There already usa ka open application para sa this simbahan opisina sa this rehiyon." + }, + "none": "No available positions." + }, + "applications": { + "office": "Opisina", + "region": "Rehiyon", + "applicant": "Applicant", + "date": "Petsa", + "action": "Aksyon", + "approve": "Aprub", + "reject": "Balibari", + "approveSuccess": "Application approved.", + "rejectSuccess": "Application rejected.", + "decideError": "Sayop making decision.", + "none": "No applications available." + }, + "offices": { + "lay-preacher": "Lay Preacher", + "village-priest": "Village Priest", + "parish-priest": "Parish Priest", + "dean": "Dean", + "archdeacon": "Archdeacon", + "bishop": "Bishop", + "archbishop": "Archbishop", + "cardinal": "Cardinal", + "pope": "Pope" + }, + "baptism": { + "title": "Baptism", + "table": { + "name": "First Ngalan", + "gender": "Sekso", + "age": "Edad", + "baptise": "Baptize (50)", + "newName": "Suggest Ngalan" + }, + "gender": { + "male": "Boy", + "female": "Girl" + }, + "success": "Ang bata naay baptized.", + "error": "Ang bata could dili be baptized." + } + }, + "bank": { + "title": "Bangko", + "account": { + "title": "Account", + "balance": "Balanse", + "totalDebt": "Tibuok utang", + "maxCredit": "Pinakataas nga credit", + "availableCredit": "Available nga credit" + }, + "credits": { + "title": "Mga credit", + "none": "Wala kay mga credit karon.", + "amount": "Kantidad", + "remaining": "Nabilin", + "interestRate": "Interest rate", + "table": { + "name": "Ngalan", + "amount": "Kantidad", + "reason": "Reason", + "date": "Petsa" + }, + "payoff": { + "title": "Take usa ka new credit", + "height": "Kredito amount", + "remaining": "Remaining possible credit amount", + "fee": "Kredito interest", + "feeHeight": "Installment (10 payments)", + "total": "Tanan", + "confirm": "Take credit" + } + }, + "debtorsPrison": { + "titleWarning": "Kredito delinquency", + "titlePrison": "Sa utang' bilanggoan", + "descriptionWarning": "Your credits overdue. If you continue ngadto sa default, forced tambals will follow.", + "descriptionPrison": "Ikaw sa debtors' bilanggoan. New credits blocked ug imong assets will be liquidated step by step.", + "daysOverdue": "Days overdue", + "creditworthiness": "Kreditoworthiness", + "nextForcedAction": "Next forced action", + "creditBlocked": "Ikaw dili makahimo take new credits while imbilanggoaned para sa debt.", + "creditError": "Ang credit could dili be taken.", + "actions": { + "reminder": "First reminder", + "final_warning": "Final warning", + "debtors_prison": "Commitment ngadto sa debtors' bilanggoan", + "asset_seizure": "Asset seizure" + } + } + }, + "reputation": { + "title": "Reputasyon", + "overview": { + "title": "Overview", + "current": "Karon nga reputasyon" + }, + "actions": { + "title": "Mga aksyon sa reputasyon", + "description": "Makabuhat ka og lainlaing aksyon aron mapauswag ang imong reputasyon.", + "none": "Walay available nga aksyon sa reputasyon.", + "action": "Aksyon", + "cost": "Gasto", + "gain": "Nadugang", + "timesUsed": "Gigamit", + "execute": "Buhata", + "running": "Running...", + "dailyLimit": "Daily limit: {remaining} sa {cap} actions remaining", + "cooldown": "Cooldown: {minutes} minutes remaining", + "type": { + "soup_kitchen": "Comedor social", + "library_donation": "Donasyon sa library", + "scholarships": "Mga scholarship", + "church_hospice": "Simbahan Hospice", + "school_funding": "School Funding", + "orphanage_build": "Tukora Orphanage", + "bridge_build": "Tukora Bridge", + "hospital_donation": "Hospital Donasyon", + "patronage": "Patronage", + "statue_build": "Tukora Statue", + "well_build": "Tukora Well" + } + }, + "party": { + "title": "Mga party", + "totalCost": "Tibuok gasto", + "order": "Umara og party", + "inProgress": "Mga party nga giandam", + "completed": "Nahuman nga mga party", + "newpartyview": { + "open": "Create New Party", + "close": "Hide New Party", + "type": "Party Type" + }, + "music": { + "label": "Musika", + "none": "No Musika", + "bard": "A Bard", + "villageBand": "A Village Band", + "chamberOrchestra": "A Chamber Orchestra", + "symphonyOrchestra": "A Symphony Orchestra", + "symphonyOrchestraWithChorusAndSolists": "A Symphony Orchestra uban sa Chorus ug Soloists" + }, + "banquette": { + "label": "Pagkaon", + "bread": "Pan", + "roastWithBeer": "Roast uban sa Beer", + "poultryWithVegetablesAndWine": "Poultry uban sa Vegetables ug Wine", + "extensiveBuffet": "Festive Meal" + }, + "servants": { + "label": "One sulugoon per ", + "perPersons": " persons" + }, + "esteemedInvites": { + "label": "Invited Estates" + }, + "type": "Party Type", + "cost": "Kantidad", + "date": "Petsa" + } + }, + "underground": { + "title": "Underground", + "tabs": { + "activities": "Mga kalihokan", + "attacks": "Mga pag-atake" + }, + "activities": { + "none": "Walay available nga kalihokan.", + "create": "Paghimo og bag-ong kalihokan", + "type": "Type sa kalihokan", + "victim": "Target nga tawo", + "cost": "Gasto", + "status": "Status", + "additionalInfo": "Additional information", + "blackmailAmount": "Blackmail amount", + "discoveries": "Discoveries", + "visibilityDelta": "Visibility", + "reputationDelta": "Dungog", + "victimPlaceholder": "Enter username", + "sabotageTarget": "Sabotage target", + "corruptGoal": "Corruption goal", + "affairGoal": "Investigation goal", + "raidRegion": "Raid rehiyon", + "raidRegionPlaceholder": "Select rehiyon", + "bandSize": "Band size", + "raidSummary": "Gang ({bandSize}) sa {rehiyon}", + "attempts": "Attempts", + "successes": "Malampusones", + "lastOutcome": "Last outcome", + "raidResultTitle": "Latest raid", + "lastTargetTransport": "Latest target transport", + "loot": "Bilin" + }, + "attacks": { + "target": "Tig-atake", + "date": "Petsa", + "success": "Kalampusan", + "none": "Walay natala nga mga pag-atake." + }, + "types": { + "spyin": "Espiya", + "assassin": "Assassination", + "sabotage": "Sabotage", + "corrupt_politician": "Corruption", + "rob": "Kawat", + "investigate_affair": "Investigate uyab", + "raid_transport": "Raid transports" + }, + "targets": { + "house": "Balay", + "storage": "Tipigan" + }, + "goals": { + "elect": "Appointment", + "taxIncrease": "Raise buhises", + "taxDecrease": "Lower buhises", + "expose": "Expose", + "blackmail": "Blackmail" + }, + "status": { + "pending": "Naghuwat", + "resolved": "Nasulbad", + "failed": "Napakyas" + }, + "raidOutcomes": { + "repelled": "Repelled", + "partial_success": "Partial success", + "major_success": "Major success" + } } - }, - "random_event": { - "windfall": { - "title": "Kalit nga swerte", - "description": "Nakakita ka og nakalimtang pitaka sa dalan. Nadawat nimo ang {amount}." - }, - "theft": { - "title": "Kawat", - "description": "Adunay kawatan nga nagkuha sa bahin sa imong kuwarta. Kawala: {amount}." - }, - "warehouse_fire": { - "title": "Sunog sa bodega", - "description": "Ang sunog nakadaot sa bahin sa imong bodega.{damagePercent}{destructionPercent}" - }, - "character_illness": { - "title": "Sakit", - "description": "Nagsakit si {characterName} ug nawad-an og {healthChange} health." - }, - "character_recovery": { - "title": "Pagkamaayo", - "description": "Naayo si {characterName} gikan sa sakit ug nabawi ang {healthChange} health." - }, - "character_accident": { - "title": "Aksidente", - "description": "Ang grabe nga aksidente nakapasakit pag-ayo kang {characterName}. Health: {healthChange}." - }, - "sudden_infant_death": { - "title": "Kalit nga pagkamatay sa masuso", - "description": "Kalit nga namatay si {characterName}." - }, - "regional_storm": { - "title": "Bagyo sa rehiyon", - "description": "Grabe nga bagyo ang miigo sa rehiyon nga {regionName}." - }, - "regional_festival": { - "title": "Pista sa rehiyon", - "description": "Adunay dakong pista sa rehiyon nga {regionName}." - }, - "regional_epidemic": { - "title": "Epidemya", - "description": "Naigo sa epidemya ang rehiyon nga {regionName}." - }, - "earthquake": { - "title": "Linog", - "description": "Naigo sa linog ang rehiyon nga {regionName}." - } - } - }, - "statusbar": { - "age": "Edad", - "wealth": "Kadato", - "health": "Panglawas", - "events": "Mga panghitabo", - "relationship": "Relasyon", - "children": "Mga anak", - "children_unbaptised": "Mga anak nga wala pa mabunyagi" - }, - "overview": { - "title": "Falukant - Overview", - "heroIntro": "Ang imong kahimtang sa ekonomiya, pamilya ug kabtangan sa usa ka mubo ug klarong overview.", - "heirSelection": { - "title": "Pagpili og manununod", - "description": "Dili na magamit ang imong daang karakter. Pagpili og manununod gikan sa lista aron magpadayon sa duwa.", - "loading": "Nag-load sa posibleng mga manununod…", - "noHeirs": "Walay available nga mga manununod.", - "select": "Pilia isip play character", - "error": "Sayop sa pagpili sa manununod." - }, - "metadata": { - "title": "Personal", - "name": "Ngalan", - "money": "Kadato", - "age": "Edad", - "years": "Tuig", - "days": "Adlaw", - "mainbranch": "Pulong-balay nga siyudad", - "nobleTitle": "Titulo", - "certificate": "Sertipiko" - }, - "certificate": { - "title": "Progreso sa sertipiko", - "description": "Nagpakita sa imong karon nga level ug sa mga kinahanglanon para sa sunod nga promotion.", - "current": "Karon", - "next": "Sunod nga level", - "levelMatrix": "Mga produkto per certificate level", - "levelLabel": "Level {level}", - "score": "Puntos", - "scoreGate": "Kinahanglan nga puntos para sa sunod nga level", - "ready": "Andam na para sa sunod nga promotion", - "notReady": "Wala pa maabot ang mga kinahanglanon", - "state": { - "ready": "Pwede na ang promotion sumala sa daemon", - "minimumsMetScoreBlocked": "Naabot na ang minimum, pero gipugngan pa sa puntos", - "scoreMetMinimumsMissing": "Sakto na ang puntos, pero kulang pa ang minimum nga kinahanglanon", - "notReady": "Dili pa andam para sa promotion" - }, - "hint": { - "ready": "Para sa level {next}, naabot na ang minimum nga mga kinahanglanon ug ang score threshold nga {threshold}.", - "minimumsMetScoreBlocked": "Naabot na ang makita nga minimum nga mga kinahanglanon para sa level {next}, pero motugot lang ang daemon sa promotion kung maabot sa weighted score ang threshold nga {threshold}. Sa pagkakaron, kutob ra sa level {target} ang score.", - "scoreMetMinimumsMissing": "Ang weighted score igo na unta para sa level {next}, pero naa pay kulang nga minimum nga kinahanglanon.", - "notReady": "Para sa level {next}, kinahanglan maabot ang minimum nga mga kinahanglanon ug ang score threshold nga {threshold}." - }, - "factors": "Karon nga mga bili", - "requirements": "Mga kinahanglanon sa sunod nga level" - }, - "summary": { - "certificateHint": "Mao kini ang nagbuot kung unsang mga kategoriya sa produkto ang pwede nimong himuon karon.", - "branches": "Mga branch", - "branchesHint": "Direktang access sa imong labing importante nga mga lokasyon sa negosyo.", - "productions": "Aktibong mga produksyon", - "productionsHint": "Mga produksyon nga nagdagan ug hapit nang mahuman o manginahanglan og pagtan-aw.", - "stock": "Mga posisyon sa stock", - "stockHint": "Mubo nga tan-aw sa mga baligya ug stock sa tanang rehiyon.", - "open": "Ablihi" - } - }, - "health": { - "amazing": "Maayo kaayo", - "good": "Maayo", - "normal": "Normal", - "bad": "Dili maayo", - "very_bad": "Daotan kaayo" - }, - "moneyHistory": { - "title": "Kasaysayan sa kuwarta", - "filter": "Filter", - "search": "I-apply ang filter", - "activity": "Kalihokan", - "moneyBefore": "Kuwarta sa wala pa ang transaksyon", - "moneyAfter": "Kuwarta human sa transaksyon", - "changeValue": "Kausaban sa bili", - "time": "Oras", - "prev": "Nangagi", - "next": "Sunod", - "graph": { - "open": "Ipakita ang graph", - "title": "Kuwarta sa paglabay sa panahon", - "close": "Isira", - "loading": "Nag-load sa history...", - "noData": "Walay entry sa napiling panahon.", - "yesterday": "Kagahapon", - "range": { - "label": "Sakop", - "today": "Karon", - "24h": "Kataposang 24 ka oras", - "week": "Kataposang semana", - "month": "Kataposang bulan", - "year": "Kataposang tuig", - "all": "Tibuok history" - } - }, - "activities": { - "Product sale": "Pagbaligya sa produkto", - "Production cost": "Gasto sa produksyon", - "Sell all products": "Ibaligya ang tanang produkto", - "sell products": "Ibaligya ang mga produkto", - "director starts production": "Nagsugod ang direktor og produksyon", - "director payed out": "Nabayran ang sweldo sa direktor", - "create_branch": "Nahimo ang branch", - "buy_vehicles": "Napamalit ang transport vehicles", - "build_vehicles": "Nabuhat ang transport vehicles", - "transport": "Transport", - "Marriage cost": "Gasto sa kasal", - "marriage_gift": "Regalo sa asawa/bana", - "Gift cost": "Gasto sa regalo", - "lover maintenance": "Maintenance sa karelasyon", - "servants_monthly": "Nabayran ang mga sulugoon", - "servants_hired": "Nakuha ang mga sulugoon", - "household_order": "Gi-order ang household", - "housebuy": "Pagpalit og balay", - "Baptism": "Bunyag", - "credit taken": "Nakuhaan og credit", - "new nobility title": "Bag-ong titulo sa kadungganan", - "partyOrder": "Gi-order ang party", - "renovation_all": "Kompleto nga gi-renovate ang balay" - } - }, - "house": { - "title": "Balay", - "debtorsPrison": { - "houseWarning": "Samtang nagkadako ang kalangan sa utang, nagkataas ang risgo sa pagsakmit ug pinugos nga pagkawala sa balay.", - "houseRisk": "Ang imong balay apil na karon sa posibleng pinugos nga liquidation." - }, - "statusreport": "Kondisyon sa balay", - "element": "Elemento", - "state": "Kondisyon", - "buyablehouses": "Pagpalit og balay", - "buy": "Palita", - "price": "Presyo sa pagpalit", - "worth": "Nabiling bili", - "sell": "Ibaligya", - "sellConfirm": "Tinuod ba nga gusto nimong ibaligya ang imong balay?", - "sellSuccess": "Nabaligya na ang balay.", - "sellError": "Dili mabaligya ang balay.", - "buySuccess": "Napamalit na ang balay.", - "buyError": "Dili mapalit ang balay.", - "renovate": "Renovate", - "renovateAll": "I-renovate tanan", - "servants": { - "title": "Mga sulugoon", - "description": "Dumala sa household staff, kahapsay ug balik-balik nga gasto sa imong panimalay.", - "count": "Ihap sa mga sulugoon", - "expectedRange": "Gipaabot nga sakop", - "monthlyCost": "Binuwan nga gasto", - "quality": "Kalidad", - "householdOrder": "Household order", - "payLevel": "Antas sa bayad" - }, - "status": { - "roofCondition": "Atop", - "wallCondition": "Mga bungbong", - "floorCondition": "Salog", - "windowCondition": "Mga bintana" - }, - "type": { - "backyard_room": "Kuwarto sa likod-balay", - "wooden_house": "Kahoyng balay", - "straw_hut": "Payag nga kugon", - "family_house": "Balay-pamilya", - "townhouse": "Townhouse" - } - }, - "newdirector": { - "title": "Bag-ong direktor", - "age": "Edad", - "salary": "Sweldo", - "skills": "Kahanas", - "product": "Produkto", - "knowledge": "Kahibalo", - "hire": "Kuhon", - "noProposals": "Walay available nga mga kandidato alang sa direktor." - }, - "branch": { - "title": "Branch", - "heroEyebrow": "Branch", - "heroIntro": "Produksyon, storage, pagbaligya ug transport sa usa ka control area nga naa sa kalibotan sa duwa.", - "debtorsPrison": { - "branchLocked": "Samtang naa sa debtors' prison, gi-block ang bag-ong mga lakang pang-ekonomiya.", - "branchRisk": "Ang imong kalangan sa utang nagbutang sa imong mga branch, sakyanan ug gitigom nga mga butang sa peligro.", - "selectionBlocked": "Gi-block ang bag-ong pagpamuhunan samtang napriso tungod sa utang." - }, - "currentCertificate": "Karon nga sertipiko", - "certificate": { - "title": "Mga product unlock", - "description": "Nagpakita kung unsang mga produkto ang ma-unlock sa imong karon nga sertipiko ug unsa ang madugang sa sunod nga level.", - "currentUnlocks": "Karon nga na-unlock", - "nextUnlocks": "Bag-o sa level {level}" - }, - "selection": { - "title": "Pagpili sa branch", - "selected": "Napiling branch", - "placeholder": "Wala pay napiling branch", - "selectedcity": "Napiling siyudad", - "weather": "Karon nga panahon" - }, - "director": { - "income": "Kita", - "incomeUpdated": "Malampuson nga na-update ang sweldo.", - "starttransport": "Makapagsugod og transport" - }, - "sale": { - "runningGuards": "Mga guwardiya" - }, - "storage": { - "buyPartialError": "Sayop sa pagpalit sa usa ka bahin sa kapasidad sa storage.", - "sellError": "Sayop sa pagbaligya sa kapasidad sa storage." - }, - "production": { - "title": "Produksyon", - "info": "Mga detalye bahin sa produksyon sa branch.", - "selectProduct": "Pilia ang produkto", - "quantity": "Kadaghanon", - "storageAvailable": "Libre nga storage", - "cost": "Gasto", - "duration": "Kadugayon", - "revenue": "Kita", - "start": "Sugdi ang produksyon", - "success": "Malampuson nga nasugdan ang produksyon!", - "error": "Sayop sa pagsugod sa produksyon.", - "minutes": "Mga minuto", - "ending": "Matapos sa:", - "time": "Oras", - "current": "Nagpadagan nga mga produksyon", - "product": "Produkto", - "remainingTime": "Nabiling oras (segundo)", - "status": "Status", - "sleep": "Gi-pause", - "active": "Aktibo", - "noProductions": "Walay nagdagan nga produksyon." - }, - "columns": { - "city": "Siyudad", - "type": "Type" - }, - "types": { - "production": "Produksyon", - "store": "Pagbaligya", - "fullstack": "Produksyon uban sa pagbaligya" - }, - "revenue": { - "title": "Kita sa produkto", - "product": "Produkto", - "absolute": "Kita (absoluto)", - "perMinute": "Kita kada minuto", - "expand": "Ipakita ang kita", - "collapse": "Tagoa ang kita", - "knowledge": "Kahibalo sa produkto", - "profitAbsolute": "Tibuok ganansya", - "profitPerMinute": "Ganansya kada minuto", - "betterPrices": "Mas maayong presyo sa ubang lugar" - }, - "vehicles": { - "cargo_cart": "Cargo cart", - "ox_cart": "Kariton nga baka", - "small_carriage": "Gamayang karwahe", - "large_carriage": "Dako nga karwahe", - "four_horse_carriage": "Upat-ka-kabayo nga karwahe", - "raft": "Balsa", - "sailing_ship": "Barko nga layag" - }, - "transport": { - "guardCount": "Mga guwardiya", - "guardHint": "Dugang nga gasto para sa mga guwardiya: {cost}" - }, - "tabs": { - "director": "Direktor", - "inventory": "Inventory", - "production": "Produksyon", - "storage": "Storage", - "transport": "Transport", - "taxes": "Mga buhis" - } - }, - "nobility": { - "highestPoliticalOffice": "Pinakataas nga politikal nga opisina", - "highestOfficeAny": "Pinakataas nga opisina sa kinatibuk-an", - "none": "wala", - "cooldown": "Makapaningkamot ka pag-usab sa {date}." - }, - "mood": { - "happy": "Malipayon", - "sad": "Masulub-on", - "angry": "Masuko", - "calm": "Kalma", - "nervous": "Nerbiyos", - "excited": "Excited", - "bored": "Gikapoy", - "fearful": "Nahadlok", - "confident": "Masaligon", - "curious": "Interesado" - }, - "character": { - "brave": "Maisog", - "kind": "Maayo", - "greedy": "Hakog", - "wise": "Maalamon", - "loyal": "Matinumanon", - "cunning": "Tig-ihap", - "generous": "Mapinanggaon", - "arrogant": "Mapahitas-on", - "honest": "Matinuoron", - "ambitious": "Ambisyoso" - }, - "healthview": { - "title": "Panglawas", - "age": "Edad", - "status": "Status sa panglawas", - "measuresTaken": "Mga gihimong lakang", - "measure": "Lakang", - "date": "Petsa", - "cost": "Gasto", - "success": "Kalampusan", - "selectMeasure": "Pilia ang lakang", - "perform": "Buhata", - "choose": "Palihog pagpili", - "nextMeasureAt": "Sunod nga lakang gikan sa" - }, - "branchProduction": { - "storageAvailable": "Libre nga storage" - }, - "politics": { - "title": "Politika", - "tabs": { - "current": "Karon nga posisyon", - "powers": "Katungod sa opisina", - "upcoming": "Umaabot nga mga posisyon", - "elections": "Mga eleksiyon" - }, - "bookmarkCandidate": "Timan-i kining kandidatura", - "voteError": "Sayop sa paghatag sa boto", - "voteAllError": "Sayop sa paghatag sa mga boto", - "applyError": "Dili mapadala ang aplikasyon.", - "benefits": { - "daily_salary": "Adlaw-adlaw nga suhol (usa ra kada adlaw): {amount}", - "tax_exemption": "Wa’y buhis: {regions}", - "tax_exemption_all": "Wa’y buhis: tanang lebel sa rehiyon", - "reputation_periodic": "+{gain} reputasyon matag {days} ka adlaw (benepisyo sa opisina)", - "appoint_politicians": "Katungod sa pagtudlo: {offices}", - "set_regional_tax": "Maka-set sa mga rate sa buhis ({scope})", - "tax_scope": { - "local": "lokal sa hurisdiksyon", - "shire": "lebel sa shire", - "duchy": "lebel sa duchy", - "national": "tibuok nasud" - }, - "free_lover_slots": "{count} dugang relasyon nga walay bulan nga gasto", - "guard_protection": "Opisyal nga panalipod / escort", - "court_immunity": "Limitado nga immune sa korte sa opisina", - "generic": "Benepisyo ({code})" - }, - "powers": { - "none": "Ang imong mga opisina karon walay dugang katungod (buhis, pagtudlo, libre nga slot).", - "loadError": "Dili makarga ang mga katungod sa opisina.", - "freeLoversTitle": "Mga affair (opisina)", - "freeLoversHint": "Adunay ka {count} ka political nga affair slot nga walay bulan nga gasto (tan-awa Pamilya → Affairs).", - "reputationTitle": "Reputasyon (awtomatiko)", - "reputationLine": "{office}: sunod nga bonus mga {days} ka adlaw (+{gain} reputasyon).", - "taxTitle": "Mga rate sa buhis sa rehiyon", - "taxRange": "Gitugotan: {min}% hangtod {max}%.", - "taxSave": "I-save", - "taxSaved": "Na-save ang rate sa buhis.", - "taxError": "Dili ma-save ang rate sa buhis.", - "appointTitle": "Mga pagtudlo", - "appointSlot": "Bakante nga opisina", - "appointPick": "— pilia ang opisina —", - "appointSearch": "Pangitaa ang mga magdula (ngalan o username)", - "appointSelected": "Gipili: {name}", - "appointSubmit": "Itudlo", - "appointSuccess": "Natuman ang pagtudlo.", - "appointError": "Napakyas ang pagtudlo." - }, - "regionLevels": { - "city": "Siyudad", - "county": "County", - "shire": "Shire", - "markgrave": "Margravate", - "duchy": "Duchy", - "country": "Nasud" - }, - "current": { - "benefit": "Benepisyo", - "benefit_all": "Tanang rehiyon", - "holder": "Tag-iya", - "none": "Walay karon nga posisyon.", - "termEnds": "Matapos sa" - } - }, - "family": { - "title": "Pamilya", - "heroIntro": "Mga relasyon, mga anak ug pag-uswag — gihikay pinaagi sa seksyon sa ubos.", - "summary": { - "partnerChip": "Kapikas", - "childrenChip": "Mga anak", - "loversChip": "Mga affair", - "proposalsAvailable": "Adunay proposal", - "noPartner": "Walay kapikas" - }, - "tabs": { - "partner": "Kapikas ug kasal", - "children": "Mga anak", - "lovers": "Mga affair" - }, - "lovers": { - "title": "Mga minyo’g gawas ug mga paborito", - "none": "Walay mga affair karon.", - "age": "Edad", - "affection": "Pagmahal", - "visibility": "Klaro ba", - "discretion": "Diskreto", - "maintenance": "Suporta bulanan", - "monthlyCost": "Gasto kada bulan", - "politicalFreeSlotsHint": "Ang mga politikal nga opisina naghatag og {count} ka affair slot nga walay bulan nga suporta (ang barato nga relasyon una).", - "politicalFreeMaintenance": "Opisina (libre)", - "statusFit": "Angay sa kahimtang", - "acknowledged": "Giila", - "underfunded": "{count} ka bulan kulang ang suporta", - "role": { - "secret_affair": "Tago nga relasyon", - "lover": "Kasintahan", - "mistress_or_favorite": "Mistress o paborito" - }, - "risk": { - "low": "Ubos nga risgo", - "medium": "Tunga-tunga nga risgo", - "high": "Taas nga risgo" - }, - "actions": { - "start": "Sugdi ang affair", - "startSuccess": "Nagsugod na ang bag-ong affair.", - "startError": "Dili masugdan ang affair.", - "maintenanceLow": "Suporta 25", - "maintenanceMedium": "Suporta 50", - "maintenanceHigh": "Suporta 75", - "maintenanceSuccess": "Na-update ang suporta.", - "maintenanceError": "Dili ma-update ang suporta.", - "acknowledge": "Iila", - "acknowledgeSuccess": "Giila na ang relasyon.", - "acknowledgeError": "Dili ma-ila ang relasyon.", - "end": "Hunongon", - "endConfirm": "Hunongon ba gyud kini nga relasyon?", - "endSuccess": "Nahunong na ang relasyon.", - "endError": "Dili mahunong ang relasyon." - }, - "candidates": { - "title": "Posible nga mga affair", - "roleLabel": "Porma sa relasyon", - "none": "Walay angay nga bag-ong affair karon." - } - } - }, - "church": { - "title": "Simbahan", - "tabs": { - "baptism": "Bunyag", - "current": "Karon nga mga posisyon", - "available": "Available nga mga posisyon", - "applications": "Mga aplikasyon" - } - }, - "bank": { - "title": "Bangko", - "account": { - "title": "Account", - "balance": "Balanse", - "totalDebt": "Tibuok utang", - "maxCredit": "Pinakataas nga credit", - "availableCredit": "Available nga credit" - }, - "credits": { - "title": "Mga credit", - "none": "Wala kay mga credit karon.", - "amount": "Kantidad", - "remaining": "Nabilin", - "interestRate": "Interest rate" - } - }, - "reputation": { - "title": "Reputasyon", - "overview": { - "title": "Overview", - "current": "Karon nga reputasyon" - }, - "actions": { - "title": "Mga aksyon sa reputasyon", - "description": "Makabuhat ka og lainlaing aksyon aron mapauswag ang imong reputasyon.", - "none": "Walay available nga aksyon sa reputasyon.", - "action": "Aksyon", - "cost": "Gasto", - "gain": "Nadugang", - "timesUsed": "Gigamit", - "execute": "Buhata" - }, - "party": { - "title": "Mga party", - "totalCost": "Tibuok gasto", - "order": "Umara og party", - "inProgress": "Mga party nga giandam", - "completed": "Nahuman nga mga party" - } - }, - "underground": { - "title": "Underground", - "tabs": { - "activities": "Mga kalihokan", - "attacks": "Mga pag-atake" - }, - "activities": { - "none": "Walay available nga kalihokan.", - "create": "Paghimo og bag-ong kalihokan", - "type": "Type sa kalihokan", - "victim": "Target nga tawo", - "cost": "Gasto", - "status": "Status" - }, - "attacks": { - "target": "Tig-atake", - "date": "Petsa", - "success": "Kalampusan", - "none": "Walay natala nga mga pag-atake." - } } - } } diff --git a/frontend/src/i18n/locales/ceb/general.json b/frontend/src/i18n/locales/ceb/general.json index 7b2e1ab..ea687f0 100644 --- a/frontend/src/i18n/locales/ceb/general.json +++ b/frontend/src/i18n/locales/ceb/general.json @@ -15,7 +15,18 @@ "error-title": "Sayop", "warning-title": "Pasidaan", "info-title": "Impormasyon", + "dialog": { + "contact": { + "email": "Adres sa email", + "name": "Pangalan", + "message": "Imong mensahe kanamo", + "accept": "Ang imong email address temporaryong matipigan sa among sistema. Human masusi ang imong hangyo, matangtang na usab ang email.", + "acceptdatasave": "Mituyo ko sa temporaryong pagtipig sa akong email address.", + "accept2": "Kung wala niini, dili mi makatubag kanimo." + } + }, "general": { + "datetimelong": "dd.MM.yyyy HH:mm:ss", "loading": "Nagkarga...", "back": "Balik", "cancel": "Kanselahon", diff --git a/frontend/src/i18n/locales/ceb/settings.json b/frontend/src/i18n/locales/ceb/settings.json index f1a3b4f..18441cb 100644 --- a/frontend/src/i18n/locales/ceb/settings.json +++ b/frontend/src/i18n/locales/ceb/settings.json @@ -3,16 +3,135 @@ "personal": { "title": "Personal nga datos", "label": { - "language": "Pinulongan" + "language": "Pinulongan", + "birthdate": "Petsa sa pagkatawo", + "gender": "Sekso", + "town": "Lungsod", + "zip": "ZIP", + "eyecolor": "Kolor sa mata", + "haircolor": "Kolor sa buhok", + "hairlength": "Taas sa buhok", + "skincolor": "Kolor sa panit", + "freckles": "Mga batik", + "weight": "Timbang", + "bodyheight": "Gitas-on", + "piercings": "Mga piercing", + "tattoos": "Mga tattoo", + "sexualpreference": "Oryentasyon", + "pubichair": "Buhok sa pribado", + "penislength": "Taas sa penis", + "brasize": "Sukod sa bra", + "willChildren": "Gusto og anak", + "smokes": "Pagpanigarilyo", + "drinks": "Pag-inom og alkohol", + "hasChildren": "Naay mga anak", + "interestedInGender": "Interesado sa" }, "tooltip": { - "language": "Pinulongan" + "language": "Pinulongan", + "birthdate": "Petsa sa pagkatawo", + "gender": "Sekso", + "town": "Lungsod", + "zip": "ZIP", + "eyecolor": "Kolor sa mata", + "haircolor": "Kolor sa buhok", + "hairlength": "Taas sa buhok", + "skincolor": "Kolor sa panit", + "freckles": "Mga batik", + "weight": "Timbang", + "bodyheight": "Gitas-on", + "piercings": "Mga piercing", + "tattoos": "Mga tattoo", + "sexualpreference": "Oryentasyon", + "pubichair": "Buhok sa pribado", + "penislength": "Taas sa penis", + "brasize": "Sukod sa bra" + }, + "gender": { + "male": "Lalaki", + "female": "Babaye", + "transmale": "Trans nga babaye", + "transfemale": "Trans nga lalaki", + "nonbinary": "Dili binaryo" }, "language": { "de": "Aleman", "en": "Iningles", "ceb": "Bisaya", "es": "Espanyol" + }, + "eyecolor": { + "blue": "Asul", + "green": "Berde", + "brown": "Brown", + "black": "Itom", + "grey": "Abohon", + "hazel": "Hazel", + "amber": "Amber", + "red": "Pula", + "other": "Uban" + }, + "haircolor": { + "black": "Itom", + "brown": "Brown", + "blonde": "Blonde", + "red": "Pula", + "grey": "Abohon", + "white": "Puti", + "other": "Uban" + }, + "hairlength": { + "short": "Mubo", + "medium": "Tunga-tunga", + "long": "Taas", + "bald": "Kalbo", + "other": "Uban" + }, + "skincolor": { + "light": "Klaro", + "medium": "Tunga-tunga", + "dark": "Itom", + "other": "Uban" + }, + "freckles": { + "much": "Daghan", + "medium": "Tunga-tunga", + "less": "Ubos", + "none": "Wala" + }, + "sexualpreference": { + "straight": "Heterosexual", + "gay": "Homosexual", + "bi": "Bisexual", + "asexual": "Asexual", + "pan": "Pansexual" + }, + "pubichair": { + "none": "Wala", + "short": "Mubo", + "medium": "Tunga-tunga", + "long": "Taas", + "hairy": "Natural", + "waxed": "Wax", + "landingstrip": "Landing strip", + "bikinizone": "Zona sa bikini lamang", + "other": "Uban" + }, + "interestedInGender": { + "male": "Mga lalaki", + "female": "Mga babaye" + }, + "smokes": { + "often": "Kanunay", + "socially": "Kung kauban", + "daily": "Adlaw-adlaw", + "never": "Dili gayud" + }, + "drinks": { + "often": "Kanunay", + "socially": "Kung kauban", + "daily": "Adlaw-adlaw", + "never": "Dili gayud" } }, "view": { @@ -25,11 +144,12 @@ "title": "Account", "heroEyebrow": "Mga setting", "heroIntro": "Atimana ang ngalan sa user, email, password ug visibility sa usa ka lugar.", - "language": "Pinulongan", "username": "Ngalan sa user", "email": "E-mail address", "newpassword": "Password", "newpasswordretype": "Usba ang password", + "deleteAccount": "Tangtanga ang account", + "language": "Pinulongan", "showinsearch": "Ipakita sa pagpangita sa user", "changeaction": "Usba ang datos sa user", "oldpassword": "Karaan nga password (gikinahanglan)", @@ -41,19 +161,88 @@ "feedback": { "saved": "Malampuson nga nasave ang account settings.", "saveError": "Adunay sayop sa pagsave sa account settings." + }, + "adultAccessTitle": "Erotik nga lugar", + "adultAccessIntro": "Ang erotik nga lugar para lamang sa hamtong nga mga tiggamit ug gikinahanglan usab og pag-aprub sa moderator.", + "requestAdultVerification": "Mangayo og pag-abli", + "requestAdultVerificationSuccess": "Napadala na ang hangyo sa pag-abli.", + "requestAdultVerificationError": "Dili mapadala ang hangyo sa pag-abli.", + "adultStatus": { + "ineligible": { + "title": "Dili available", + "body": "Ang erotik nga lugar makita lamang sa hamtong nga mga tiggamit." + }, + "none": { + "title": "Wala pa ma-abli", + "body": "Makita ang lugar, pero naka-lock pa hangtod sa pag-susi sa moderator." + }, + "pending": { + "title": "Naghuwat sa pagsusi", + "body": "Ang imong hangyo naghuwat sa moderation. Naka-lock pa ang lugar hangtod ma-aprub." + }, + "approved": { + "title": "Na-abli na", + "body": "Ang erotik nga lugar na-abli na para sa imong account." + }, + "rejected": { + "title": "Gibalibaran ang pag-abli", + "body": "Ang kataposang hangyo wala ma-aprub. Mahimo kang magpadala og bag-ong hangyo." + } } }, - "flirt": { - "title": "Flirt" + "languageAssistant": { + "eyebrow": "Mga setting", + "title": "Katabang sa pinulongan ug AI", + "intro": "Dinhi makatipig ka og kaugalingong API access (pananglitan OpenAI) nga magamit sa plataporma para sa mga bahin sa kurso sa pinulongan. Ang yabi gisave nga encrypted sa server; kinahanglan nimo og account sa provider.", + "linkSignup": "Paghimo og account sa OpenAI (bag-ong bintana)", + "linkApiKeys": "Pagdumala sa API keys sa OpenAI (bag-ong bintana)", + "enabled": "Tugoti ang paggamit para sa mga bahin sa pinulongan", + "baseUrl": "API base URL (opsyonal)", + "baseUrlPlaceholder": "Walay sulod = default (OpenAI). Para sa Ollama pananglitan http://127.0.0.1:11434/v1", + "model": "Ngalan sa modelo", + "apiKey": "API key", + "apiKeyHint": "Biyai nga walay sulod aron mapadayon ang natipig nga yabi.", + "apiKeyPlaceholderNew": "I-paste ang bag-ong yabi", + "apiKeyPlaceholderHasKey": "Ang natipig nagtapos sa …{last4} — walay sulod = padayon", + "apiKeyPlaceholderClear": "Ma-clear ang tipigan kung mag-save ka nga “tangtanga ang yabi” sa ubos", + "clearKey": "Tangtanga ang natipig nga API key", + "save": "I-save", + "saved": "Nasave na ang mga setting.", + "saveError": "Dili masave.", + "confirmClear": "Tinuod nga tangtangon ang API key?", + "keyStatusStored": "Naa ang API key nga natipig.", + "keyStatusInvalid": "Naa ang natipig nga API key pero dili mabasa. Palihog i-save pag-usab.", + "keyStatusMissing": "Walay natipig nga API key karon." }, "interests": { "title": "Mga interes", "new": "Bag-ong interes", - "add": "Idugang" + "add": "Idugang", + "added": "Ang bag-ong interes gidugang na ug gisusi pa. Dili pa makita sa lista hangtod mahuman.", + "adderror": "Sayop sa pagdugang sa interes.", + "errorsetinterest": "Dili ma-book ang interes para nimo." + }, + "visibility": { + "Invisible": "Ayaw ipakita", + "OnlyFriends": "Mga higala lamang", + "FriendsAndAdults": "Mga higala ug mga hamtong", + "AdultsOnly": "Mga hamtong lamang", + "All": "Ipakita sa tanan" }, "feedback": { "updateError": "Dili masave ang kausaban.", "visibilityUpdateError": "Dili ma-update ang visibility." + }, + "flirt": { + "title": "Flirt" + }, + "immutable": { + "tooltip": "Kini nga field dili mausab. Para sa kausaban, kontaka ang support.", + "supportContact": "Kontaka ang support", + "supportMessage": { + "general": "Hello,\n\ngusto nako mangayo og kausaban sa akong profile nga dili mausab.\n\nPalihog kontaka ko para sa dugang detalye.\n\nSalamat", + "specific": "Hello,\n\ngusto nako mangayo og kausaban niini nga dili mausab nga datos sa profile: {fields}\n\nPalihog kontaka ko para sa dugang detalye.\n\nSalamat" + } } } } diff --git a/frontend/src/i18n/locales/ceb/socialnetwork.json b/frontend/src/i18n/locales/ceb/socialnetwork.json index 82e6e91..c9adc73 100644 --- a/frontend/src/i18n/locales/ceb/socialnetwork.json +++ b/frontend/src/i18n/locales/ceb/socialnetwork.json @@ -1,418 +1,788 @@ { - "socialnetwork": { - "usersearch": { - "kicker": "Pagpangita sa komunidad", - "intro": "Pangitaa ang angay nga mga kontak sa komunidad pinaagi sa ngalan, edad ug sekso.", - "ageSeparator": "hangtod", - "resultsCount": "{count} ka resulta", - "openProfile": "Ablihi ang profile", - "title": "Pagpangita og user", - "username": "Ngalan sa user", - "age_from": "Edad gikan sa", - "age_to": "hangtod", - "gender": "Sekso", - "search_button": "Pangita", - "no_results": "Walay nakit-an nga resulta", - "results_title": "Mga resulta sa pagpangita:", - "result": { - "nick": "Nickname", - "gender": "Gender", - "age": "Edad" - } - }, - "profile": { - "pretitle": "Nag-load sa datos. Palihog hulat...", - "error_title": "Wala makit-i ang user", - "title": "Profile ni ", - "tab": { - "general": "Kinatibuk-an", - "sexuality": "Sekswalidad", - "images": "Galeriya", - "guestbook": "Libro sa bisita" - }, - "values": { - "bool": { - "true": "Oo", - "false": "Dili" + "socialnetwork": { + "usersearch": { + "kicker": "Pagpangita sa komunidad", + "intro": "Pangitaa ang angay nga mga kontak sa komunidad pinaagi sa ngalan, edad ug sekso.", + "ageSeparator": "hangtod", + "resultsCount": "{count} ka resulta", + "openProfile": "Ablihi ang profile", + "title": "Pagpangita og user", + "username": "Ngalan sa user", + "age_from": "Edad gikan sa", + "age_to": "hangtod", + "gender": "Sekso", + "search_button": "Pangita", + "no_results": "Walay nakit-an nga resulta", + "results_title": "Mga resulta sa pagpangita:", + "result": { + "nick": "Tawag (nickname)", + "gender": "Sekso", + "age": "Edad" + } }, - "smokes": { - "never": "Wala gayud", - "socially": "Kung kauban", - "often": "Kanunay", - "daily": "Adlaw-adlaw" + "profile": { + "pretitle": "Nag-load sa datos. Palihog hulat...", + "error_title": "Wala makit-i ang user", + "title": "Profile ni ", + "tab": { + "general": "Kinatibuk-an", + "sexuality": "Sekswalidad", + "images": "Galeriya", + "guestbook": "Libro sa bisita" + }, + "values": { + "bool": { + "true": "Oo", + "false": "Dili" + }, + "smokes": { + "never": "Wala gayud", + "socially": "Kung kauban", + "often": "Kanunay", + "daily": "Adlaw-adlaw" + }, + "drinks": { + "never": "Wala gayud", + "socially": "Kung kauban", + "often": "Kanunay", + "daily": "Adlaw-adlaw" + }, + "interestedInGender": { + "male": "Lalaki", + "female": "Babaye" + }, + "sexualpreference": { + "straight": "Heterosexual", + "gay": "Homosexual", + "bi": "Bisexual", + "pan": "Pansexual", + "asexual": "Asexual" + }, + "gender": { + "male": "Lalaki", + "female": "Babaye", + "transmale": "Trans-Female", + "transfemale": "Trans-Male", + "nonbinary": "Non-binary" + }, + "language": { + "de": "Aleman", + "en": "Iningles", + "ceb": "Bisaya" + }, + "pubichair": { + "none": "Wala", + "short": "Mubo", + "medium": "Tunga-tunga", + "long": "Taas", + "hairy": "Natural", + "waxed": "Wax", + "landingstrip": "Landing strip", + "other": "Uban", + "bikinizone": "Zona sa bikini lamang" + }, + "eyecolor": { + "blue": "Asul", + "green": "Berde", + "brown": "Brown", + "black": "Itom", + "grey": "Abohon", + "hazel": "Hazel", + "amber": "Amber", + "red": "Pula", + "other": "Uban" + }, + "haircolor": { + "black": "Itom", + "brown": "Brown", + "blonde": "Blonde", + "red": "Pula", + "grey": "Abohon", + "white": "Puti", + "other": "Uban" + }, + "hairlength": { + "short": "Mubo", + "medium": "Tunga-tunga", + "long": "Taas", + "bald": "Kalbo", + "other": "Uban" + }, + "skincolor": { + "light": "Klaro", + "medium": "Tunga-tunga", + "dark": "Itom", + "other": "Uban" + }, + "freckles": { + "much": "Daghan", + "medium": "Tunga-tunga", + "less": "Ubos", + "none": "Wala" + } + }, + "guestbook": { + "showInput": "Ipakita ang bag-ong entry", + "hideInput": "Tagoa ang bag-ong entry", + "imageUpload": "Hulagway", + "submit": "Ipadala ang entry", + "noEntries": "Walay entry nga nakit-an", + "entryImageAlt": "Hulagway sa entry sa libro sa bisita" + }, + "interestedInGender": "Interesado sa", + "hasChildren": "Naay mga anak", + "smokes": "Pagpanigarilyo", + "drinks": "Alak", + "willChildren": "Gusto og anak", + "sexualpreference": "Sekswal nga oryentasyon", + "language": "Pinulongan", + "gender": "Sekso", + "birthdate": "Petsa sa pagkatawo", + "age": "Edad", + "town": "Lungsod", + "bodyheight": "Gitas-on", + "weight": "Timbang", + "pubichair": "Buhok sa pribado", + "penislength": "Taas sa penis", + "brasize": "Sukod sa bra", + "piercings": "Mga piercing", + "tattoos": "Mga tattoo", + "eyecolor": "Kolor sa mata", + "haircolor": "Kolor sa buhok", + "hairlength": "Taas sa buhok", + "freckles": "Mga batik", + "skincolor": "Kolor sa panit" }, - "drinks": { - "never": "Wala gayud", - "socially": "Kung kauban", - "often": "Kanunay", - "daily": "Adlaw-adlaw" + "gallery": { + "kicker": "Mga hulagway ug folder", + "intro": "Organisaha ang imong kaugalingong sulod, kontrola ang makita, ug ihan-ay sa mga folder.", + "title": "Galeriya", + "folders": "Mga folder", + "create_folder": "Paghimo og folder", + "upload": { + "title": "I-upload ang hulagway", + "image_title": "Pamagat", + "image_file": "File", + "visibility": "Makita sa", + "upload_button": "I-upload", + "selectvisibility": "Palihog pagpili" + }, + "images": "Mga hulagway", + "visibility": { + "everyone": "Tanan", + "friends": "Mga higala", + "adults": "Mga hamtong", + "friends-and-adults": "Mga higala ug mga hamtong", + "selected-users": "Piniling mga user", + "none": "Wala" + }, + "create_folder_dialog": { + "title": "Paghimo og folder", + "parent_folder": "Pagabuhaton sulod sa", + "folder_title": "Ngalan sa folder", + "visibility": "Makita sa", + "select_visibility": "Palihog pagpili" + }, + "noimages": "Wala pay mga hulagway niining foldera", + "imagedialog": { + "image_title": "Pamagat", + "edit_visibility": "Makita sa", + "save_changes": "I-save ang mga kausaban", + "close": "Isira", + "edit_visibility_placeholder": "Palihog pagpili" + }, + "delete_folder_confirmation_title": "Tangtanga ang folder", + "delete_folder_confirmation_message": "Tinuod ba nga gusto nimong tangtangon ang folder nga '%%folderName%%'?", + "edit_image_dialog": { + "title": "Usba ang datos sa hulagway" + }, + "show_image_dialog": { + "title": "Hulagway" + }, + "imagePreviewAlt": "Preview sa hulagway", + "imageLoadingAlt": "Nag-load ang hulagway" }, - "interestedInGender": { - "male": "Lalaki", - "female": "Babaye" + "guestbook": { + "kicker": "Libro sa bisita", + "intro": "Mga mensahe, feedback ug gagmayng hulagway sa imong network.", + "title": "Libro sa bisita", + "prevPage": "Balik", + "nextPage": "Sunod", + "page": "Panid" }, - "sexualpreference": { - "straight": "Heterosexual", - "gay": "Homosexual", - "bi": "Bisexual", - "pan": "Pansexual", - "asexual": "Asexual" + "diary": { + "kicker": "Personal nga mga entry", + "intro": "Mga hunahuna, nota ug mubo nga update sa usa ka malinawon ug personal nga tan-aw.", + "placeholder": "Isulat dinhi ang imong entry sa talaarawan...", + "title": "Talaarawan", + "noEntries": "Wala ka pay mga entry sa talaarawan.", + "newEntry": "Bag-ong entry sa talaarawan", + "editEntry": "Usba ang entry sa talaarawan", + "save": "I-save", + "update": "I-update", + "cancel": "I-cancel", + "edit": "Usba", + "delete": "Tangtanga", + "confirmDelete": "Tinuod ba nga gusto nimong tangtangon ang entry?", + "prevPage": "Balik", + "nextPage": "Sunod", + "page": "Panid" }, - "gender": { - "male": "Lalaki", - "female": "Babaye", - "transmale": "Trans-Female", - "transfemale": "Trans-Male", - "nonbinary": "Non-binary" + "forum": { + "kicker": "Forum sa komunidad", + "intro": "Mga hilisgutan, diskusyon ug bag-ong post sa usa ka organisado nga lugar.", + "createTitle": "Paghimo og bag-ong hilisgutan", + "createIntro": "Ibutang una ang titulo, dayon isulat ang post ug dayon i-publish dayon.", + "cancelCreation": "Kanselahon", + "creationHint": "Kinahanglan mapun-an ang titulo ug sulod.", + "communityFallback": "Komunidad", + "topicIntro": "Mga diskusyon, tubag ug bag-ong post sa usa ka mas nakapokus nga pagbasa.", + "topicCreated": "Malampuson nga nahimo ang hilisgutan.", + "topicCreateError": "Adunay sayop sa paghimo sa hilisgutan", + "title": "Forum", + "showNewTopic": "Paghimo og bag-ong topic", + "hideNewTopic": "I-cancel ang paghimo", + "noTitles": "Walay topic nga available", + "topic": "Hilisgutan", + "createNewTopic": "Paghimo og hilisgutan", + "createdBy": "Gihimo ni", + "createdAt": "Gihimo sa", + "reactions": "Reaksiyon", + "lastReaction": "Kataposang reaksiyon ni", + "createNewMesssage": "Ipadala ang tubag", + "pagination": { + "first": "Unang panid", + "previous": "Miaging panid", + "next": "Sunod nga panid", + "last": "Kataposang panid", + "page": "Panid <> sa <>" + } }, - "language": { - "de": "Aleman", - "en": "Iningles", - "ceb": "Bisaya" + "friendship": { + "error": { + "alreadyexists": "Anaa na daan ang friendship request" + }, + "state": { + "none": "Dili pa higala", + "waiting": "Napadala na ang friendship request pero wala pa natubag", + "open": "Gihangyo ang friendship", + "denied": "Gibalibaran ang friendship request", + "withdrawn": "Gibawi ang friendship request", + "accepted": "Mga higala" + }, + "added": "Nagpadala ka og friendship request.", + "withdrawn": "Gibawi nimo ang friendship request.", + "denied": "Gibalibaran nimo ang friendship request.", + "accepted": "Natukod na ang panaghigala." + }, + "erotic": { + "eyebrow": "Erotic", + "accessTitle": "I-unlock ang erotic area", + "accessIntro": "Ang mga hulagway, video ug mga chat area sa ulahi makita lang sa edad 18 pataas ug magkinahanglan usab og moderator approval.", + "lockedShort": "Magamit ra kini nga area human sa moderator approval.", + "requestVerification": "Mangayo og access", + "requestSent": "Napadala na ang access request.", + "requestError": "Wala mapadala ang access request.", + "picturesTitle": "Erotic nga mga hulagway", + "picturesIntro": "Ang imong mga sulod magpabiling bulag gikan sa kasagarang galeriya. Dinhi nimo dumalahon ang mga hulagway para sa naablihang erotic area.", + "uploadTitle": "Pag-upload og erotic nga hulagway", + "noimages": "Wala pay hulagway niining erotic nga folder.", + "videosTitle": "Erotic nga mga video", + "videosIntro": "Ang imong kaugalingong mga video dumalahon nga bulag sa normal nga social area. Dinhi nimo organisahon ang uploads, visibility ug moderation status sa usa ka lugar.", + "videoUploadTitle": "Pag-upload og erotic nga video", + "videoUploadHint": "Pag-upload dinhi og mga video para sa imong naablihang erotic area ug pun-a dayon ang titulo ug deskripsiyon.", + "videoDescription": "Deskripsiyon", + "videoFile": "File sa video", + "videoFormats": "MP4, WEBM, OGG, MOV", + "myVideos": "Akong mga video", + "sharedVideos": "Mga gi-share nga video", + "foreignVideosIntro": "Mga gi-share nga video gikan sa adult area.", + "foreignVideosOnlyHint": "Dinhi makita lang nimo ang mga video nga gi-share para nimo sa adult area.", + "sharedVideosIntro": "Makita nga mga video gikan sa gi-share nga adult areas.", + "noSharedVideos": "Wala pay gi-share nga mga video para nimo karon.", + "libraryTitle": "Bibliyoteka", + "libraryIntro": "Ang imong uploads, visibility ug reports sa usa ka lugar.", + "libraryEmptyHint": "Paghimo una sa wala ang imong unang video ug dayon dumalaha kini dinhi sa bibliyoteka.", + "latestUpload": "Pinakabag-ong upload", + "visibleVideos": "Makita nga mga video", + "moderationCases": "Mga kaso sa moderation", + "notesTitle": "Mga pahimangno", + "friendsVisibilityHint": "Makakita ra ang mga higala sa sulod kung hamtong sila ug naablihan para sa adult area.", + "selectedUsersVisibilityHint": "Ang mga tawo nga espesipikong gi-share-an kinahanglan usab nga hamtong ug naablihan.", + "selectedUsersPlaceholder": "anna, bert, clara", + "imagePreviewAlt": "Preview sa hulagway", + "imageLoadingAlt": "Nag-load ang hulagway", + "untitled": "Walay titulo", + "noUploadYet": "Wala pay upload", + "closeEditing": "Isira ang pag-edit", + "editVisibility": "Usba ang visibility", + "reportAction": "Ireport", + "reportHint": "Gamita ang {action} direkta sa maong entry kung ang sulod kinahanglan susihon.", + "reportNote": "Mubo nga nota para sa moderation", + "submitReport": "Ipadala ang report", + "reportSubmitted": "Natala na ang report.", + "reportError": "Dili masave ang report.", + "moderationHidden": "Gitago sa moderation", + "hiddenByModeration": "Kini nga sulod temporaryong gitago sa moderation.", + "reportReasons": { + "suspected_minor": "Suspetsang menor de edad", + "non_consensual": "Sulod nga walay pagtugot", + "violence": "Kapintas o abuso", + "harassment": "Paghasol o pagpugos", + "spam": "Spam o scam", + "other": "Uban pa" + }, + "requestInfoTitle": "Gipasa nga prueba", + "documentLabel": "Dokumento sa beripikasyon", + "noteLabel": "Mubo nga nota para sa moderation", + "settingsLink": "Ablihi ang account settings", + "verificationHintTitle": "Nota sa beripikasyon", + "verificationHintBody": "Mahimo kang magpadala og hulagway. Kung dili klaro ang imong edad didto, ibalibaran ang hangyo ug kinahanglan nimo og ID.", + "notifications": { + "approved": "Gi-aprub sa moderation ang imong pag-abli sa erotik nga lugar.", + "rejected": "Gibalibaran ang imong hangyo sa erotik. Kung dili klaro ang edad sa hulagway, palihog ipadala ang ID." + }, + "noVideos": "Wala pa kay na-upload nga erotik nga mga video.", + "intro": "Na-abli na ang lugar. Ang mga module sa hulagway ug video mosunod sa sunod nga lakang.", + "enabledTitle": "Na-abli na ang access", + "enabledBody": "Ang imong account na-enable na sa erotik nga lugar. Ang hiwalay nga mga view sa hulagway ug video himoon pa.", + "roadmapTitle": "Sunod", + "roadmapModeration": "hiwalay nga agianan sa moderation ug reporting", + "roadmapUpload": "dedikadong mga view sa upload ug pagdumala", + "roadmapSeparation": "klaro nga pagbulag gikan sa normal nga galeriya", + "status": { + "none": { + "title": "Wala pa ma-abli", + "body": "Makita ang lugar, pero naka-lock pa hangtod sa pag-aprub sa moderator." + }, + "pending": { + "title": "Naghuwat sa pagsusi", + "body": "Ang imong hangyo naghuwat sa moderation." + }, + "approved": { + "title": "Na-abli na", + "body": "Na-abli na ang erotik nga lugar para sa imong account." + }, + "rejected": { + "title": "Gibalibaran ang hangyo", + "body": "Ang kataposang hangyo wala ma-aprub. Mahimo kang magpadala og bag-o." + } + } + }, + "vocab": { + "heroEyebrow": "Pagtuon og pinulongan", + "summaryTotalLabel": "Tanan nga pinulongan", + "summaryTotalIntro": "Tanang aktibong pinulongan nga lugar diin naggamit o nagdumala ka og sulod.", + "summaryOwnedLabel": "Imong kaugalingong lugar", + "summaryOwnedIntro": "Dinhi ka mismo maghimo og sulod, kapitulo ug materyal sa pagkat-on.", + "summarySubscribedLabel": "Gi-subscribe", + "summarySubscribedIntro": "Kini nga mga lugar mas para sa pagkat-on ug progreso kaysa pagdumala.", + "taskCreateEyebrow": "Paspas nga sugod", + "taskCreateTitle": "Paghimo og bag-ong pinulongan", + "taskCreateIntro": "Mao kini ang labing maayong sugod kung gusto nimo nga ikaw mismo ang mohikay ug moatiman sa sulod.", + "taskContinueEyebrow": "Padayon sa pagkat-on", + "taskContinueTitle": "Ablihi ang mga kurso ug kapitulo", + "taskContinueIntro": "Sulod dayon sa mga andam nang learning path ug ipadayon ang anaa nang mga kurso.", + "ownedSectionTitle": "Imong mga pinulongan", + "ownedSectionIntro": "Direktang agi-anan sa pag-edit, mga kapitulo ug pagdumala sa kurso.", + "ownedHint": "Pagdumala ug pag-atiman sa sulod", + "ownedEmpty": "Wala pay imong kaugalingong pinulongan nga lugar.", + "subscribedSectionTitle": "Mga gi-subscribe nga pinulongan", + "subscribedSectionIntro": "Maayo para sa paspas nga pagbalik sa pagkat-on nga walay kabug-at sa pagdumala.", + "subscribedHint": "Pagkat-on, praktis ug tan-awa ang progreso", + "subscribedEmpty": "Walay gi-subscribe nga pinulongan karon.", + "languageHeroEyebrow": "Pinulongan", + "languageHeroIntro": "Mga kapitulo, pagpangita ug pagpaambit para niining pinulongana sa usa ka lugar.", + "newLanguageHeroEyebrow": "Trainer sa bokabularyo", + "newLanguageHeroIntro": "Paghimo og bag-ong pinulongan, paghimo og share code ug dayon balhin dayon sa pag-edit.", + "newLanguageNameHint": "Sapat na ang mubo ug klaro nga ngalan sa pinulongan para sa pagsugod.", + "newLanguageNameValidation": "Ang ngalan kinahanglan adunay labing menos 2 ka karakter.", + "subscribeHeroEyebrow": "Trainer sa bokabularyo", + "chapterHeroEyebrow": "Trainer sa bokabularyo", + "chapterHeroIntro": "Susihon ang sulod sa kapitulo, atimana ang bokabularyo ug balhin dayon sa praktis.", + "courses": { + "courseKicker": "Kurso sa pagkat-on", + "courseListKicker": "Mga kurso", + "courseListIntro": "Sal-a ang publiko ug imong kaugalingong mga kurso sa pagkat-on, pangitaa ang angay, ug ipadayon dayon.", + "courseShareCodePlaceholder": "pananglitan abc123def456", + "courseFlowEyebrow": "Agos sa adlaw", + "courseFlowTitle": "Maayong ipadayon karon", + "courseFlowIntro": "Una ang gisugyot karon nga sunod-sunod sa ibabaw. Sa ubos, ang upat ka bahin: angay nga balik-balik, kasamtangang block, intensive phase, libre nga pagpalalom.", + "courseTodayPlanTitle": "Gisugyot karong adlawa", + "courseTodayPlanIntro": "Praktikal nga paagi: una ang tanan nga angay na nga mubo nga balik-balik, dayon ang abli nga mga leksiyon sa imong block, unya ang intensive kung naay ipakita. Ang mubo nga balik-balik tulo ka mubo nga petsa human mahuman ang leksiyon ( kasagaran mga 1, 3 ug 7 ka adlaw) aron mahuptan ang mga pulong.", + "courseTodayPlanStepReviewDue": "Mubo nga balik-balik karon", + "courseTodayPlanStepBlock": "Padayon sa kasamtangang block", + "courseTodayPlanStepIntensive": "Intensive nga balik-balik", + "courseTodayPlanStepContinue": "Sunod sa imong agianan sa pagkat-on", + "courseTodayPlanStepPractice": "Libre nga praktis (opsyonal)", + "courseTodayPlanOpen": "Ablihi ang leksiyon", + "courseTodayPlanTrainer": "Ablihi ang trainer", + "courseTodayPlanEmpty": "Walay gikatakda nga angay karon ug walay klaro nga sunod nga lakang sa block. Pilia ang leksiyon sa ubos o gamita ang libre nga pagpalalom sa trainer.", + "courseFlowReviewStat": "Angay balikon: {count}", + "courseFlowBlockStat": "Aktibong block: {block}", + "courseFlowReviewTitle": "Angay nga balik-balikon", + "courseFlowReviewDescription": "Mga leksiyon nga nahuman na ug angay balikon karong adlawa.", + "courseFlowReviewEmpty": "Walay daang leksiyon nga nakamarka isip angay balikon karon.", + "courseFlowBlockTitle": "Kasamtangang block", + "courseFlowBlockDescription": "Dinhi nahimutang ang sunod regular nga lakang sa kurso.", + "courseFlowBlockEmpty": "Nahuman na ang kasamtangang block o walay abli nga leksiyon niini karon.", + "courseFlowIntensiveTitle": "Angay nga intensive phase", + "courseFlowIntensiveDescription": "Mas dikit nga balik-balik sa dihang lig-on na ang nag-una nga block.", + "courseFlowIntensiveEmpty": "Wala pay bag-ong intensive phase nga naablihan karon.", + "courseFlowPracticeTitle": "Libre nga pagpalalom", + "courseFlowPracticeDescription": "Nahuman nang mga leksiyon para sa hinay-hinay nga dugang praktis gawas sa obligadong agi-anan.", + "courseFlowPracticeEmpty": "Sa dihang makahuman ka sa unang mga leksiyon, makita sila dinhi para sa libre nga praktis.", + "practiceInTrainer": "Praktisa sa trainer", + "lessonsCount": "{count} ka leksiyon", + "lessonBlockLabel": "Block {number}", + "lessonIntensiveBadge": "Intensive nga balik-balik", + "addLessonValidation": "Palihog kompletoha ang numero, titulo ug kapitulo.", + "addLessonSuccess": "Malampuson nga nahimo ang leksiyon.", + "addLessonError": "Dili madugang ang leksiyon.", + "createCourseError": "Dili mahimo ang paghimo sa kurso.", + "deleteLessonTitle": "Tangtanga ang leksiyon", + "deleteLessonSuccess": "Malampuson nga natangtang ang leksiyon.", + "deleteLessonError": "Dili matangtang ang leksiyon.", + "enrollCourseError": "Dili makapa-enroll sa kurso.", + "editLessonPending": "Ang tagsa-tagsa nga pag-edit sa mga leksiyon moabot pa.", + "timeToday": "karon", + "timeSinceOneDay": "sukad 1 ka adlaw", + "timeSinceDays": "sukad {count} ka adlaw", + "reviewDueNow": "angay na karon", + "reviewDueTomorrow": "angay ugma", + "reviewDueInDays": "angay sulod sa {count} ka adlaw", + "reviewDueToday": "angay karon", + "reviewDueSinceOneDay": "angay na sukad 1 ka adlaw", + "reviewDueSinceDays": "angay na sukad {count} ka adlaw", + "reviewBadgeScheduleTomorrow": "sunod nga wave ugma", + "reviewBadgeScheduleInDays": "sunod nga wave sulod sa {count} ka adlaw", + "reviewBadgeScheduleToday": "gitakda ang wave karon", + "reviewBadgeScheduleOverdue": "nilapas na ang wave sukad {count} ka adlaw", + "reviewBadgeLineAllDone": "Nahuman na ang tanang mubo nga balik-balik (3×)", + "reviewBadgeLineDue": "Mubo nga balik-balik: lakang {step} sa 3 · angay na karon", + "reviewBadgeLineScheduled": "Mubo nga balik-balik: lakang {step} sa 3 · sunod {when}", + "reviewWhenFriendlyTomorrow": "ugma", + "reviewWhenFriendlyInDays": "sulod sa {count} ka adlaw", + "reviewWhenFriendlyToday": "karon", + "reviewWhenFriendlyOverdue": "nilapas na ({count} ka adlaw ang milabay)", + "reviewWhenFriendlySoon": "dali ra", + "reviewBadgeTooltipDone": "Nahuman na nimo ang tulo nga gisugyot nga mubo nga balik-balik human niini nga leksiyon. Mahimo gihapon kang magpraktis sa trainer.", + "reviewBadgeTooltipActive": "Human sa leksiyon, gisugyot sa kurso ang tulo ka mubo nga balik-balik nga nagtika-tika mga 1, 3 ug 7 ka adlaw aron mahuptan ang mga pulong. Ang badge nagpakita kung unsang lakang (1–3) ang aktibo o kanus-a ang sunod nga petsa.", + "reviewStageDay1": "Lakang 1 sa 3 (~1 ka adlaw)", + "reviewStageDay3": "Lakang 2 sa 3 (~3 ka adlaw)", + "reviewStageDay7": "Lakang 3 sa 3 (~7 ka adlaw)", + "reviewStageCompleted": "Nahuman na ang tanang mubo nga balik-balik", + "phaseQuickstart": "Paspas nga sugod", + "phaseDailyLife": "Adlaw-adlaw", + "phaseStabilization": "Pagpalig-on", + "phaseDefault": "Hugna sa pagkat-on", + "didacticModeCoreInput": "Bag-ong sulod", + "didacticModeGuidedDialogue": "Giyahang dayalogo", + "didacticModeContrastTraining": "Contrast training", + "didacticModePatternDrill": "Pagpraktis sa mga hulma", + "didacticModeRealLifeScenario": "Tinuod nga kahimtang sa adlaw-adlaw", + "didacticModeIntensiveReview": "Hugna sa balik-balik", + "didacticModeCheckpoint": "Checkpoint", + "didacticModeDefault": "Yunit sa pagkat-on", + "didacticModeFocusDefault": "Pokus sa pagkat-on", + "lessonMetaFocus": "Pokus", + "lessonMetaPhase": "Hugna", + "lessonMetaNewUnits": "Bag-ong yunit", + "lessonMetaReview": "Balik-balik", + "intensiveReviewTitle": "Intensive nga hugna sa balik-balik", + "intensiveReviewIntro": "Kini nga leksiyon nag-una sa balik-balik ug pagpalalom. Gipakunhod og tinuyo ang bag-ong sulod aron malig-on ang mga hulma nga nakat-onan na.", + "reviewPriorityTitle": "Hinay-hinay nga gisagol ang balik-balik", + "reviewPriorityIntro": "Sa sinugdan, ang pokus anaa sa bag-ong mga pulong niining leksiyona. Samtang mopadayon ka, hinay-hinay nga masagol ang daan nga bokabularyo.", + "exerciseLockTitle": "Naka-lock pa ang chapter test", + "exerciseUnlockHintTrainerCore": "Ma-unlock ang chapter test kung natuman ang tulo ka kondisyon: labing menos {newTarget} ka pangutana bahin sa bag-ong sulod (tan-awa ang “Bag-ong sulod”), mga {attempts} ka pangutana sa trainer sa kinatibuk-an, ug dili ubos sa {rate}% nga success rate.", + "exerciseUnlockHintTrainerMixSuffix": "Ang daan nga bokabularyo hinay-hinay nga gisagol.", + "trainerStartWithReview": "Sugdi sa bag-ong bokabularyo niining leksiyona. Samtang nagpraktis ka, awtomatikong isagol sa trainer ang angay nga balik-balik.", + "startLesson": "Sugdi ang leksiyon", + "trainerProgressNewContent": "Bag-ong sulod: {current}/{target}", + "trainerProgressReview": "Balik-balik: {count}", + "trainerProgressMixShare": "Nasagol nga bahin: {percent}%", + "unknownExerciseTypeNotice": "Kini nga matang sa ehersisyo wala pa ipakita nga interaktibo sa kasamtangang view.", + "unknownExerciseTypeLabel": "Matang: {type}", + "lessonReviewHeadlineDone": "Nakaabot na kini nga leksiyon sa libre nga pagpalalom.", + "lessonReviewHeadlineDue": "Angay na karon kining review wave.", + "lessonReviewHeadlineScheduled": "Gitakda kini nga leksiyon para sa sunod nga review wave.", + "lessonReviewHintDone": "Nahuman na ang 1/3/7 ka adlaw nga balik-balik. Mahimo na nimo kining praktison sa mas luag nga paagi.", + "lessonReviewHintNextDue": "Sunod nga petsa: {due}.", + "reviewTimeNow": "karon", + "reviewTimeTomorrow": "ugma", + "reviewTimeInDays": "sulod sa {count} ka adlaw", + "resetLessonProgress": "I-reset ang leksiyon", + "resetLessonProgressConfirm": "I-reset ang pag-uswag niining leksiyona? Mawala ang natipig nga kahimtang, mga resulta sa ehersisyo ug sa trainer. Ang ubang leksiyon dili maapektuhan.", + "resetLessonProgressSuccess": "Na-reset na ang pag-uswag sa leksiyon.", + "resetLessonProgressError": "Dili ma-reset ang leksiyon.", + "title": "Pinulongan Pagkat-on Kursos", + "create": "Paghimo og Kurso", + "myCourses": "My Kursos", + "allCourses": "Tanan nga Kursos", + "none": "Walay kursos found.", + "owner": "Tag-iya", + "enrolled": "Na-enroll", + "public": "Publiko", + "difficulty": "Kalisod", + "lessons": "Leksiyons", + "enroll": "Enroll", + "continue": "Padayon", + "edit": "Edit", + "addLesson": "Add Leksiyon", + "completed": "Nahuman", + "score": "Score", + "review": "Balik-balik", + "start": "Sugdi", + "noLessons": "Kini nga kurso naay no leksiyons yet.", + "lessonNumber": "Leksiyon Number", + "chapter": "Kapitulo", + "selectChapter": "Select Kapitulo", + "selectLanguage": "Select Pinulongan", + "confirmDelete": "Tinuod nga delete leksiyon?", + "titleLabel": "Titulo", + "descriptionLabel": "Deskripsiyon", + "languageLabel": "Pinulongan", + "findByCode": "Find Kurso by Code", + "shareCode": "Ipaambit Code", + "searchPlaceholder": "Pangita kursos...", + "allLanguages": "Tanan nga Pinulongans", + "targetLanguage": "Target Pinulongan", + "nativeLanguage": "Native Pinulongan", + "allNativeLanguages": "Tanan nga Native Pinulongans", + "myNativeLanguage": "My Native Pinulongan", + "forAllLanguages": "For Tanan nga Pinulongans", + "optional": "Opsyonal", + "invalidCode": "Dili balido code", + "courseNotFound": "Kurso not found", + "grammarExercises": "Tsek sa kapitulo", + "exerciseFlowIntro": "Work through ang tasks sa order. Every tama answer moves you closer aron completing ang leksiyon.", + "exerciseProgressLabel": "Progress", + "exerciseTargetLabel": "Required", + "exerciseCardLabel": "Task {number}", + "exerciseSequentialProgress": "Question {current} sa {total}", + "exerciseSequentialBack": "Balik", + "exerciseSequentialNext": "Sunod", + "exerciseWrongTitle": "Dili quite right", + "exerciseReinforcementGoPractice": "Go aron praktis", + "exerciseReinforcementStay": "Stay sa ang test", + "exerciseReinforcementGoPracticeAck": "Read, go aron praktis", + "exerciseReinforcementStayAck": "Read, stay sa ang test", + "exerciseStatusOpen": "Ablihi", + "exerciseStatusCorrect": "Done", + "exerciseStatusRetry": "Try again", + "exerciseAnswerAllHint": "Answer tanan nga {total} tasks una. Nahuman so far: {answered}. Ikaw need sa least {target}% aron pass.", + "exerciseNeedMoreCorrectHint": "Ikaw currently naay {score}%. Ikaw need sa least {target}% aron complete kini nga leksiyon.", + "exercisePassedHint": "Target reached: {score}% out sa ang required {target}%. Once tanan nga tasks naay been answered, ang tsek sa kapitulo is passed.", + "exerciseReinforcementHint": "After a mistake, ang flow returns briefly aron pagkat-on mode. Praktis {count} more trainer questions ug ang tsek sa kapitulo will unlock again.", + "exercisePrepReinforcementHint": "After a mistake, go through ang prepared terms once more. Then ang tsek sa kapitulo will unlock again.", + "exerciseGrammarLead": "Key grammar para sa kini nga test", + "noExercises": "Walay test available", + "enterAnswer": "Enter answer", + "checkAnswer": "Susihi Answer", + "correct": "Tama!", + "wrong": "Sayop", + "explanation": "Pasabot", + "learn": "Learn", + "exercises": "Tsek sa kapitulo", + "learnVocabulary": "Learn Bokabularyo", + "lessonOverviewText": "Kini nga leksiyon combines bokabularyo, patterns, short grammar impulses, ug active speaking praktis.", + "lessonDescription": "Leksiyon Deskripsiyon", + "culturalNotes": "Cultural Notes", + "grammarExplanations": "Gramatika Pasabots", + "grammarImpulse": "Gramatika Focus", + "learningGoals": "Pagkat-on Goals", + "corePatterns": "Core Patterns", + "corePatternsHint": "Read ang target pinulongan una, then ang meaning below — you learn each pattern both ways.", + "learningGrammarTitle": "Briefly frame ang grammar", + "learningGrammarIntro": "Read these 1-2 hints human sa ang key terms. Then you go into ang trainer uban sa better orientation.", + "vocabPrepTitle": "Preparation sa wala pa ang bokabularyo trainer", + "vocabPrepStep1": "Read through core patterns ug ang word list (native pinulongan ↔ target pinulongan) once.", + "vocabPrepProgress": "Pass {pass}: item {current} sa {total}", + "vocabPrepTargetLabel": "Target pinulongan", + "vocabPrepGlossLabel": "Meaning", + "vocabPrepNextItem": "Sunod item", + "vocabPrepConfirm1": "Una pass done", + "vocabPrepStep2": "Go through ang same items again (active review, not testing yet).", + "vocabPrepConfirm2": "Second pass done", + "vocabPrepReady": "Ikaw can start ang bokabularyo trainer now.", + "learningPathLabel": "Main path", + "learningPathTitle": "Your pagkat-on flow para sa kini nga leksiyon", + "learningPathIntro": "Work through these steps sa order: prepare, review briefly, train, then move aron ang tsek sa kapitulo.", + "lessonDetailsToggle": "Show more leksiyon details", + "deepenSectionTitle": "Deepen ug review", + "assistantSectionTitle": "Deepen uban sa pinulongan katabang", + "vocabOverviewToggle": "Show full overview sa terms", + "vocabTrainerLockedHint": "Palihog confirm two preparation steps under “Preparation sa wala pa ang bokabularyo trainer” una.", + "exerciseUnlockHintAfterPrep": "Work through ang prepared terms una. Ang tsek sa kapitulo will unlock afterwards.", + "speakingTasks": "Speaking Tasks", + "speakingPrompt": "Speaking Prompt", + "practicalTasks": "Practical Tasks", + "importantVocab": "Important Bokabularyo", + "vocabInfoText": "These terms are used sa ang test. Learn them here passively sa wala pa switching aron ang tsek sa kapitulo.", + "noVocabInfo": "Read ang description above ug ang pasabots sa ang test aron learn ang most important terms.", + "vocabTrainer": "Bokabularyo Trainer", + "vocabTrainerDescription": "Praktis ang most important terms sa kini nga leksiyon interactively.", + "startVocabTrainer": "Sugdi ang Bokabularyo Trainer", + "stopTrainer": "Hunong ang Trainer", + "translateTo": "Translate into Bisaya", + "translateFrom": "Translate into German", + "next": "Sunod", + "totalAttempts": "Attempts", + "successRate": "Malampuson Rate", + "modeMultipleChoice": "Multiple Choice", + "modeTyping": "Text Input", + "currentLesson": "Current Leksiyon", + "mixedReview": "Balik-balik", + "lessonCompleted": "Leksiyon completed!", + "goToNextLesson": "Go aron next leksiyon?", + "allLessonsCompleted": "Tanan nga leksiyons completed!", + "startExercises": "Sugdi ang Tsek sa kapitulo", + "lessonTypeLabel": "Leksiyon Type", + "recommendedDuration": "Recommended Duration", + "exerciseLoad": "Exercise Load", + "exercisesShort": "exercises", + "durationFlexible": "Flexible", + "durationMinutes": "{ka minuto} ka minuto", + "lessonTypeVocab": "Bokabularyo", + "lessonTypeGrammar": "Gramatika", + "lessonTypeConversation": "Panag-istoryahanay", + "lessonTypeCulture": "Kultura", + "lessonTypeReview": "Balik-balik", + "correctAnswer": "Tama Answer", + "alternatives": "Alternative Answers", + "notStarted": "Dili Sugdied", + "continueCurrentLesson": "Padayon Current Leksiyon", + "previousLessonRequired": "Palihog complete ang previous leksiyon una", + "lessonNumberShort": "#", + "buildSentencePlaceholder": "Build imong sentence here", + "completeDialogPlaceholder": "Complete ang missing dialog line", + "situationalResponsePlaceholder": "Write imong response aron ang situation", + "patternDrillPlaceholder": "Paghimo og a fitting sentence uban sa ang pattern", + "modelSentence": "Model sentence", + "modelDialogLine": "Possible dialog line", + "modelResponse": "Possible response", + "modelPattern": "Possible pattern example", + "patternPrompt": "Pattern", + "readingAloudInstruction": "Read ang text aloud. Click 'Sugdi ang Nagrekord' ug begin speaking.", + "speakingFromMemoryInstruction": "Speak freely gikan sa memory. Use ang displayed keywords.", + "startRecording": "Sugdi ang Nagrekord", + "stopRecording": "Hunong ang Nagrekord", + "startSpeaking": "Sugdi ang Speaking", + "recording": "Nagrekord...", + "listening": "Listening...", + "recordingStopped": "Nagrekord stopped", + "recordingError": "Nagrekord error", + "recognizedText": "Recognized Text", + "speechRecognitionNotSupported": "Speech Recognition is not supported by kini nga browser. Palihog use Chrome o Edge.", + "speakingFallbackInstruction": "Your browser does not support speech input here. Write down what you would say instead ug check it normally.", + "speakingFallbackPlaceholder": "Write what you would say here ...", + "keywords": "Keywords", + "switchBackToMultipleChoice": "Switch back aron Multiple Choice", + "languageAssistantEyebrow": "Pinulongan katabang", + "languageAssistantCourseTitle": "AI support para sa kini nga kurso", + "languageAssistantCourseReady": "Ang pinulongan katabang is configured ug available inside leksiyons para sa pasabots, tamaions, ug short dialogue praktis.", + "languageAssistantCourseSetup": "Set up ang pinulongan katabang so you can ask leksiyon-specific questions ug praktis short dialogues.", + "languageAssistantOpenLesson": "Ablihi ang sa current leksiyon", + "languageAssistantTitle": "Praktis uban sa ang pinulongan katabang", + "languageAssistantIntro": "Use ang AI directly inside ang current leksiyon: get grammar explained, praktis short dialogues, o naay imong own sentences tamaed.", + "languageAssistantSettings": "Configure katabang", + "languageAssistantSetupHint": "Ang pinulongan katabang is not configured yet o is currently disabled. Palihog save imong model ug API access sa ang settings una.", + "languageAssistantModePractice": "Praktis", + "languageAssistantModeExplain": "Explain", + "languageAssistantModeCorrect": "Tama", + "languageAssistantPromptExplain": "Explain grammar", + "languageAssistantPromptPractice": "Praktis mini dialogue", + "languageAssistantPromptCorrect": "Improve my sentence", + "languageAssistantSpeakerAi": "Pinulongan katabang", + "languageAssistantSpeakerYou": "You", + "languageAssistantInputLabel": "Your mensahe", + "languageAssistantInputPlaceholder": "Ask a leksiyon question o write imong own sentence para sa tamaion.", + "languageAssistantSend": "Padal-a ang aron katabang", + "languageAssistantSending": "Getting answer ...", + "languageAssistantError": "Ang pinulongan katabang could not answer right now.", + "languageAssistantPresetExplainStart": "Palihog explain ang main patterns ug grammar sa ang leksiyon", + "languageAssistantPatternHint": "Focus especially sa kini nga pattern", + "languageAssistantPresetPracticeStart": "Let's praktis a short everyday dialogue para sa ang leksiyon \"{leksiyon}\". Palihog ask me questions ug wait para sa my answers.", + "languageAssistantPresetCorrectStart": "I want aron write my own sentences para sa ang leksiyon \"{leksiyon}\". Palihog tama my answers briefly ug clearly.", + "thisLesson": "this leksiyon", + "quickReviewTitle": "Quick Balik-balik", + "quickReviewIntro": "Short session uban sa {count} terms. After completion, ang scheduled review is marked as done.", + "quickReviewDoneTitle": "Done", + "quickReviewDoneScore": "Tama: {tama} / {total}", + "quickReviewBackToCourse": "Balik aron kurso", + "quickReviewProgress": "Term {current} sa {total}", + "quickReviewPromptMeaning": "What does \"{term}\" mean?", + "quickReviewPromptTarget": "Type sa target pinulongan: \"{term}\"", + "quickReviewAcknowledge": "Read, continue", + "courseTodayPlanIntroNoDueReview": "Walay quick review is due today. Sugdi ang uban sa ang open leksiyons sa imong current block, then do intensive review if shown. Quick reviews reappear automatically sa ang 1/3/7-day rhythm." + }, + "title": "Trainer sa bokabularyo", + "description": "Paghimo og pinulongans (or subscribe aron them) ug share them uban sa friends.", + "newLanguage": "New pinulongan", + "newLanguageTitle": "Paghimo og new pinulongan", + "languageName": "Pinulongan name", + "create": "Paghimo", + "saving": "Saving...", + "created": "Pinulongan created.", + "createdTitle": "Trainer sa bokabularyo", + "createdMessage": "Pinulongan created. Ang menu will refresh.", + "createError": "Dili ma create pinulongan.", + "openLanguage": "Ablihi", + "none": "Ikaw naay no pinulongans yet (created o subscribed).", + "owner": "Owned", + "subscribed": "Mag-subscribed", + "languageTitle": "Trainer sa bokabularyo: {name}", + "notFound": "Pinulongan not found o no access.", + "shareCode": "Ipaambit code", + "shareHint": "Padal-a ang kini nga code aron friends so they can subscribe aron kini nga pinulongan.", + "subscribeByCode": "Mag-subscribe by code", + "subscribeTitle": "Mag-subscribe aron pinulongan", + "subscribeHint": "Enter a share code you received gikan sa a friend.", + "subscribe": "Mag-subscribe", + "subscribeSuccess": "Mag-subscribed. Ang menu will refresh.", + "subscribeError": "Mag-subscribe failed. Dili balido code o no access.", + "trainerPlaceholder": "Trainer features (words/quizzes) will be ang next step.", + "chapters": "Kapitulos", + "newChapter": "New kapitulo", + "createChapter": "Paghimo og kapitulo", + "createChapterError": "Dili ma create kapitulo.", + "noChapters": "Walay kapitulos yet.", + "chapterTitle": "Kapitulo: {title}", + "addVocab": "Add bokabularyo", + "learningWord": "To learn", + "referenceWord": "Reference", + "add": "Add", + "addVocabError": "Dili ma add bokabularyo.", + "noVocabs": "Walay bokabularyo sa kini nga kapitulo yet.", + "practice": { + "open": "Praktis", + "title": "Praktis bokabularyo", + "allVocabs": "Tanan nga bokabularyo", + "simple": "Simple praktis", + "noPool": "Walay bokabularyo aron praktis.", + "dirLearningToRef": "To learn → Reference", + "dirRefToLearning": "Reference → To learn", + "check": "Susihi", + "next": "Sunod", + "skip": "Laktaw", + "correct": "Tama!", + "wrong": "Sayop.", + "acceptable": "Acceptable answers:", + "stats": "Stats", + "success": "Malampuson", + "fail": "Fail" + }, + "search": { + "open": "Pangita", + "title": "Pangita bokabularyo", + "term": "Pangita term", + "motherTongue": "Pinulongan nga inahan", + "learningLanguage": "Pagkat-on pinulongan", + "lesson": "Leksiyon", + "search": "Pangita", + "noResults": "Walay results.", + "error": "Pangita failed." + } } - }, - "guestbook": { - "showInput": "Ipakita ang bag-ong entry", - "hideInput": "Tagoa ang bag-ong entry", - "imageUpload": "Hulagway", - "submit": "Ipadala ang entry", - "noEntries": "Walay entry nga nakit-an", - "entryImageAlt": "Hulagway sa entry sa libro sa bisita" - }, - "interestedInGender": "Interesado sa", - "hasChildren": "Naay mga anak", - "smokes": "Pagpanigarilyo", - "drinks": "Alak", - "willChildren": "Gusto og anak", - "sexualpreference": "Sekswal nga oryentasyon", - "language": "Pinulongan", - "gender": "Sekso", - "birthdate": "Petsa sa pagkatawo", - "age": "Edad", - "town": "Lungsod", - "bodyheight": "Gitas-on", - "weight": "Timbang" - }, - "gallery": { - "kicker": "Mga hulagway ug folder", - "intro": "Organisaha ang imong kaugalingong sulod, kontrola ang makita, ug ihan-ay sa mga folder.", - "title": "Galeriya", - "folders": "Mga folder", - "create_folder": "Paghimo og folder", - "upload": { - "title": "I-upload ang hulagway", - "image_title": "Pamagat", - "image_file": "File", - "visibility": "Makita sa", - "upload_button": "I-upload", - "selectvisibility": "Palihog pagpili" - }, - "images": "Mga hulagway", - "visibility": { - "everyone": "Tanan", - "friends": "Mga higala", - "adults": "Mga hamtong", - "friends-and-adults": "Mga higala ug mga hamtong", - "selected-users": "Piniling mga user", - "none": "Wala" - }, - "create_folder_dialog": { - "title": "Paghimo og folder", - "parent_folder": "Pagabuhaton sulod sa", - "folder_title": "Ngalan sa folder", - "visibility": "Makita sa", - "select_visibility": "Palihog pagpili" - }, - "noimages": "Wala pay mga hulagway niining foldera", - "imagedialog": { - "image_title": "Pamagat", - "edit_visibility": "Makita sa", - "save_changes": "I-save ang mga kausaban", - "close": "Isira", - "edit_visibility_placeholder": "Palihog pagpili" - }, - "delete_folder_confirmation_title": "Tangtanga ang folder", - "delete_folder_confirmation_message": "Tinuod ba nga gusto nimong tangtangon ang folder nga '%%folderName%%'?", - "edit_image_dialog": { - "title": "Usba ang datos sa hulagway" - }, - "show_image_dialog": { - "title": "Hulagway" - }, - "imagePreviewAlt": "Preview sa hulagway", - "imageLoadingAlt": "Nag-load ang hulagway" - }, - "guestbook": { - "kicker": "Libro sa bisita", - "intro": "Mga mensahe, feedback ug gagmayng hulagway sa imong network.", - "title": "Libro sa bisita", - "prevPage": "Balik", - "nextPage": "Sunod", - "page": "Panid" - }, - "diary": { - "kicker": "Personal nga mga entry", - "intro": "Mga hunahuna, nota ug mubo nga update sa usa ka malinawon ug personal nga tan-aw.", - "placeholder": "Isulat dinhi ang imong entry sa talaarawan...", - "title": "Talaarawan", - "noEntries": "Wala ka pay mga entry sa talaarawan.", - "newEntry": "Bag-ong entry sa talaarawan", - "editEntry": "Usba ang entry sa talaarawan", - "save": "I-save", - "update": "I-update", - "cancel": "I-cancel", - "edit": "Usba", - "delete": "Tangtanga", - "confirmDelete": "Tinuod ba nga gusto nimong tangtangon ang entry?", - "prevPage": "Balik", - "nextPage": "Sunod", - "page": "Panid" - }, - "forum": { - "kicker": "Forum sa komunidad", - "intro": "Mga hilisgutan, diskusyon ug bag-ong post sa usa ka organisado nga lugar.", - "createTitle": "Paghimo og bag-ong hilisgutan", - "createIntro": "Ibutang una ang titulo, dayon isulat ang post ug dayon i-publish dayon.", - "cancelCreation": "Kanselahon", - "creationHint": "Kinahanglan mapun-an ang titulo ug sulod.", - "communityFallback": "Komunidad", - "topicIntro": "Mga diskusyon, tubag ug bag-ong post sa usa ka mas nakapokus nga pagbasa.", - "topicCreated": "Malampuson nga nahimo ang hilisgutan.", - "topicCreateError": "Adunay sayop sa paghimo sa hilisgutan", - "title": "Forum", - "showNewTopic": "Paghimo og bag-ong topic", - "hideNewTopic": "I-cancel ang paghimo", - "noTitles": "Walay topic nga available", - "topic": "Hilisgutan", - "createNewTopic": "Paghimo og hilisgutan", - "createdBy": "Gihimo ni", - "createdAt": "Gihimo sa", - "reactions": "Reaksiyon", - "lastReaction": "Kataposang reaksiyon ni", - "createNewMesssage": "Ipadala ang tubag" - }, - "friendship": { - "error": { - "alreadyexists": "Anaa na daan ang friendship request" - }, - "state": { - "none": "Dili pa higala", - "waiting": "Napadala na ang friendship request pero wala pa natubag", - "open": "Gihangyo ang friendship", - "denied": "Gibalibaran ang friendship request", - "withdrawn": "Gibawi ang friendship request", - "accepted": "Mga higala" - }, - "added": "Nagpadala ka og friendship request.", - "withdrawn": "Gibawi nimo ang friendship request.", - "denied": "Gibalibaran nimo ang friendship request.", - "accepted": "Natukod na ang panaghigala." - }, - "erotic": { - "eyebrow": "Erotic", - "accessTitle": "I-unlock ang erotic area", - "accessIntro": "Ang mga hulagway, video ug mga chat area sa ulahi makita lang sa edad 18 pataas ug magkinahanglan usab og moderator approval.", - "lockedShort": "Magamit ra kini nga area human sa moderator approval.", - "requestVerification": "Mangayo og access", - "requestSent": "Napadala na ang access request.", - "requestError": "Wala mapadala ang access request.", - "picturesTitle": "Erotic nga mga hulagway", - "picturesIntro": "Ang imong mga sulod magpabiling bulag gikan sa kasagarang galeriya. Dinhi nimo dumalahon ang mga hulagway para sa naablihang erotic area.", - "uploadTitle": "Pag-upload og erotic nga hulagway", - "noimages": "Wala pay hulagway niining erotic nga folder.", - "videosTitle": "Erotic nga mga video", - "videosIntro": "Ang imong kaugalingong mga video dumalahon nga bulag sa normal nga social area. Dinhi nimo organisahon ang uploads, visibility ug moderation status sa usa ka lugar.", - "videoUploadTitle": "Pag-upload og erotic nga video", - "videoUploadHint": "Pag-upload dinhi og mga video para sa imong naablihang erotic area ug pun-a dayon ang titulo ug deskripsiyon.", - "videoDescription": "Deskripsiyon", - "videoFile": "File sa video", - "videoFormats": "MP4, WEBM, OGG, MOV", - "myVideos": "Akong mga video", - "sharedVideos": "Mga gi-share nga video", - "foreignVideosIntro": "Mga gi-share nga video gikan sa adult area.", - "foreignVideosOnlyHint": "Dinhi makita lang nimo ang mga video nga gi-share para nimo sa adult area.", - "sharedVideosIntro": "Makita nga mga video gikan sa gi-share nga adult areas.", - "noSharedVideos": "Wala pay gi-share nga mga video para nimo karon.", - "libraryTitle": "Bibliyoteka", - "libraryIntro": "Ang imong uploads, visibility ug reports sa usa ka lugar.", - "libraryEmptyHint": "Paghimo una sa wala ang imong unang video ug dayon dumalaha kini dinhi sa bibliyoteka.", - "latestUpload": "Pinakabag-ong upload", - "visibleVideos": "Makita nga mga video", - "moderationCases": "Mga kaso sa moderation", - "notesTitle": "Mga pahimangno", - "friendsVisibilityHint": "Makakita ra ang mga higala sa sulod kung hamtong sila ug naablihan para sa adult area.", - "selectedUsersVisibilityHint": "Ang mga tawo nga espesipikong gi-share-an kinahanglan usab nga hamtong ug naablihan.", - "selectedUsersPlaceholder": "anna, bert, clara", - "imagePreviewAlt": "Preview sa hulagway", - "imageLoadingAlt": "Nag-load ang hulagway", - "untitled": "Walay titulo", - "noUploadYet": "Wala pay upload", - "closeEditing": "Isira ang pag-edit", - "editVisibility": "Usba ang visibility", - "reportAction": "Ireport", - "reportHint": "Gamita ang {action} direkta sa maong entry kung ang sulod kinahanglan susihon.", - "reportNote": "Mubo nga nota para sa moderation", - "submitReport": "Ipadala ang report", - "reportSubmitted": "Natala na ang report.", - "reportError": "Dili masave ang report.", - "moderationHidden": "Gitago sa moderation", - "hiddenByModeration": "Kini nga sulod temporaryong gitago sa moderation.", - "reportReasons": { - "suspected_minor": "Suspetsang menor de edad", - "non_consensual": "Sulod nga walay pagtugot", - "violence": "Kapintas o abuso", - "harassment": "Paghasol o pagpugos", - "spam": "Spam o scam", - "other": "Uban pa" - } - }, - "vocab": { - "heroEyebrow": "Pagtuon og pinulongan", - "summaryTotalLabel": "Tanan nga pinulongan", - "summaryTotalIntro": "Tanang aktibong pinulongan nga lugar diin naggamit o nagdumala ka og sulod.", - "summaryOwnedLabel": "Imong kaugalingong lugar", - "summaryOwnedIntro": "Dinhi ka mismo maghimo og sulod, kapitulo ug materyal sa pagkat-on.", - "summarySubscribedLabel": "Gi-subscribe", - "summarySubscribedIntro": "Kini nga mga lugar mas para sa pagkat-on ug progreso kaysa pagdumala.", - "taskCreateEyebrow": "Paspas nga sugod", - "taskCreateTitle": "Paghimo og bag-ong pinulongan", - "taskCreateIntro": "Mao kini ang labing maayong sugod kung gusto nimo nga ikaw mismo ang mohikay ug moatiman sa sulod.", - "taskContinueEyebrow": "Padayon sa pagkat-on", - "taskContinueTitle": "Ablihi ang mga kurso ug kapitulo", - "taskContinueIntro": "Sulod dayon sa mga andam nang learning path ug ipadayon ang anaa nang mga kurso.", - "ownedSectionTitle": "Imong mga pinulongan", - "ownedSectionIntro": "Direktang agi-anan sa pag-edit, mga kapitulo ug pagdumala sa kurso.", - "ownedHint": "Pagdumala ug pag-atiman sa sulod", - "ownedEmpty": "Wala pay imong kaugalingong pinulongan nga lugar.", - "subscribedSectionTitle": "Mga gi-subscribe nga pinulongan", - "subscribedSectionIntro": "Maayo para sa paspas nga pagbalik sa pagkat-on nga walay kabug-at sa pagdumala.", - "subscribedHint": "Pagkat-on, praktis ug tan-awa ang progreso", - "subscribedEmpty": "Walay gi-subscribe nga pinulongan karon.", - "languageHeroEyebrow": "Pinulongan", - "languageHeroIntro": "Mga kapitulo, pagpangita ug pagpaambit para niining pinulongana sa usa ka lugar.", - "newLanguageHeroEyebrow": "Trainer sa bokabularyo", - "newLanguageHeroIntro": "Paghimo og bag-ong pinulongan, paghimo og share code ug dayon balhin dayon sa pag-edit.", - "newLanguageNameHint": "Sapat na ang mubo ug klaro nga ngalan sa pinulongan para sa pagsugod.", - "newLanguageNameValidation": "Ang ngalan kinahanglan adunay labing menos 2 ka karakter.", - "subscribeHeroEyebrow": "Trainer sa bokabularyo", - "chapterHeroEyebrow": "Trainer sa bokabularyo", - "chapterHeroIntro": "Susihon ang sulod sa kapitulo, atimana ang bokabularyo ug balhin dayon sa praktis.", - "courses": { - "courseKicker": "Kurso sa pagkat-on", - "courseListKicker": "Mga kurso", - "courseListIntro": "Sal-a ang publiko ug imong kaugalingong mga kurso sa pagkat-on, pangitaa ang angay, ug ipadayon dayon.", - "courseShareCodePlaceholder": "pananglitan abc123def456", - "courseFlowEyebrow": "Agos sa adlaw", - "courseFlowTitle": "Maayong ipadayon karon", - "courseFlowIntro": "Una ang gisugyot karon nga sunod-sunod sa ibabaw. Sa ubos, ang upat ka bahin: angay nga balik-balik, kasamtangang block, intensive phase, libre nga pagpalalom.", - "courseTodayPlanTitle": "Gisugyot karong adlawa", - "courseTodayPlanIntro": "Praktikal nga paagi: una ang tanan nga angay na nga mubo nga balik-balik, dayon ang abli nga mga leksiyon sa imong block, unya ang intensive kung naay ipakita. Ang mubo nga balik-balik tulo ka mubo nga petsa human mahuman ang leksiyon ( kasagaran mga 1, 3 ug 7 ka adlaw) aron mahuptan ang mga pulong.", - "courseTodayPlanStepReviewDue": "Mubo nga balik-balik karon", - "courseTodayPlanStepBlock": "Padayon sa kasamtangang block", - "courseTodayPlanStepIntensive": "Intensive nga balik-balik", - "courseTodayPlanStepContinue": "Sunod sa imong agianan sa pagkat-on", - "courseTodayPlanStepPractice": "Libre nga praktis (opsyonal)", - "courseTodayPlanOpen": "Ablihi ang leksiyon", - "courseTodayPlanTrainer": "Ablihi ang trainer", - "courseTodayPlanEmpty": "Walay gikatakda nga angay karon ug walay klaro nga sunod nga lakang sa block. Pilia ang leksiyon sa ubos o gamita ang libre nga pagpalalom sa trainer.", - "courseFlowReviewStat": "Angay balikon: {count}", - "courseFlowBlockStat": "Aktibong block: {block}", - "courseFlowReviewTitle": "Angay nga balik-balikon", - "courseFlowReviewDescription": "Mga leksiyon nga nahuman na ug angay balikon karong adlawa.", - "courseFlowReviewEmpty": "Walay daang leksiyon nga nakamarka isip angay balikon karon.", - "courseFlowBlockTitle": "Kasamtangang block", - "courseFlowBlockDescription": "Dinhi nahimutang ang sunod regular nga lakang sa kurso.", - "courseFlowBlockEmpty": "Nahuman na ang kasamtangang block o walay abli nga leksiyon niini karon.", - "courseFlowIntensiveTitle": "Angay nga intensive phase", - "courseFlowIntensiveDescription": "Mas dikit nga balik-balik sa dihang lig-on na ang nag-una nga block.", - "courseFlowIntensiveEmpty": "Wala pay bag-ong intensive phase nga naablihan karon.", - "courseFlowPracticeTitle": "Libre nga pagpalalom", - "courseFlowPracticeDescription": "Nahuman nang mga leksiyon para sa hinay-hinay nga dugang praktis gawas sa obligadong agi-anan.", - "courseFlowPracticeEmpty": "Sa dihang makahuman ka sa unang mga leksiyon, makita sila dinhi para sa libre nga praktis.", - "practiceInTrainer": "Praktisa sa trainer", - "lessonsCount": "{count} ka leksiyon", - "lessonBlockLabel": "Block {number}", - "lessonIntensiveBadge": "Intensive nga balik-balik", - "addLessonValidation": "Palihog kompletoha ang numero, titulo ug kapitulo.", - "addLessonSuccess": "Malampuson nga nahimo ang leksiyon.", - "addLessonError": "Dili madugang ang leksiyon.", - "createCourseError": "Dili mahimo ang paghimo sa kurso.", - "deleteLessonTitle": "Tangtanga ang leksiyon", - "deleteLessonSuccess": "Malampuson nga natangtang ang leksiyon.", - "deleteLessonError": "Dili matangtang ang leksiyon.", - "enrollCourseError": "Dili makapa-enroll sa kurso.", - "editLessonPending": "Ang tagsa-tagsa nga pag-edit sa mga leksiyon moabot pa.", - "timeToday": "karon", - "timeSinceOneDay": "sukad 1 ka adlaw", - "timeSinceDays": "sukad {count} ka adlaw", - "reviewDueNow": "angay na karon", - "reviewDueTomorrow": "angay ugma", - "reviewDueInDays": "angay sulod sa {count} ka adlaw", - "reviewDueToday": "angay karon", - "reviewDueSinceOneDay": "angay na sukad 1 ka adlaw", - "reviewDueSinceDays": "angay na sukad {count} ka adlaw", - "reviewBadgeScheduleTomorrow": "sunod nga wave ugma", - "reviewBadgeScheduleInDays": "sunod nga wave sulod sa {count} ka adlaw", - "reviewBadgeScheduleToday": "gitakda ang wave karon", - "reviewBadgeScheduleOverdue": "nilapas na ang wave sukad {count} ka adlaw", - "reviewBadgeLineAllDone": "Nahuman na ang tanang mubo nga balik-balik (3×)", - "reviewBadgeLineDue": "Mubo nga balik-balik: lakang {step} sa 3 · angay na karon", - "reviewBadgeLineScheduled": "Mubo nga balik-balik: lakang {step} sa 3 · sunod {when}", - "reviewWhenFriendlyTomorrow": "ugma", - "reviewWhenFriendlyInDays": "sulod sa {count} ka adlaw", - "reviewWhenFriendlyToday": "karon", - "reviewWhenFriendlyOverdue": "nilapas na ({count} ka adlaw ang milabay)", - "reviewWhenFriendlySoon": "dali ra", - "reviewBadgeTooltipDone": "Nahuman na nimo ang tulo nga gisugyot nga mubo nga balik-balik human niini nga leksiyon. Mahimo gihapon kang magpraktis sa trainer.", - "reviewBadgeTooltipActive": "Human sa leksiyon, gisugyot sa kurso ang tulo ka mubo nga balik-balik nga nagtika-tika mga 1, 3 ug 7 ka adlaw aron mahuptan ang mga pulong. Ang badge nagpakita kung unsang lakang (1–3) ang aktibo o kanus-a ang sunod nga petsa.", - "reviewStageDay1": "Lakang 1 sa 3 (~1 ka adlaw)", - "reviewStageDay3": "Lakang 2 sa 3 (~3 ka adlaw)", - "reviewStageDay7": "Lakang 3 sa 3 (~7 ka adlaw)", - "reviewStageCompleted": "Nahuman na ang tanang mubo nga balik-balik", - "phaseQuickstart": "Paspas nga sugod", - "phaseDailyLife": "Adlaw-adlaw", - "phaseStabilization": "Pagpalig-on", - "phaseDefault": "Hugna sa pagkat-on", - "didacticModeCoreInput": "Bag-ong sulod", - "didacticModeGuidedDialogue": "Giyahang dayalogo", - "didacticModeContrastTraining": "Contrast training", - "didacticModePatternDrill": "Pagpraktis sa mga hulma", - "didacticModeRealLifeScenario": "Tinuod nga kahimtang sa adlaw-adlaw", - "didacticModeIntensiveReview": "Hugna sa balik-balik", - "didacticModeCheckpoint": "Checkpoint", - "didacticModeDefault": "Yunit sa pagkat-on", - "didacticModeFocusDefault": "Pokus sa pagkat-on", - "lessonMetaFocus": "Pokus", - "lessonMetaPhase": "Hugna", - "lessonMetaNewUnits": "Bag-ong yunit", - "lessonMetaReview": "Balik-balik", - "intensiveReviewTitle": "Intensive nga hugna sa balik-balik", - "intensiveReviewIntro": "Kini nga leksiyon nag-una sa balik-balik ug pagpalalom. Gipakunhod og tinuyo ang bag-ong sulod aron malig-on ang mga hulma nga nakat-onan na.", - "reviewPriorityTitle": "Hinay-hinay nga gisagol ang balik-balik", - "reviewPriorityIntro": "Sa sinugdan, ang pokus anaa sa bag-ong mga pulong niining leksiyona. Samtang mopadayon ka, hinay-hinay nga masagol ang daan nga bokabularyo.", - "exerciseLockTitle": "Naka-lock pa ang chapter test", - "exerciseUnlockHintTrainerCore": "Ma-unlock ang chapter test kung natuman ang tulo ka kondisyon: labing menos {newTarget} ka pangutana bahin sa bag-ong sulod (tan-awa ang “Bag-ong sulod”), mga {attempts} ka pangutana sa trainer sa kinatibuk-an, ug dili ubos sa {rate}% nga success rate.", - "exerciseUnlockHintTrainerMixSuffix": "Ang daan nga bokabularyo hinay-hinay nga gisagol.", - "trainerStartWithReview": "Sugdi sa bag-ong bokabularyo niining leksiyona. Samtang nagpraktis ka, awtomatikong isagol sa trainer ang angay nga balik-balik.", - "startLesson": "Sugdi ang leksiyon", - "trainerProgressNewContent": "Bag-ong sulod: {current}/{target}", - "trainerProgressReview": "Balik-balik: {count}", - "trainerProgressMixShare": "Nasagol nga bahin: {percent}%", - "unknownExerciseTypeNotice": "Kini nga matang sa ehersisyo wala pa ipakita nga interaktibo sa kasamtangang view.", - "unknownExerciseTypeLabel": "Matang: {type}", - "lessonReviewHeadlineDone": "Nakaabot na kini nga leksiyon sa libre nga pagpalalom.", - "lessonReviewHeadlineDue": "Angay na karon kining review wave.", - "lessonReviewHeadlineScheduled": "Gitakda kini nga leksiyon para sa sunod nga review wave.", - "lessonReviewHintDone": "Nahuman na ang 1/3/7 ka adlaw nga balik-balik. Mahimo na nimo kining praktison sa mas luag nga paagi.", - "lessonReviewHintNextDue": "Sunod nga petsa: {due}.", - "reviewTimeNow": "karon", - "reviewTimeTomorrow": "ugma", - "reviewTimeInDays": "sulod sa {count} ka adlaw", - "resetLessonProgress": "I-reset ang leksiyon", - "resetLessonProgressConfirm": "I-reset ang pag-uswag niining leksiyona? Mawala ang natipig nga kahimtang, mga resulta sa ehersisyo ug sa trainer. Ang ubang leksiyon dili maapektuhan.", - "resetLessonProgressSuccess": "Na-reset na ang pag-uswag sa leksiyon.", - "resetLessonProgressError": "Dili ma-reset ang leksiyon." - } } - } } diff --git a/frontend/src/i18n/locales/es/blog.json b/frontend/src/i18n/locales/es/blog.json index 6ec6d97..4fe4306 100644 --- a/frontend/src/i18n/locales/es/blog.json +++ b/frontend/src/i18n/locales/es/blog.json @@ -1,11 +1,61 @@ { - "blog": { + "blog": { "posts": "Publicaciones", "noPosts": "No hay publicaciones.", "newPost": "Escribir nueva publicación", - "title": "Blog", + "title": "Título", "publish": "Publicar", "pickImage": "Seleccionar imagen", - "uploadImage": "Subir imagen" + "uploadImage": "Subir imagen", + "list": { + "eyebrow": "Blogs de la comunidad", + "title": "Blogs", + "intro": "Artículos, avances de proyectos y miradas personales de la comunidad YourPart.", + "create": "Crear nuevo blog", + "loading": "Cargando…", + "empty": "No se han encontrado blogs.", + "by": "por", + "unknownAuthor": "Desconocido", + "open": "Ir al blog", + "fallbackExcerpt": "Entradas públicas, ideas y avances de proyectos de la comunidad." + }, + "view": { + "loading": "Cargando…", + "edit": "Editar", + "entriesCount": "{count} entradas", + "empty": "No hay entradas.", + "fallbackDescription": "Blog público de la comunidad en YourPart.", + "notFoundTitle": "Blog no encontrado | YourPart", + "notFoundDescription": "No se pudo cargar el blog solicitado." + }, + "editor": { + "createTitle": "Crear blog", + "editTitle": "Editar blog", + "description": "Descripción", + "visibility": "Visibilidad", + "visibilityPublic": "Público", + "visibilityLoggedIn": "Solo usuarios con sesión iniciada", + "ageRange": "Rango de edad", + "gender": "Género", + "genderMale": "Masculino", + "genderFemale": "Femenino", + "save": "Guardar", + "newPostTitle": "Nueva entrada", + "addPost": "Añadir entrada", + "shareTitle": "Compartir blog", + "url": "URL", + "copyLink": "Copiar enlace", + "shareToFriends": "Enviar a amigos", + "emailAddresses": "Direcciones de correo (separadas por comas)", + "send": "Enviar", + "restrictedHint": "Nota: este blog no es público. Los destinatarios pueden necesitar iniciar sesión y permisos de edad/género adecuados.", + "invalidAgeRange": "Rango de edad no válido", + "copySuccess": "Enlace copiado", + "copyError": "No se pudo copiar", + "shareError": "Error al compartir", + "emailError": "Error al enviar el correo", + "friendsSent": "Enviado a {count} amigo(s).", + "emailsSent": "{count} correo(s) enviado(s)." } + } } diff --git a/frontend/src/i18n/locales/es/falukant.json b/frontend/src/i18n/locales/es/falukant.json index 0619a54..3307353 100644 --- a/frontend/src/i18n/locales/es/falukant.json +++ b/frontend/src/i18n/locales/es/falukant.json @@ -37,6 +37,9 @@ }, "notifications": { "notify_election_created": "Se ha convocado una nueva elección.", + "director_death": "{characterName} ha fallecido a la edad de {ageYears} años. Como empleador debes nombrar un nuevo director.{regionLabel}{spouses}{children}{lovers}", + "relationship_death": "{characterName} ha fallecido a la edad de {ageYears} años.{regionLabel}{spouses}{children}{lovers}", + "child_death": "Tu hijo/a {characterName} ha fallecido a la edad de {ageYears} años.{regionLabel}", "production": { "overproduction": "Sobreproducción: tu producción está un {value}% por encima de la demanda." }, @@ -118,12 +121,22 @@ }, "overview": { "title": "Falukant - Resumen", + "heroIntro": "Tu situación en economía, familia y patrimonio, de un vistazo.", + "heirSelection": { + "title": "Elección de heredero", + "description": "Tu personaje anterior ya no está disponible. Elige un heredero de la lista para seguir jugando.", + "loading": "Cargando posibles herederos…", + "noHeirs": "No hay herederos disponibles.", + "select": "Elegir como personaje", + "error": "Error al elegir al heredero." + }, "metadata": { "title": "Datos personales", "name": "Nombre", "money": "Patrimonio", "age": "Edad", "years": "años", + "days": "días", "mainbranch": "Ciudad natal", "nobleTitle": "Rango", "certificate": "Certificado" @@ -171,6 +184,16 @@ "two_of": "Al menos dos condiciones de estatus" } }, + "summary": { + "certificateHint": "Determina qué categorías de producto puedes fabricar ahora.", + "branches": "Sucursales", + "branchesHint": "Acceso directo a tus principales ubicaciones.", + "productions": "Producciones activas", + "productionsHint": "Producciones en curso que pronto requieren conclusión o control.", + "stock": "Posiciones de almacén", + "stockHint": "Vista resumida del inventario en todas las regiones.", + "open": "Abrir" + }, "productions": { "title": "Producciones" }, @@ -196,6 +219,8 @@ "toddler": "niño pequeño", "child": "niño", "adolescence": "joven", + "teen": "jovencito", + "youngAdult": "joven adulto", "adult": "hombre", "mature": "señor", "elder": "anciano" @@ -205,6 +230,8 @@ "toddler": "niña pequeña", "child": "niña", "adolescence": "joven", + "teen": "jovencita", + "youngAdult": "joven adulta", "adult": "mujer", "mature": "señora", "elder": "anciana" @@ -256,6 +283,8 @@ }, "branch": { "title": "Sucursal", + "heroEyebrow": "Sucursal", + "heroIntro": "Producción, almacén, venta y transporte en un panel ligado al mundo del juego.", "debtorsPrison": { "branchLocked": "En la prisión por deudas se bloquean los nuevos pasos económicos. Las sucursales cerradas o embargadas también se reflejarán aquí.", "branchRisk": "Tu mora pone en peligro sucursales, vehículos y mercancías almacenadas.", @@ -393,7 +422,10 @@ "current": "Producciones en curso", "product": "Producto", "remainingTime": "Tiempo restante (segundos)", - "noProductions": "No hay producciones en curso." + "noProductions": "No hay producciones en curso.", + "status": "Estado", + "sleep": "En pausa", + "active": "Activo" }, "columns": { "city": "Ciudad", @@ -792,6 +824,23 @@ "time": "Hora", "prev": "Anterior", "next": "Siguiente", + "graph": { + "open": "Mostrar evolución", + "title": "Evolución del dinero", + "close": "Cerrar", + "loading": "Cargando historial…", + "noData": "No hay movimientos en el periodo seleccionado.", + "yesterday": "Ayer", + "range": { + "label": "Periodo", + "today": "Hoy", + "24h": "Últimas 24 horas", + "week": "Última semana", + "month": "Último mes", + "year": "Último año", + "all": "Todo el historial" + } + }, "activities": { "Product sale": "Productos vendidos", "Production cost": "Costes de producción", @@ -882,7 +931,8 @@ "apathetic": "Apático", "relieved": "Aliviado", "proud": "Orgulloso", - "ashamed": "Avergonzado" + "ashamed": "Avergonzado", + "calm": "Tranquilo" }, "character": { "brave": "Valiente", @@ -1027,7 +1077,34 @@ "reputation": { "title": "Reputación", "overview": { - "title": "Resumen" + "title": "Resumen", + "current": "Reputación actual" + }, + "actions": { + "title": "Acciones de reputación", + "description": "Puedes realizar distintas acciones para mejorar tu reputación.", + "none": "No hay acciones de reputación disponibles.", + "action": "Acción", + "cost": "Coste", + "gain": "Ganancia", + "timesUsed": "Usado", + "execute": "Ejecutar", + "running": "En curso…", + "dailyLimit": "Límite diario: quedan {remaining} de {cap} acciones", + "cooldown": "Enfriamiento: aún {minutes} minutos", + "type": { + "soup_kitchen": "Comedor social", + "library_donation": "Donación a la biblioteca", + "scholarships": "Becas", + "church_hospice": "Hospicio eclesiástico", + "school_funding": "Financiación escolar", + "orphanage_build": "Construir orfanato", + "bridge_build": "Construir puente", + "hospital_donation": "Donación al hospital", + "patronage": "Mecenazgo", + "statue_build": "Erigir estatua", + "well_build": "Construir pozo" + } }, "party": { "title": "Fiestas", @@ -1078,6 +1155,17 @@ }, "church": { "title": "Iglesia", + "offices": { + "lay-preacher": "Predicador laico", + "village-priest": "Párroco del pueblo", + "parish-priest": "Párroco", + "dean": "Decano", + "archdeacon": "Arcediano", + "bishop": "Obispo", + "archbishop": "Arzobispo", + "cardinal": "Cardenal", + "pope": "Papa" + }, "tabs": { "baptism": "Bautizos", "current": "Cargos actuales", @@ -1254,7 +1342,12 @@ "drunkOfLife": "Elixir de la vida", "barber": "Barbero" }, - "choose": "Por favor, selecciona" + "choose": "Por favor, selecciona", + "errors": { + "tooClose": "No puedes aplicar medidas tan a menudo.", + "generic": "Se ha producido un error." + }, + "nextMeasureAt": "Próxima medida a partir de" }, "politics": { "title": "Política", @@ -1264,6 +1357,10 @@ "upcoming": "Cargos pendientes de (re)elección", "elections": "Elecciones" }, + "bookmarkCandidate": "Recordar esta candidatura", + "voteError": "Error al emitir el voto", + "voteAllError": "Error al emitir los votos", + "applyError": "No se pudo enviar la candidatura.", "benefits": { "daily_salary": "Estipendio diario (una vez al día): {amount}", "tax_exemption": "Exención fiscal: {regions}", @@ -1326,9 +1423,13 @@ "region": "Región", "date": "Fecha", "candidacy": "Candidatura", + "candidacyWithAge": "Candidatura (desde 16 años)", "none": "No hay cargos abiertos.", - "apply": "Presentarse a los cargos seleccionados" + "apply": "Presentarse a los cargos seleccionados", + "minAgeHint": "La candidatura solo es posible a partir de 16 años.", + "ageRequirement": "Para todos los cargos políticos: candidatura solo a partir de 16 años." }, + "too_young": "Tu personaje es demasiado joven. La candidatura solo es posible a partir de 16 años.", "upcoming": { "office": "Cargo", "region": "Región", diff --git a/frontend/src/i18n/locales/es/minigames.json b/frontend/src/i18n/locales/es/minigames.json index 8774483..370c417 100644 --- a/frontend/src/i18n/locales/es/minigames.json +++ b/frontend/src/i18n/locales/es/minigames.json @@ -32,7 +32,13 @@ "totalScore": "Puntuación total", "totalStars": "Estrellas totales", "levelsCompleted": "Niveles completados", - "restartCampaign": "Reiniciar campaña" + "restartCampaign": "Reiniciar campaña", + "nextStep": "Siguiente paso", + "objectivesCollapse": "Ocultar objetivos", + "objectivesShow": "Mostrar objetivos", + "objectives": "Objetivos", + "loadingBoard": "Preparando el tablero…", + "loadingHint": "Sincronizando datos del nivel, objetivos y disposición del campo." }, "taxi": { "title": "Taxi Simulator", @@ -64,6 +70,34 @@ "refuel": "Repostar", "startEngine": "Arrancar motor", "stopEngine": "Parar motor", + "controls": "Controles", + "accelerate": "Acelerar", + "brake": "Frenar", + "steerRight": "Girar a la derecha", + "steerLeft": "Girar a la izquierda", + "goals": "Objetivos", + "avoidCollisions": "Evita colisiones con otros vehículos", + "streetNames": "Nombres de calles", + "remainingVehicles": "Vehículos restantes", + "fuelTitle": "Combustible", + "pointsTitle": "Puntos", + "speedViolations": "Infracciones de velocidad", + "redLightsPassed": "Semáforos en rojo saltados", + "highscore": "Récords", + "topPlayers": "Top 20 jugadores", + "loadingHighscore": "Cargando récords…", + "noHighscore": "Aún no hay récords", + "pointsShort": "pts", + "backToGame": "Volver al juego", + "minimap": "Minimapa", + "loadedPassengers": "Pasajeros a bordo", + "waitingPassengers": "Pasajeros en espera", + "noPassengersInTaxi": "No hay pasajeros en el taxi", + "noWaitingPassengers": "No hay pasajeros esperando", + "name": "Nombre", + "destination": "Destino", + "bonus": "Bonificación", + "time": "Tiempo", "crash": { "title": "¡Accidente!", "message": "¡Has tenido un accidente! Choques: {crashes}" diff --git a/frontend/src/i18n/locales/es/passwordReset.json b/frontend/src/i18n/locales/es/passwordReset.json index 8e89ce5..003a676 100644 --- a/frontend/src/i18n/locales/es/passwordReset.json +++ b/frontend/src/i18n/locales/es/passwordReset.json @@ -1,9 +1,13 @@ { - "passwordReset": { - "title": "Restablecer contraseña", - "email": "E-Mail", + "passwordReset": { + "title": "Restablecer contraseña", + "email": "Correo electrónico", "reset": "Restablecer", - "success": "Si el correo electrónico existe, se ha enviado una guía para restablecer la contraseña.", - "failure": "No se pudo restablecer la contraseña. Inténtalo de nuevo más tarde." + "success": "Si el correo existe, se ha enviado una guía para restablecer la contraseña.", + "failure": "No se pudo restablecer la contraseña. Inténtalo de nuevo más tarde.", + "emailHint": "Enviaremos el enlace a la dirección de correo registrada.", + "validation": { + "invalidEmail": "Introduce una dirección de correo válida." } + } } diff --git a/frontend/src/i18n/locales/es/register.json b/frontend/src/i18n/locales/es/register.json index c3e17f3..801db35 100644 --- a/frontend/src/i18n/locales/es/register.json +++ b/frontend/src/i18n/locales/es/register.json @@ -1,21 +1,29 @@ { - "register": { - "title": "Registrarse", - "email": "Dirección de correo electrónico", - "username": "Nombre de usuario", - "password": "Contraseña", - "repeatPassword": "Repetir contraseña", - "language": "Idioma", - "languages": { - "en": "Inglés", - "de": "Alemán" - }, - "register": "Registrarse", - "close": "Cerrar", - "failure": "Se ha producido un error.", - "success": "Te has registrado correctamente. Revisa tu correo electrónico para activar tu cuenta.", - "passwordMismatch": "Las contraseñas no coinciden.", - "emailinuse": "La dirección de correo electrónico ya está en uso.", - "usernameinuse": "El nombre de usuario no está disponible." + "register": { + "title": "Registrarse en yourPart", + "email": "Dirección de correo electrónico", + "username": "Nombre de usuario", + "password": "Contraseña", + "repeatPassword": "Repetir contraseña", + "language": "Idioma", + "languages": { + "en": "Inglés", + "de": "Alemán", + "ceb": "Bisaya", + "es": "Español" + }, + "register": "Registrarse", + "close": "Cerrar", + "failure": "Se ha producido un error.", + "success": "Te has registrado correctamente. Revisa tu correo para activar tu cuenta.", + "passwordMismatch": "Las contraseñas no coinciden.", + "emailinuse": "La dirección de correo ya está en uso.", + "usernameinuse": "El nombre de usuario no está disponible.", + "validation": { + "invalidEmail": "Introduce una dirección de correo válida.", + "usernameTooShort": "El nombre de usuario debe tener al menos 3 caracteres.", + "passwordHint": "Al menos 8 caracteres.", + "passwordTooShort": "La contraseña es demasiado corta." } + } } diff --git a/frontend/src/i18n/locales/es/settings.json b/frontend/src/i18n/locales/es/settings.json index 22990f0..66cbb48 100644 --- a/frontend/src/i18n/locales/es/settings.json +++ b/frontend/src/i18n/locales/es/settings.json @@ -142,6 +142,8 @@ }, "account": { "title": "Account", + "heroEyebrow": "Ajustes", + "heroIntro": "Gestiona nombre de usuario, correo, contraseña y visibilidad en un solo lugar.", "username": "Nombre de usuario", "email": "Dirección de correo electrónico", "newpassword": "Contraseña", @@ -151,6 +153,15 @@ "showinsearch": "Mostrar en búsquedas de usuarios", "changeaction": "Actualizar datos de usuario", "oldpassword": "Contraseña anterior (obligatoria)", + "validation": { + "newPasswordTooShort": "La nueva contraseña debe tener al menos 8 caracteres.", + "passwordMismatch": "Las contraseñas no coinciden.", + "oldPasswordRequired": "Se necesita la contraseña actual para cambiarla." + }, + "feedback": { + "saved": "Los ajustes de la cuenta se guardaron correctamente.", + "saveError": "Se produjo un error al guardar los ajustes de la cuenta." + }, "adultAccessTitle": "Área erótica", "adultAccessIntro": "El área erótica está destinada solo a usuarios adultos y además requiere aprobación de moderación.", "requestAdultVerification": "Solicitar acceso", @@ -218,6 +229,10 @@ "AdultsOnly": "Solo adultos", "All": "Mostrar a todos" }, + "feedback": { + "updateError": "No se pudo guardar el cambio.", + "visibilityUpdateError": "No se pudo actualizar la visibilidad." + }, "flirt": { "title": "Flirt" },