/* ============================================================
   Sara Akef, LANGUAGE LAYER
   One codebase, three locales. A page sets window.SA_LANG and
   window.SA_BASE before this file loads. Default is English.
   ============================================================ */
const SA_LANG = (window.SA_LANG === "fa" || window.SA_LANG === "pl") ? window.SA_LANG : "en";
const SA_RTL = SA_LANG === "fa";
const SA_BASE = window.SA_BASE || "";

/* asset paths, so a locale served from a subfolder still finds the media */
function A(p) { return (p && p.indexOf("http") !== 0) ? SA_BASE + p : p; }

/* Persian digits, used for years, counts and indexes in the fa build */
const FA_DIGITS = "۰۱۲۳۴۵۶۷۸۹";
function N(v) {
  const s = String(v == null ? "" : v);
  return SA_LANG === "fa" ? s.replace(/[0-9]/g, (d) => FA_DIGITS[d]) : s;
}

const SA_LANGS = [
  { code: "en", label: "English", short: "EN", href: "", ready: true },
  { code: "fa", label: "فارسی", short: "FA", href: "fa/", ready: true },
  { code: "pl", label: "Polski", short: "PL", href: "pl/", ready: true },
];

/* Polish inflects counts: 1 / 2 to 4 / everything else */
function plPl(n, one, few, many) {
  const t = n % 10, h = n % 100;
  if (n === 1) return one;
  if (t >= 2 && t <= 4 && (h < 10 || h >= 20)) return few;
  return many;
}

const SA_STRINGS = {
  en: {
    docTitle: "Sara Akef · Dancer, Choreographer, Performer",
    wordmark: "Sara Akef",
    listSep: ", ",
    navWork: "Work", navCredits: "Other work",
    navContact: "Contact", navEnquire: "Enquire",
    menuOpen: "Open menu", menuClose: "Close menu",
    themeUp: "Lights up", themeDown: "Lights down", themeLabel: "Appearance", themeAria: "Toggle light or dark theme",
    langLabel: "Language", langSoon: "coming soon",
    heroName: ["SARA", ["AK", "E", "F"]],
    heroEyebrow: "Dancer · Choreographer · Performer",
    ticker: ["Contemporary", "Physical Theatre", "Persian Dance", "Choreography", "Stage & Image"],
    introBig: ["The body, ", "amplified", "."],
    navTeaching: "Teaching",
    aboutHead: "About",
    trainingHead: "Training",
    workRightsK: "Work rights",
    teachHead: "Teaching",
    teachFor: "Who it is for",
    teachCta: "Enquire about classes",
    workHead: "Selected Work",
    disciplines: { All: "All", Theatre: "Theatre", Dance: "Dance", Choreography: "Choreography", Screen: "Screen" },
    photos: (n) => n + " photos",
    workEmpty: "No featured pieces in this category. See the full credits below.",
    creditsHead: "Other work",
    creditsCount: (n) => n + " more, 2019 to 2025",
    // range stays 2019 to 2025; the two new readings fall inside it
    creditsEmpty: "Everything in this category is featured above.",
    creditsNote: "Frequent collaborator, director Mozhgan Maghouli. International work at HighFest, Armenia.",
    footBig: ["LET’S", "WORK."],
    footAvail: "Performance, choreography, movement direction and teaching. Availability depends on the project, so get in touch to discuss dates.",
    footEnquiries: "Enquiries", footElsewhere: "Elsewhere",
    footSend: "Send an enquiry", footCv: "Download CV", footCvPick: "Choose a language",
    footRights: (y) => "© " + y + " Sara Akef · سارا عاکف",
    lbYear: "Year", lbType: "Type", lbDirector: "Director", lbWriter: "Writer",
    lbStaged: "Staged", lbCrew: "Crew",
    lbWatch: "Watch on YouTube", badgeVideo: "Video",
    lbBrowse: "Arrow keys to browse. Esc to close.", lbEsc: "Esc to close.",
    lbPrev: "Previous", lbNext: "Next", lbClose: "Close",
    eqTypes: ["Performance booking", "Choreography or movement direction", "Teaching or workshop", "Screen or modelling", "Press or other"],
    eqHead: "Enquire about Sara",
    eqSub: "Tell her about the project. She reads every message and replies personally.",
    eqName: "Your name *", eqNamePh: "Full name",
    eqEmail: "Email *", eqEmailPh: "you@company.com",
    eqOrg: "Company or production", eqOrgPh: "Optional",
    eqPhone: "Phone", eqPhonePh: "Optional, if you prefer a call",
    eqWhen: "Dates or timing", eqWhenPh: "Optional, for example rehearsals from March",
    eqMsg: "About the project *", eqMsgPh: "Role, production, venue, what you are looking for",
    eqSend: "Send enquiry", eqSending: "Sending",
    eqNote: "She is the only person who receives this. Or email",
    eqNoteTail: "directly.",
    eqErr: "That did not send. Please email",
    eqErrTail: "and it will reach her.",
    eqUnconfigured: "This form is not connected yet. For now please email",
    eqDoneHead: "Thank you",
    eqDone: (mail) => "Your enquiry has been sent to Sara. She replies to " + mail + " directly, usually within a few days.",
    eqCloseBtn: "Close",
  },
  fa: {
    docTitle: "سارا عاکف · رقصنده، طراح حرکت، پرفورمر",
    wordmark: "سارا عاکف",
    listSep: "، ",
    navWork: "آثار", navCredits: "سایر آثار",
    navContact: "تماس", navEnquire: "درخواست همکاری",
    menuOpen: "باز کردن منو", menuClose: "بستن منو",
    themeUp: "روشن", themeDown: "تاریک", themeLabel: "نمایش", themeAria: "تغییر تم روشن یا تاریک",
    langLabel: "زبان", langSoon: "به‌زودی",
    heroName: [["سار", "ا", ""], "عاکف"],
    heroEyebrow: "رقصنده · طراح حرکت · پرفورمر",
    ticker: ["معاصر", "تئاتر فیزیکال", "رقص ایرانی", "طراحی حرکت", "صحنه و تصویر"],
    introBig: ["بدن، ", "بلندتر از کلام", "."],
    navTeaching: "تدریس",
    aboutHead: "درباره",
    trainingHead: "آموزش",
    workRightsK: "مجوز کار",
    teachHead: "تدریس",
    teachFor: "برای چه کسانی",
    teachCta: "درخواست کلاس",
    workHead: "آثار منتخب",
    disciplines: { All: "همه", Theatre: "تئاتر", Dance: "رقص", Choreography: "طراحی حرکت", Screen: "تصویر" },
    photos: (n) => N(n) + " عکس",
    workEmpty: "اثر منتخبی در این دسته نیست. کارنامه کامل را پایین ببینید.",
    creditsHead: "سایر آثار",
    creditsCount: (n) => N(n) + " اثر دیگر، از ۱۳۹۸ تا ۱۴۰۴",
    creditsEmpty: "همه آثار این دسته بالاتر آمده‌اند.",
    creditsNote: "همکاری مستمر با مژگان معقولی. حضور بین‌المللی در جشنواره هایفست ارمنستان.",
    footBig: ["دعوت به", "همکاری"],
    footAvail: "اجرا، طراحی حرکت، کارگردانی حرکت و تدریس. زمان همکاری به پروژه بستگی دارد، برای هماهنگی تاریخ‌ها در تماس باشید.",
    footEnquiries: "تماس و همکاری", footElsewhere: "شبکه‌های اجتماعی",
    footSend: "ارسال درخواست", footCv: "دانلود رزومه", footCvPick: "انتخاب زبان",
    footRights: (y) => "© " + N(y - 621) + " سارا عاکف",
    lbYear: "سال", lbType: "نوع", lbDirector: "کارگردان", lbWriter: "نویسنده",
    lbStaged: "اجرا", lbCrew: "عوامل",
    lbWatch: "تماشا در یوتیوب", badgeVideo: "ویدیو",
    lbBrowse: "با کلیدهای جهت‌نما جابه‌جا شوید. Esc برای بستن.", lbEsc: "Esc برای بستن.",
    lbPrev: "قبلی", lbNext: "بعدی", lbClose: "بستن",
    eqTypes: ["اجرا", "طراحی یا کارگردانی حرکت", "تدریس یا ورکشاپ", "تصویر یا مدلینگ", "رسانه و سایر"],
    eqHead: "درخواست همکاری با سارا",
    eqSub: "درباره پروژه بنویسید. سارا همه پیام‌ها را می‌خواند و شخصاً پاسخ می‌دهد.",
    eqName: "نام شما *", eqNamePh: "نام و نام خانوادگی",
    eqEmail: "ایمیل *", eqEmailPh: "you@company.com",
    eqOrg: "گروه یا پروژه", eqOrgPh: "اختیاری",
    eqPhone: "تلفن", eqPhonePh: "اختیاری، اگر تماس تلفنی ترجیح می‌دهید",
    eqWhen: "تاریخ یا بازه زمانی", eqWhenPh: "اختیاری، مثلاً تمرین‌ها از اسفند",
    eqMsg: "درباره پروژه *", eqMsgPh: "نقش، پروژه، محل اجرا، آنچه دنبالش هستید",
    eqSend: "ارسال درخواست", eqSending: "در حال ارسال",
    eqNote: "فقط سارا این پیام را دریافت می‌کند. یا مستقیم ایمیل بزنید به",
    eqNoteTail: "",
    eqErr: "ارسال نشد. لطفاً ایمیل بزنید به",
    eqErrTail: "تا به دست سارا برسد.",
    eqUnconfigured: "این فرم هنوز متصل نیست. فعلاً لطفاً ایمیل بزنید به",
    eqDoneHead: "سپاسگزاریم",
    eqDone: (mail) => "درخواست شما برای سارا ارسال شد. پاسخ را مستقیم به " + mail + " می‌فرستد، معمولاً ظرف چند روز.",
    eqCloseBtn: "بستن",
  },
};
SA_STRINGS.pl = {
  docTitle: "Sara Akef · Tancerka, choreografka, performerka",
  wordmark: "Sara Akef",
  listSep: ", ",
  navWork: "Prace", navCredits: "Pozostałe prace",
  navContact: "Kontakt", navEnquire: "Napisz",
  menuOpen: "Otwórz menu", menuClose: "Zamknij menu",
  themeUp: "Jasny motyw", themeDown: "Ciemny motyw", themeLabel: "Wygląd", themeAria: "Przełącz tryb jasny lub ciemny",
  langLabel: "Język", langSoon: "wkrótce",
  heroName: ["SARA", ["AK", "E", "F"]],
  heroEyebrow: "Tancerka · Choreografka · Performerka",
  ticker: ["Taniec współczesny", "Teatr fizyczny", "Taniec perski", "Choreografia", "Scena i obraz"],
  introBig: ["Ciało, ", "głośniej niż słowa", "."],
  navTeaching: "Zajęcia",
  aboutHead: "O Sarze",
  trainingHead: "Wykształcenie",
  workRightsK: "Prawo do pracy",
  teachHead: "Zajęcia",
  teachFor: "Dla kogo",
  teachCta: "Zapytaj o zajęcia",
  workHead: "Wybrane prace",
  disciplines: { All: "Wszystko", Theatre: "Teatr", Dance: "Taniec", Choreography: "Choreografia", Screen: "Film" },
  photos: (n) => n + " " + plPl(n, "zdjęcie", "zdjęcia", "zdjęć"),
  workEmpty: "Brak wybranych prac w tej kategorii. Pełna lista poniżej.",
  creditsHead: "Pozostałe prace",
  creditsCount: (n) => "jeszcze " + n + " " + plPl(n, "realizacja", "realizacje", "realizacji") + ", od 2019 do 2025",
  creditsEmpty: "Wszystkie prace z tej kategorii są powyżej.",
  creditsNote: "Stała współpraca z reżyserką Mozhgan Maghouli. Występy międzynarodowe na festiwalu HighFest w Armenii.",
  footBig: ["PRACUJMY", "RAZEM."],
  footAvail: "Występy, choreografia, reżyseria ruchu i zajęcia. Dostępność zależy od projektu, więc napisz, żeby ustalić terminy.",
  footEnquiries: "Zapytania", footElsewhere: "W sieci",
  footSend: "Wyślij zapytanie", footCv: "Pobierz CV", footCvPick: "Wybierz język",
  footRights: (y) => "© " + y + " Sara Akef · سارا عاکف",
  lbYear: "Rok", lbType: "Rodzaj", lbDirector: "Reżyseria", lbWriter: "Tekst",
  lbStaged: "Miejsce", lbCrew: "Ekipa",
  lbWatch: "Zobacz na YouTube", badgeVideo: "Wideo",
  lbBrowse: "Strzałki, żeby przeglądać. Esc, żeby zamknąć.", lbEsc: "Esc, żeby zamknąć.",
  lbPrev: "Poprzednie", lbNext: "Następne", lbClose: "Zamknij",
  eqTypes: ["Angaż do spektaklu", "Choreografia lub reżyseria ruchu", "Zajęcia lub warsztat", "Film lub modeling", "Prasa i inne"],
  eqHead: "Zapytanie do Sary",
  eqSub: "Napisz o projekcie. Sara czyta każdą wiadomość i odpowiada osobiście.",
  eqName: "Imię i nazwisko *", eqNamePh: "Imię i nazwisko",
  eqEmail: "E-mail *", eqEmailPh: "ty@teatr.pl",
  eqOrg: "Teatr lub produkcja", eqOrgPh: "Opcjonalnie",
  eqPhone: "Telefon", eqPhonePh: "Opcjonalnie, jeśli wolisz rozmowę",
  eqWhen: "Terminy", eqWhenPh: "Opcjonalnie, na przykład próby od marca",
  eqMsg: "O projekcie *", eqMsgPh: "Rola, produkcja, miejsce, czego szukasz",
  eqSend: "Wyślij zapytanie", eqSending: "Wysyłanie",
  eqNote: "Wiadomość trafia tylko do Sary. Możesz też napisać na",
  eqNoteTail: "bezpośrednio.",
  eqErr: "Nie udało się wysłać. Napisz na",
  eqErrTail: "a wiadomość do niej dotrze.",
  eqUnconfigured: "Ten formularz nie jest jeszcze podłączony. Na razie napisz na",
  eqDoneHead: "Dziękujemy",
  eqDone: (mail) => "Twoje zapytanie zostało wysłane do Sary. Odpowie bezpośrednio na " + mail + ", zwykle w ciągu kilku dni.",
  eqCloseBtn: "Zamknij",
  notice: "Sara przeprowadza się do Polski. Jeszcze nie mówi po polsku, pracuje po angielsku i jest otwarta na współpracę.",
  noticeClose: "Zamknij komunikat",
};

const T = SA_STRINGS[SA_LANG] || SA_STRINGS.en;
function t(k) { const v = T[k]; return v === undefined ? SA_STRINGS.en[k] : v; }

/* Per credit Farsi copy. Titles live in profile.jsx as `fa`;
   these are the fields the English data cannot cover. */
/* Longer prose the profile holds in English only. */
const SA_PROSE_FA = {
  bioShort: "سارا عاکف رقصنده، طراح حرکت و پرفورمر است و در نقطه تلاقی رقص معاصر و تئاتر فیزیکال کار می‌کند. در {N} تولید در تهران و جشنواره هایفست ارمنستان اجرا کرده، بازی کرده و طراحی حرکت انجام داده است، از جمله اجراهای طولانی در پردیس تئاتر شهرزاد، نوفل لوشاتو، محراب و سنگلج. همکار مستمر کارگردان مژگان معقولی است و در فیلم کوتاه و موزیک ویدیو مقابل دوربین کار می‌کند.",
  workRights: "دارای مجوز کار لهستان",
  aboutFacts: [
    { k: "محل", v: "تهران، ایران · ورشو، لهستان" },
    { k: "زبان", v: "فارسی (مادری)، انگلیسی" },
  ],
  teachIntro: "سارا رقص معاصر، تئاتر فیزیکال و حرکت ایرانی تدریس می‌کند، در مدرسه و به صورت خصوصی. جلسات به شکل خصوصی، گروه کوچک، یا ورکشاپ برای گروهی که در حال آماده‌سازی یک اجراست برگزار می‌شود.",
  teachFormats: [
    { k: "خصوصی", v: "یک‌به‌یک، متناسب با هدفی که هنرجو دنبال می‌کند." },
    { k: "گروه کوچک", v: "دو تا شش نفر، جلسات منظم یا دوره کوتاه." },
    { k: "مدرسه", v: "تدریس کلاسی و ورکشاپ مهمان، حضوری." },
    { k: "ورکشاپ گروهی", v: "کار حرکتی با بازیگران در تمرین، متناسب با اجرا." },
  ],
  teachForWho: "رقصنده‌ها، بازیگرها و افراد کاملاً مبتدی. فارسی و انگلیسی.",
};

const SA_CREDIT_FA = {
  afsaneh:  { year:"۱۴۰۴", role:"طراح حرکت", kind:"تئاتر", venue:"سالن سنگلج، تهران", nights:"۲۰ شب اجرا", director:"مینو ملکی", writer:"مهرنوش بالمه" },
  hamelin:  { year:"۱۴۰۳", role:"طراح حرکت، بازیگر، پرفورمر", kind:"تئاتر", venue:"سالن نوفل لوشاتو، تهران", nights:"۲۸ شب اجرا", director:"مژگان معقولی", writer:"علی منصوری" },
  mazhna:   { year:"۱۴۰۲", role:"بازیگر، طراح حرکت", kind:"تئاتر", venue:"سالن شانو تهران و جشنواره هایفست ارمنستان", nights:"۲ شب اجرا", director:"مژگان معقولی" },
  tavahom:  { year:"۱۴۰۲", role:"رقصنده، طراح حرکت", kind:"رقص", venue:"سالن شانو تهران و جشنواره هایفست ارمنستان", nights:"۲ شب اجرا", director:"مژگان معقولی" },
  baron:    { year:"۱۴۰۲", role:"بازیگر", kind:"تئاتر", venue:"سالن اهورا، تهران", nights:"۱ شب اجرا", director:"مژگان معقولی", writer:"علی منصوری" },
  "hamelin-reading": { year:"۱۴۰۲", role:"بازیگر", kind:"نمایشنامه‌خوانی", venue:"سالن نوفل لوشاتو، تهران", nights:"۱ شب اجرا", director:"مژگان معقولی", writer:"علی منصوری" },
  rooz:     { year:"۱۴۰۲", role:"رقصنده", kind:"رقص", venue:"سالن ارغوان، تهران", nights:"۱ شب اجرا", director:"امید رهبر", writer:"ایوب آقاخانی" },
  beraghs:  { year:"۱۴۰۲", role:"رقصنده، طراح حرکت", kind:"موزیک ویدیو", venue:null, nights:null, credits_crew:"آهنگساز مهدی کرمی. میکس و مسترینگ میثم عبداللهی. طرح جلد پوریا پروین" },
  rahshiri: { year:"۱۴۰۱", role:"بازیگر، رقصنده", kind:"تئاتر", venue:"پردیس تئاتر شهرزاد تهران و سالن شهرداری لنگرود", nights:"۳۰ شب اجرا", director:"مژگان معقولی", writer:"محمدحسین کوداری" },
  adamak:   { year:"۱۴۰۱", role:"بازیگر، طراح حرکت", kind:"فیلم کوتاه", venue:"ایران", nights:null, director:"عرفان وحیدی", writer:"عرفان وحیدی" },
  shirin:   { year:"۱۴۰۱", role:"رقصنده، طراح حرکت", kind:"رقص", venue:"جشنواره هایفست، ارمنستان", nights:"۱ شب اجرا", director:"مژگان معقولی" },
  talkhak:  { year:"۱۴۰۰", role:"بازیگر، پرفورمر", kind:"تئاتر سنتی ایرانی", venue:"پردیس تئاتر شهرزاد، تهران", nights:"۲۲ شب اجرا", director:"محمد شایان طهماسب‌پور", writer:"داوود فتحعلی‌بیگی" },
  sahel:    { year:"۱۴۰۰", role:"پرفورمر، بازیگر، دستیار کارگردان", kind:"تئاتر", venue:"سالن محراب، تهران", nights:"۳۰ شب اجرا", director:"آزاده شمس", writer:"آزاده شمس" },
  hamechi:  { year:"۱۴۰۰", role:"پرفورمر", kind:"تئاتر", venue:"سالن مهرگان، تهران", nights:"۱ شب اجرا", director:"علی فرزانه", writer:"علی فرزانه" },
  plaza:    { year:"۱۳۹۹", role:"بازیگر", kind:"نمایشنامه‌خوانی", venue:"پردیس سپند، تهران", nights:"۱ شب اجرا", writer:"نیل سایمون" },
  salgard:  { year:"۱۳۹۸", role:"بازیگر", kind:"نمایشنامه‌خوانی", venue:"پردیس سپند، تهران", nights:"۱ شب اجرا" },
  setareha: { year:"۱۳۹۸", role:"پرفورمر", kind:"تئاتر", venue:"پردیس تئاتر شهرزاد، تهران", nights:"۳۰ شب اجرا", director:"مسعود نورزاده", writer:"مژده حقیقت" },
  general:  { year:"۱۳۹۸", role:"پرفورمر", kind:"تئاتر", venue:"سالن سپند، تهران", nights:"۱۵ شب اجرا", director:"منوچهر عبدی", writer:"منوچهر عبدی" },
  harfhayi: { year:"۱۳۹۸", role:"پرفورمر", kind:"نمایشنامه‌خوانی", venue:"سالن سپند، تهران", nights:"۱ شب اجرا", director:"محمدصادق سیادت", writer:"نیما جوادی" },
};


const SA_PROSE_PL = {
  bioShort: "Sara Akef jest tancerką, choreografką i performerką. Pracuje tam, gdzie taniec współczesny spotyka teatr fizyczny. W {N} produkcjach w Teheranie i na festiwalu HighFest w Armenii tańczyła, grała i tworzyła choreografię, w tym w długich seriach spektakli w Pardis Theatre Shahrzad, Nofel Loshato, Mehrab i Sangelaj. Stale współpracuje z reżyserką Mozhgan Maghouli, a przed kamerą pracuje przy filmach krótkometrażowych i teledyskach.",
  workRights: "Posiada zezwolenie na pracę w Polsce",
  aboutFacts: [
    { k: "Miejsce", v: "Teheran, Iran · Warszawa, Polska" },
    { k: "Języki", v: "perski (ojczysty), angielski" },
  ],
  teachIntro: "Sara uczy tańca współczesnego, teatru fizycznego i ruchu perskiego, w szkołach i prywatnie. Zajęcia odbywają się indywidualnie, w małych grupach lub jako warsztat dla zespołu przygotowującego spektakl.",
  teachFormats: [
    { k: "Indywidualne", v: "Jeden na jeden, wokół tego, nad czym pracuje tancerz." },
    { k: "Mała grupa", v: "Od dwóch do sześciu osób, zajęcia regularne lub krótki kurs." },
    { k: "Szkoły", v: "Zajęcia w klasie i warsztaty gościnne, na miejscu." },
    { k: "Warsztaty zespołowe", v: "Praca z ruchem dla obsady w trakcie prób, dopasowana do spektaklu." },
  ],
  teachForWho: "Tancerze, aktorzy i osoby zupełnie początkujące. Po persku i angielsku.",
};

const SA_CREDIT_PL = {
  afsaneh:  { title:"Poza legendą", role:"Choreografka", kind:"Teatr", venue:"Teatr Sangelaj, Teheran", nights:"20 spektakli" },
  hamelin:  { title:"Hamelin", role:"Choreografka, aktorka, performerka", kind:"Teatr", venue:"Nofel Loshato, Teheran", nights:"28 spektakli" },
  mazhna:   { title:"Marzena", role:"Aktorka, choreografka", kind:"Teatr", venue:"Shano Hall w Teheranie i festiwal HighFest w Armenii", nights:"2 spektakle" },
  tavahom:  { title:"Iluzja snu", role:"Tancerka, choreografka", kind:"Taniec", venue:"Shano Hall w Teheranie i festiwal HighFest w Armenii", nights:"2 spektakle" },
  baron:    { title:"Baron drzewołaz", role:"Aktorka", kind:"Teatr", venue:"Ahoura Hall, Teheran", nights:"1 spektakl" },
  "hamelin-reading": { title:"Hamelin, czytanie performatywne", role:"Aktorka", kind:"Czytanie performatywne", venue:"Nofel Loshato, Teheran", nights:"1 czytanie" },
  rooz:     { title:"Dzień wstaje", role:"Tancerka", kind:"Taniec", venue:"Arghavan Hall, Teheran", nights:"1 spektakl" },
  beraghs:  { title:"Tańcz!", role:"Tancerka, choreografka", kind:"Teledysk", credits_crew:"Muzyka Mehdi Karami. Miks i mastering Meysam Abdollahi. Okładka Pouria Parvin" },
  rahshiri: { title:"Droga Mleczna", role:"Aktorka, tancerka", kind:"Teatr", venue:"Pardis Theatre Shahrzad w Teheranie i sala miejska w Langrud", nights:"30 spektakli" },
  adamak:   { title:"Kukiełka", role:"Aktorka, choreografka", kind:"Film krótkometrażowy", venue:"Iran" },
  shirin:   { title:"Shirin", role:"Tancerka, choreografka", kind:"Taniec", venue:"Festiwal HighFest, Armenia", nights:"1 spektakl" },
  talkhak:  { title:"Talkhak i Ghandak", role:"Aktorka, performerka", kind:"Tradycyjny teatr irański", venue:"Pardis Theatre Shahrzad, Teheran", nights:"22 spektakle" },
  sahel:    { title:"Stalowy brzeg", role:"Performerka, aktorka, asystentka reżysera", kind:"Teatr", venue:"Mehrab Hall, Teheran", nights:"30 spektakli" },
  hamechi:  { title:"Wszystko jest w porządku", role:"Performerka", kind:"Teatr", venue:"Mehregan Hall, Teheran", nights:"1 spektakl" },
  plaza:    { title:"Apartament w hotelu Plaza", role:"Performerka", kind:"Czytanie performatywne", venue:"Sepand, Teheran", nights:"1 czytanie" },
  salgard:  { title:"Dwudziesta pierwsza rocznica", role:"Performerka", kind:"Czytanie performatywne", venue:"Sepand, Teheran", nights:"1 czytanie" },
  setareha: { title:"Gwiazdy milczą", role:"Performerka", kind:"Teatr", venue:"Pardis Theatre Shahrzad, Teheran", nights:"30 spektakli" },
  general:  { title:"Generał", role:"Performerka", kind:"Teatr", venue:"Sepand Hall, Teheran", nights:"15 spektakli" },
  harfhayi: { title:"Rzeczy, których jej nie powiedziałam", role:"Performerka", kind:"Czytanie performatywne", venue:"Sepand Hall, Teheran", nights:"1 spektakl" },
};

/* Return a credit with locale-correct fields and locale-correct asset paths. */
function L(c) {
  if (!c) return c;
  const stills = c.frames || [];
  const gallery = (c.poster ? [c.poster] : []).concat(stills);
  const framed = Object.assign({}, c, {
    frames: stills.map(A),
    galleryFrames: gallery.map(A),
    poster: c.poster ? A(c.poster) : null,
  });
  framed.fa = null;
  if (SA_LANG === "en") return framed;
  const table = SA_LANG === "fa" ? SA_CREDIT_FA : SA_CREDIT_PL;
  const o = table[c.id] || {};
  return Object.assign(framed, {
    title: (SA_LANG === "fa" ? c.fa : o.title) || o.title || c.title,
    year: o.year || N(c.year),
    role: o.role || c.role,
    kind: o.kind || c.kind,
    venue: o.venue !== undefined ? o.venue : c.venue,
    nights: o.nights !== undefined ? o.nights : c.nights,
    director: o.director || c.director,
    writer: o.writer || c.writer,
    credits_crew: o.credits_crew || c.credits_crew,
  });
}

/* Pull prose from the Farsi table when the Farsi build is running. */
function P(key, fallback) {
  const table = SA_LANG === "fa" ? SA_PROSE_FA : SA_LANG === "pl" ? SA_PROSE_PL : null;
  const v = table && table[key] !== undefined ? table[key] : fallback;
  if (typeof v !== "string" || v.indexOf("{N}") < 0) return v;
  const n = ((window.SARA_PROFILE || {}).credits || []).length;
  return v.replace("{N}", N(n));
}

Object.assign(window, { SA_LANG, SA_RTL, SA_BASE, SA_LANGS, SA_A: A, SA_N: N, SA_T: t, SA_L: L, SA_P: P });
