--- tags: - sport cssclasses: - wide-page --- ## Monday ```dataviewjs let workout = { "Bench press": 2, "T-Bar row": 2, "Barbell squat": 3, "Lateral dumbbell raise": 2, } let folderName = "03 - Sport/Exercises" let pages = Array.from(Object.keys(workout), ex => `"${folderName}/${ex}.md"`) let pagesAsStr = pages.join(" or ") let muscleGroups = [ "Name", "Forearms", "Biceps", "Triceps", "Front delts", "Side delts", "Rear delts", "Rotator cuff", "Upper traps", "Mid/lower traps", "Lats", "Upper pecs", "Lower pecs", "Abs", "Side abs", "Spine erectors", "Glutes", "Quads", "Hamstrings", "Leg adductors", "Leg abductors", "Calves" ] dv.table(muscleGroups, dv.pages(pagesAsStr) .map(ex => Array.from(muscleGroups, group => ex[group] > 0 ? ex[group]*workout[ex.name] : ex[group]))) let totals = muscleGroups.reduce((ac,a) => ({...ac,[a]:0}),{}); dv.pages(pagesAsStr) .map(ex => Array.from(muscleGroups, group => totals[group] += ex[group] > 0 ? ex[group]*workout[ex.name] : ex[group])) totals.Name = "Totals" dv.table(muscleGroups, [Object.values(totals)]) ``` ## Tuesday ```dataviewjs let workout = { "Pullup": 2, "Dip": 2, "Barbell military press": 2, "Leg press - wide stance": 2, } let folderName = "03 - Sport/Exercises" let pages = Array.from(Object.keys(workout), ex => `"${folderName}/${ex}.md"`) let pagesAsStr = pages.join(" or ") let muscleGroups = [ "Name", "Forearms", "Biceps", "Triceps", "Front delts", "Side delts", "Rear delts", "Rotator cuff", "Upper traps", "Mid/lower traps", "Lats", "Upper pecs", "Lower pecs", "Abs", "Side abs", "Spine erectors", "Glutes", "Quads", "Hamstrings", "Leg adductors", "Leg abductors", "Calves" ] dv.table(muscleGroups, dv.pages(pagesAsStr) .map(ex => Array.from(muscleGroups, group => ex[group] > 0 ? ex[group]*workout[ex.name] : ex[group]))) let totals = muscleGroups.reduce((ac,a) => ({...ac,[a]:0}),{}); dv.pages(pagesAsStr) .map(ex => Array.from(muscleGroups, group => totals[group] += ex[group])) totals.Name = "Totals" dv.table(muscleGroups, [Object.values(totals)]) ``` ## Wednesday ```dataviewjs let workout = { "Triceps overhead extension": 2, "Biceps dumbbell curl": 2, "Leg abduction machine": 2, "Leg adduction machine": 2, } let folderName = "03 - Sport/Exercises" let pages = Array.from(Object.keys(workout), ex => `"${folderName}/${ex}.md"`) let pagesAsStr = pages.join(" or ") let muscleGroups = [ "Name", "Forearms", "Biceps", "Triceps", "Front delts", "Side delts", "Rear delts", "Rotator cuff", "Upper traps", "Mid/lower traps", "Lats", "Upper pecs", "Lower pecs", "Abs", "Side abs", "Spine erectors", "Glutes", "Quads", "Hamstrings", "Leg adductors", "Leg abductors", "Calves" ] dv.table(muscleGroups, dv.pages(pagesAsStr) .map(ex => Array.from(muscleGroups, group => ex[group] > 0 ? ex[group]*workout[ex.name] : ex[group]))) let totals = muscleGroups.reduce((ac,a) => ({...ac,[a]:0}),{}); dv.pages(pagesAsStr) .map(ex => Array.from(muscleGroups, group => totals[group] += ex[group] > 0 ? ex[group]*workout[ex.name] : ex[group])) totals.Name = "Totals" dv.table(muscleGroups, [Object.values(totals)]) ``` ## Thursday ```dataviewjs let workout = { "Pushup": 3, "Cable row": 3, "Deadlift": 3, "Face pull": 3, } let folderName = "03 - Sport/Exercises" let pages = Array.from(Object.keys(workout), ex => `"${folderName}/${ex}.md"`) let pagesAsStr = pages.join(" or ") let muscleGroups = [ "Name", "Forearms", "Biceps", "Triceps", "Front delts", "Side delts", "Rear delts", "Rotator cuff", "Upper traps", "Mid/lower traps", "Lats", "Upper pecs", "Lower pecs", "Abs", "Side abs", "Spine erectors", "Glutes", "Quads", "Hamstrings", "Leg adductors", "Leg abductors", "Calves" ] dv.table(muscleGroups, dv.pages(pagesAsStr) .map(ex => Array.from(muscleGroups, group => ex[group] > 0 ? ex[group]*workout[ex.name] : ex[group]))) let totals = muscleGroups.reduce((ac,a) => ({...ac,[a]:0}),{}); dv.pages(pagesAsStr) .map(ex => Array.from(muscleGroups, group => totals[group] += ex[group] > 0 ? ex[group]*workout[ex.name] : ex[group])) totals.Name = "Totals" dv.table(muscleGroups, [Object.values(totals)]) ``` ## Friday ```dataviewjs let workout = { "Incline bench press": 2, "Lat pulldown": 2, "Leg extension machine": 2, "Leg curl machine": 2, } let folderName = "03 - Sport/Exercises" let pages = Array.from(Object.keys(workout), ex => `"${folderName}/${ex}.md"`) let pagesAsStr = pages.join(" or ") let muscleGroups = [ "Name", "Forearms", "Biceps", "Triceps", "Front delts", "Side delts", "Rear delts", "Rotator cuff", "Upper traps", "Mid/lower traps", "Lats", "Upper pecs", "Lower pecs", "Abs", "Side abs", "Spine erectors", "Glutes", "Quads", "Hamstrings", "Leg adductors", "Leg abductors", "Calves" ] dv.table(muscleGroups, dv.pages(pagesAsStr) .map(ex => Array.from(muscleGroups, group => ex[group] > 0 ? ex[group]*workout[ex.name] : ex[group]))) let totals = muscleGroups.reduce((ac,a) => ({...ac,[a]:0}),{}); dv.pages(pagesAsStr) .map(ex => Array.from(muscleGroups, group => totals[group] += ex[group] > 0 ? ex[group]*workout[ex.name] : ex[group])) totals.Name = "Totals" dv.table(muscleGroups, [Object.values(totals)]) ``` ## Saturday ```dataviewjs let workout = { "Chest press machine": 3, "High rows machine": 3, "Side delts machine": 3, "Leg press - narrow stance": 3, "Hip thrust": 3, "Calf machine raise": 3, } let folderName = "03 - Sport/Exercises" let pages = Array.from(Object.keys(workout), ex => `"${folderName}/${ex}.md"`) let pagesAsStr = pages.join(" or ") let muscleGroups = [ "Name", "Forearms", "Biceps", "Triceps", "Front delts", "Side delts", "Rear delts", "Rotator cuff", "Upper traps", "Mid/lower traps", "Lats", "Upper pecs", "Lower pecs", "Abs", "Side abs", "Spine erectors", "Glutes", "Quads", "Hamstrings", "Leg adductors", "Leg abductors", "Calves" ] dv.table(muscleGroups, dv.pages(pagesAsStr) .map(ex => Array.from(muscleGroups, group => ex[group] > 0 ? ex[group]*workout[ex.name] : ex[group]))) let totals = muscleGroups.reduce((ac,a) => ({...ac,[a]:0}),{}); dv.pages(pagesAsStr) .map(ex => Array.from(muscleGroups, group => totals[group] += ex[group] > 0 ? ex[group]*workout[ex.name] : ex[group])) totals.Name = "Totals" dv.table(muscleGroups, [Object.values(totals)]) ``` # Total volume ```dataviewjs let workout = { "Bench press": 2, "T-Bar row": 2, "Barbell squat": 3, "Lateral dumbbell raise": 2, "Pullup": 2, "Dip": 2, "Barbell military press": 2, "Leg press - wide stance": 2, "Triceps overhead extension": 2, "Biceps dumbbell curl": 2, "Leg abduction machine": 2, "Leg adduction machine": 2, "Triceps overhead extension": 2, "Biceps dumbbell curl": 2, "Leg abduction machine": 2, "Leg adduction machine": 2, "Pushup": 3, "Cable row": 3, "Deadlift": 3, "Face pull": 3, "Incline bench press": 2, "Lat pulldown": 2, "Leg extension machine": 2, "Leg curl machine": 2, "Chest press machine": 3, "High rows machine": 3, "Side delts machine": 3, "Leg press - narrow stance": 3, "Hip thrust": 3, "Calf machine raise": 3, } let folderName = "03 - Sport/Exercises" let pages = Array.from(Object.keys(workout), ex => `"${folderName}/${ex}.md"`) let pagesAsStr = pages.join(" or ") let muscleGroups = [ "Name", "Forearms", "Biceps", "Triceps", "Front delts", "Side delts", "Rear delts", "Rotator cuff", "Upper traps", "Mid/lower traps", "Lats", "Upper pecs", "Lower pecs", "Abs", "Side abs", "Spine erectors", "Glutes", "Quads", "Hamstrings", "Leg adductors", "Leg abductors", "Calves" ] let totals = muscleGroups.reduce((ac,a) => ({...ac,[a]:0}),{}); dv.pages(pagesAsStr) .map(ex => Array.from(muscleGroups, group => totals[group] += ex[group] > 0 ? ex[group]*workout[ex.name] : ex[group])) totals.Name = "Totals" dv.table(muscleGroups, [Object.values(totals)]) ```