--- tags: - sport cssclasses: - wide-page --- ## Monday ```dataviewjs let workout = { "Bench press": 2, "T-Bar row": 2, "Barbell squat": 3, "Lateral dumbbell 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)]) ``` ## Tuesday ```dataviewjs let workout = { "Triceps overhead extension": 3, "Biceps dumbbell curl": 3, "Leg extension machine": 3, "Leg curl machine": 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)]) ``` ## Wednesday ```dataviewjs let workout = { "Pullup": 3, "Pushup": 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" ] 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 = { "Ab crunch machine": 2, "Egyptian raise": 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" ] 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 = { "Pec dec": 3, "Reverse pec dec": 3, "Leg press - narrow stance": 2, "Hip thrust": 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" ] 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 = { "Pullup": 3, "Dips": 3, "Barbell military press": 3, "Cable curl": 3, "Triceps overhead extension": 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)]) ``` # Total volume ```dataviewjs let workout = { "Bench press": 2, "T-Bar row": 2, "Barbell squat": 3, "Lateral dumbbell raise": 3, "Triceps overhead extension": 3, "Biceps dumbbell curl": 3, "Leg abduction machine": 2, "Leg adduction machine": 2, "Pullup": 3, "Pushup": 3, "Deadlift": 3, "Face pull": 3, "Ab crunch machine": 2, "Egyptian raise": 2, "Leg extension machine": 3, "Leg curl machine": 3, "Pec dec": 3, "Reverse pec dec": 3, "Rope lat pushdown": 3, "Side ab machine": 3, "Leg press - narrow stance": 2, "Hip thrust": 2, "Barbell military press": 2, "Cable curl": 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)]) ``` dv.table(muscleGroups, dv.pages(pagesAsStr) .map(ex => Array.from(muscleGroups, group => ex[group])))