- Translate all user-facing text to Turkish across dietitian.js,
trainer.js, shopping.js, and index.html
- Fix meal plan not rendering: add frontend-compatible fields
(macros, meals, recommended_water_liters) to diet plan response
- Translate meal types, diet types, day names, medical notes,
supplements, tips, injury notes, workout titles
- Translate shopping list categories
- Translate login/register Email labels to E-posta
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
{name:"Brisk Walking",name_tr:"Tempolu Yuruyus",duration:"20 minutes",gif:gifUrl("Brisk Walking"),instructions:["Walk at comfortable but brisk pace","Swing arms naturally","Breathe rhythmically"],notes:"Target 3000-4000 steps"},
{name:"Diaphragmatic Breathing",name_tr:"Diyafram Nefesi",duration:"5 minutes",gif:gifUrl("Diaphragmatic Breathing"),instructions:["Sit or lie comfortably","Breathe in through nose 4 seconds","Hold 4 seconds","Exhale through mouth 6 seconds"],notes:"Stress relief and relaxation"},
{name:"Gentle Full Body Stretch",name_tr:"Hafif Tum Vucut Germe",duration:"5 minutes",gif:gifUrl("Gentle Full Body Stretch"),instructions:["Stretch neck, shoulders, arms, back, legs","Hold each stretch 15-20 seconds","No bouncing"],notes:"Improve flexibility"},
{name:"Joint Circles",name_tr:"Eklem Civirleri",duration:"5 minutes",gif:gifUrl("Joint Circles"),instructions:["Circle ankles, knees, hips, shoulders, wrists","10 circles each direction","Gentle and controlled"],notes:"Warm up all joints"},
{name:"Yoga-Inspired Stretching",name_tr:"Yoga Tarzinda Germe",duration:"15 minutes",gif:gifUrl("Yoga Stretching"),instructions:["Cat-cow stretch","Child's pose","Downward dog or modified version","Seated forward fold","Gentle twist"],notes:"Focus on breathing and relaxation"},
{name:"Box Breathing",name_tr:"Kutu Nefesi",duration:"5 minutes",gif:gifUrl("Box Breathing"),instructions:["Breathe in 4 seconds","Hold 4 seconds","Breathe out 4 seconds","Hold 4 seconds"],notes:"Calming technique"},
{name:"Yoga Tarzinda Germe",name_tr:"Yoga Tarzinda Germe",duration:"15 dakika",gif:gifUrl("Yoga Stretching"),instructions:["Kedi-inek germesi","Cocuk pozu","Asagi bakan kopek veya modifiye versiyon","Oturarak one egilme","Hafif bükülme"],notes:"Nefes ve rahatlamaya odaklanin"},
{day:3,name:"Day 3 - Light Walk & Core",type:"light_activity",focus:"Walking & Core Stability",estimated_duration:30,estimated_calories:70,activities:[
{name:"Outdoor or Indoor Walking",name_tr:"Yuruyus",duration:"15 minutes",gif:gifUrl("Walking"),instructions:["Moderate pace","Focus on posture","Keep shoulders back"],notes:"Target 2000-3000 steps"},
{name:"Gentle Core Work",name_tr:"Hafif Core Calismasi",duration:"10 minutes",gif:gifUrl("Gentle Core Work"),instructions:["Dead bugs 10 each side","Bird dog 10 each side","Gentle pelvic tilts 15 reps","Modified plank 15-20 seconds"],notes:"Low intensity core activation"},
{name:"Progressive Muscle Relaxation",name_tr:"Kademeli Kas Gevsetme",duration:"5 minutes",gif:gifUrl("Progressive Muscle Relaxation"),instructions:["Tense each muscle group 5 seconds","Release and relax 10 seconds","Work from toes to head"],notes:"Stress and tension relief"},
{day:3,name:"Gun 3 - Hafif Yuruyus & Core",type:"light_activity",focus:"Yuruyus & Core Stabilitesi",estimated_duration:30,estimated_calories:70,activities:[
{name:"Dis veya Ic Mekan Yuruyusu",name_tr:"Yuruyus",duration:"15 dakika",gif:gifUrl("Walking"),instructions:["Orta tempo","Durusa odaklanin","Omuzlari geride tutun"],notes:"Hedef 2000-3000 adim"},
{name:"Hafif Core Calismasi",name_tr:"Hafif Core Calismasi",duration:"10 dakika",gif:gifUrl("Gentle Core Work"),instructions:["Dead bug her taraf 10 tekrar","Bird dog her taraf 10 tekrar","Hafif pelvik tilt 15 tekrar","Modifiye plank 15-20 saniye"],notes:"Dusuk yogunluklu core aktivasyonu"},
{name:"Kademeli Kas Gevsetme",name_tr:"Kademeli Kas Gevsetme",duration:"5 dakika",gif:gifUrl("Progressive Muscle Relaxation"),instructions:["Her kas grubunu 5 saniye kasin","Birakin ve 10 saniye gevsetin","Ayak parmaklarindan basa dogru calisin"],notes:"Stres ve gerilim giderme"},
{name:"Gentle Walking",name_tr:"Hafif Yuruyus",duration:"10 minutes",gif:gifUrl("Gentle Walking"),instructions:["Very easy pace","Focus on environment","Practice mindful walking"],notes:"Light movement only"},
{name:"4-7-8 Breathing",name_tr:"4-7-8 Nefes",duration:"5 minutes",gif:gifUrl("4-7-8 Breathing"),instructions:["Inhale through nose 4 seconds","Hold breath 7 seconds","Exhale through mouth 8 seconds","Repeat 4-8 cycles"],notes:"Promotes relaxation and sleep quality"},
{name:"Gentle Neck & Shoulder Release",name_tr:"Boyun ve Omuz Gevsetme",duration:"5 minutes",gif:gifUrl("Neck Shoulder Release"),instructions:["Neck tilts each direction","Shoulder rolls forward and back","Shoulder shrugs and release"],notes:"Release common tension areas"},
{name:"Boyun ve Omuz Gevsetme",name_tr:"Boyun ve Omuz Gevsetme",duration:"5 dakika",gif:gifUrl("Neck Shoulder Release"),instructions:["Her yone boyun egilmeleri","Ileri geri omuz civirma","Omuz kaldirma ve birakmalar"],notes:"Yaygin gerilim bolgelerini gevsetin"},
{name:"Brisk Walking",name_tr:"Tempolu Yuruyus",duration:"20 minutes",gif:gifUrl("Brisk Walking"),instructions:["Moderate to brisk pace","Include some hills or inclines if possible","Maintain good posture"],notes:"Target 3000-4000 steps"},
{name:"Standing Stretches",name_tr:"Ayakta Germe",duration:"10 minutes",gif:gifUrl("Standing Stretches"),instructions:["Calf stretch against wall","Quad stretch holding chair","Hamstring stretch on step","Side bend stretch","Chest opener stretch"],notes:"Focus on areas that feel tight"},
{name:"Gentle Walk",name_tr:"Hafif Yuruyus",duration:"10 minutes",gif:gifUrl("Gentle Walk"),instructions:["Very easy pace","Enjoy the environment","No intensity targets"],notes:"Optional - only if you feel up to it"},
{name:"Body Scan Meditation",name_tr:"Vucut Tarama Meditasyonu",duration:"5 minutes",gif:gifUrl("Body Scan Meditation"),instructions:["Lie down or sit comfortably","Mentally scan from toes to head","Notice sensations without judgment","Breathe into any tense areas"],notes:"Mindfulness and recovery"},
{day:7,name:"Gun 7 - Dinlenme & Toparlanma",type:"light_activity",focus:"Tam Dinlenme & Oz Bakim",estimated_duration:15,estimated_calories:20,activities:[
{name:"Hafif Yuruyus",name_tr:"Hafif Yuruyus",duration:"10 dakika",gif:gifUrl("Gentle Walk"),instructions:["Cok kolay tempo","Cevrenin tadini cikarin","Yogunluk hedefi yok"],notes:"Istege bagli - sadece kendinizi hazir hissediyorsaniz"},
{name:"Vucut Tarama Meditasyonu",name_tr:"Vucut Tarama Meditasyonu",duration:"5 dakika",gif:gifUrl("Body Scan Meditation"),instructions:["Uzanin veya rahatca oturun","Ayak parmaklarindan basa zihinsel tarama yapin","Yargilamadan hislere dikkat edin","Gergin bolgelere nefes gonderin"],notes:"Farkindalik ve toparlanma"},
]},
],
wheelchair:[
{day:1,name:"Day 1 - Upper Body Seated",type:"light_activity",focus:"Seated Upper Body Movement",estimated_duration:25,estimated_calories:50,activities:[
{name:"Seated Arm Circles",name_tr:"Oturarak Kol Civirme",duration:"5 minutes",gif:gifUrl("Seated Arm Circles"),instructions:["Small circles forward 20 reps","Small circles backward 20 reps","Large circles forward 10 reps","Large circles backward 10 reps"],notes:"Warm up shoulders"},
{name:"Seated Chest Press Motion",name_tr:"Oturarak Gogus Press",duration:"10 minutes",gif:gifUrl("Seated Chest Press Motion"),instructions:["Push hands forward from chest","Light resistance band if available","15-20 reps, 2-3 sets","Rest 30 seconds between sets"],notes:"Upper body strengthening"},
{name:"Seated Deep Breathing",name_tr:"Oturarak Derin Nefes",duration:"5 minutes",gif:gifUrl("Seated Deep Breathing"),instructions:["Sit tall","Breathe deeply into belly","Exhale slowly","Focus on posture"],notes:"Respiratory health"},
{name:"Upper Body Stretch",name_tr:"Ust Vucut Germe",duration:"5 minutes",gif:gifUrl("Upper Body Stretch"),instructions:["Overhead reach","Cross-body shoulder stretch","Triceps stretch","Chest opener"],notes:"Flexibility maintenance"},
{name:"Oturarak Kol Civirme",name_tr:"Oturarak Kol Civirme",duration:"5 dakika",gif:gifUrl("Seated Arm Circles"),instructions:["Ileri kucuk daireler 20 tekrar","Geri kucuk daireler 20 tekrar","Ileri buyuk daireler 10 tekrar","Geri buyuk daireler 10 tekrar"],notes:"Omuzlari isitma"},
{name:"Oturarak Derin Nefes",name_tr:"Oturarak Derin Nefes",duration:"5 dakika",gif:gifUrl("Seated Deep Breathing"),instructions:["Dik oturun","Karna dogru derin nefes alin","Yavasca nefes verin","Durusa odaklanin"],notes:"Solunum sagligi"},
{name:"Seated Band Rows",name_tr:"Oturarak Bantli Row",duration:"8 minutes",gif:gifUrl("Seated Band Rows"),instructions:["Anchor band at chest height","Pull toward torso","Squeeze shoulder blades","12-15 reps, 2 sets"],notes:"Back strengthening"},
{name:"Seated Band Press",name_tr:"Oturarak Bantli Press",duration:"8 minutes",gif:gifUrl("Seated Band Press"),instructions:["Band behind back","Press forward","12-15 reps, 2 sets"],notes:"Chest and arm strengthening"},
{name:"Soguma Germe",name_tr:"Soguma Germe",duration:"4 dakika",gif:gifUrl("Seated Stretching"),instructions:["Calisan tum kas gruplarini gerin","Her birini 20-30 saniye tutun"],notes:"Toparlanma"},
{name:"Seated Arm Ergometer / Air Punches",name_tr:"Oturarak Kol Kardiyosu",duration:"15 minutes",gif:gifUrl("Seated Arm Cardio"),instructions:["Alternating arm punches","Arm cranking motion","Overhead reaches","Keep moderate pace"],notes:"Elevate heart rate safely"},
{name:"Seated Torso Twists",name_tr:"Oturarak Govde Dondurmesi",duration:"5 minutes",gif:gifUrl("Seated Torso Twists"),instructions:["Rotate torso left and right","Arms at chest level","Controlled movement"],notes:"Core engagement"},
{name:"Cool-Down",name_tr:"Soguma",duration:"5 minutes",gif:gifUrl("Seated Cool Down"),instructions:["Slow arm movements","Deep breathing","Gentle stretching"],notes:"Gradual recovery"},
{name:"Oturarak Kol Kardiyosu",name_tr:"Oturarak Kol Kardiyosu",duration:"15 dakika",gif:gifUrl("Seated Arm Cardio"),instructions:["Sirayla kol yumruklari","Kol cevirme hareketi","Basa dogru uzanmalar","Orta tempoyu koruyun"],notes:"Kalp atisini guvenle yukseltin"},
{name:"Optional Light Movement",name_tr:"Istege Bagli Hafif Hareket",duration:"5 minutes",gif:gifUrl("Optional Light Movement"),instructions:["Only if you feel like it","Gentle arm swings","Shoulder rolls"],notes:"Completely optional"},
{name:"Relaxation Breathing",name_tr:"Rahatlama Nefesi",duration:"5 minutes",gif:gifUrl("Relaxation Breathing"),instructions:["Long slow breaths","Focus on letting go of tension"],notes:"End the week relaxed"},
{day:7,name:"Gun 7 - Tam Dinlenme",type:"light_activity",focus:"Tam Toparlanma",estimated_duration:10,estimated_calories:10,activities:[
{name:"Istege Bagli Hafif Hareket",name_tr:"Istege Bagli Hafif Hareket",duration:"5 dakika",gif:gifUrl("Optional Light Movement"),instructions:["Sadece isterseniz","Hafif kol sallama","Omuz civirma"],notes:"Tamamen istege bagli"},
{name:"Gentle Range of Motion",name_tr:"Hafif Hareket Acikligi",duration:"10 minutes",gif:gifUrl("Gentle ROM"),instructions:["Move whatever joints feel comfortable","Very gentle circles and movements","Stop if any discomfort"],notes:"Maintain what mobility you have"},
{day:1,name:"Gun 1 - Hafif Mobilite",type:"light_activity",focus:"Hafif Hareket",estimated_duration:15,estimated_calories:20,activities:[
{name:"Oturarak Nefes Egzersizi",name_tr:"Oturarak Nefes",duration:"5 dakika",gif:gifUrl("Seated Breathing"),instructions:["Derin karin nefesleri","Yavas ve ritmik"],notes:"Temel egzersiz"},
{name:"Hafif Hareket Acikligi",name_tr:"Hafif Hareket Acikligi",duration:"10 dakika",gif:gifUrl("Gentle ROM"),instructions:["Rahat hissedilen eklemleri hareket ettirin","Cok hafif daireler ve hareketler","Rahatsizlik olursa durdurun"],notes:"Mevcut mobiliteyi koruyun"},
{name:"Progressive Breathing",name_tr:"Kademeli Nefes",duration:"10 minutes",gif:gifUrl("Progressive Breathing"),instructions:["Start with normal breaths","Gradually deepen inhales","Gradually lengthen exhales","4-7-8 pattern if comfortable"],notes:"Improve lung capacity"},
{name:"Body Awareness Scan",name_tr:"Vucut Farkindalik",duration:"5 minutes",gif:gifUrl("Body Awareness"),instructions:["Notice each body part","Release tension where found","Accept current state"],notes:"Mind-body connection"},
{name:"Supported Stretching",name_tr:"Destekli Germe",duration:"10 minutes",gif:gifUrl("Supported Stretching"),instructions:["Use pillows or supports as needed","Very gentle holds 10-15 seconds","Focus on comfortable range only"],notes:"Gentle flexibility work"},
{name:"Relaxation",name_tr:"Rahatlama",duration:"5 minutes",gif:gifUrl("Relaxation"),instructions:["Close eyes","Deep breathing","Progressive muscle relaxation where possible"],notes:"Recovery"},
{day:3,name:"Gun 3 - Hafif Germe",type:"light_activity",focus:"Hafif Esneklik",estimated_duration:15,estimated_calories:15,activities:[
{name:"Destekli Germe",name_tr:"Destekli Germe",duration:"10 dakika",gif:gifUrl("Supported Stretching"),instructions:["Gerektiginde yastik veya destek kullanin","Cok hafif tutmalar 10-15 saniye","Sadece rahat araliga odaklanin"],notes:"Hafif esneklik calismasi"},
{name:"Rahatlama",name_tr:"Rahatlama",duration:"5 dakika",gif:gifUrl("Relaxation"),instructions:["Gozleri kapatin","Derin nefes","Mumkun olan yerlerde kademeli kas gevsetme"],notes:"Toparlanma"},
{name:"Assisted Range of Motion",name_tr:"Yardimli Hareket Acikligi",duration:"10 minutes",gif:gifUrl("Assisted ROM"),instructions:["Use one limb to help the other if needed","Gentle passive stretching","Stay within comfort zone"],notes:"Maintain joint health"},
warmup.push({name:"Blood Sugar Check",duration:"1 min",notes:"Check blood sugar before exercise. Ensure it is between 100-250 mg/dL"});
warmup.push({name:"Kan Sekeri Kontrolu",duration:"1 dk",notes:"Egzersiz oncesi kan sekerini kontrol edin. 100-250 mg/dL arasinda oldugundan emin olun"});
tips.push("Desk worker: Stand up and move every hour. Include posture correction exercises.");
tips.push("Masa basi calisan: Her saat ayaga kalkin ve hareket edin. Durus duzeltme egzersizleri ekleyin.");
}
returntips;
@@ -712,28 +716,28 @@ function buildMedicalNotes(profile) {
constnotes=[];
if(profile.heart_condition){
notes.push("Heart condition: Low intensity only. No HIIT. Monitor heart rate and stay in safe zones (50-65% max HR). Stop if dizzy or chest pain.");
notes.push("Kalp rahatsizligi: Sadece dusuk yogunluk. HIIT yok. Kalp atisini izleyin ve guvenli bolgelerde kalin (maks KH %50-65). Bas donmesi veya gogus agrisi olursa durdurun.");
notes.push("Astim: Uzun isinma onemlidir. Inhalatoru yaninizda bulundurun. Soguk ortamlardan kacinin. Orta kardiyo yogunlugu.");
}
if(profile.has_diabetes){
notes.push("Diabetes: Check blood sugar before and after exercise. Include warm-up and cool-down. Avoid fasted training. Carry fast-acting sugar.");
notes.push("Diyabet: Egzersiz oncesi ve sonrasi kan sekerini kontrol edin. Isinma ve soguma dahil edin. Ac karnina antrenman yapmayin. Hizli etkili seker tasiyin.");
notes.push("Artrit: Sadece dusuk etkili egzersizler. Eklem dostu hareketler. Mumkunse yuzme/su egzersizlerini dusunun. Uzun isinmalar yardimci olur.");
}
if(profile.has_osteoporosis){
notes.push("Osteoporosis: Weight-bearing exercises are beneficial but avoid high impact. No trunk flexion exercises. Focus on balance to prevent falls.");
notes.push("Osteoporoz: Agirlik tasiyan egzersizler faydalıdir ama yuksek etkiden kacinin. Govde bukme egzersizi yapmayin. Dusmeleri onlemek icin dengeye odaklanin.");
}
if(profile.has_fibromyalgia){
notes.push("Fibromyalgia: Gentle, low-intensity exercises only. Focus on stretching and yoga-based movements. Listen to your body. Volume has been reduced.");
notes.push("Fibromiyalji: Sadece hafif, dusuk yogunluklu egzersizler. Germe ve yoga tabanli hareketlere odaklanin. Vucudunuzu dinleyin. Hacim azaltildi.");
}
if(profile.has_epilepsy){
notes.push("Epilepsy: Avoid exercises where falling could be dangerous (no heavy overhead lifts, no climbing). Train with a partner when possible.");
notes.push("Epilepsi: Dusmenin tehlikeli olabilecegi egzersizlerden kacinin (agir bas ustu kaldirma yok, tirmanma yok). Mumkun oldugunda bir partnerle antrenman yapin.");
}
returnnotes;
@@ -743,26 +747,26 @@ function buildInjuryNote(profile) {
constdescription=`${experience.charAt(0).toUpperCase()+experience.slice(1)} level ${workoutLocation} training program. Week ${normalizedWeek} of 4 (${mesocycleConfig.phase}).`;
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.