Skip to content

Commit c9ae387

Browse files
authored
Merge branch 'master' into beta-new
2 parents 6b6280b + e81522b commit c9ae387

File tree

7 files changed

+277
-39
lines changed

7 files changed

+277
-39
lines changed

functions/utilities/privacy/debugRouter.js

Lines changed: 3 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ const {
99
acceptedKey,
1010
acceptedByKey,
1111
variantModeKey,
12+
latestTouchKey,
1213
isUnderThirteen,
1314
getPrivacyState,
1415
generateGuardianPrivacyAuthToken,
@@ -35,6 +36,7 @@ const getViewData = (req) => {
3536
acceptedKey,
3637
acceptedByKey,
3738
variantModeKey,
39+
latestTouchKey,
3840
"birthMonth",
3941
"birthYear",
4042
];
@@ -74,6 +76,7 @@ router.post("/reset", studentMiddleware, async (req, res) => {
7476
[acceptedKey]: req.body.acceptedKey || null,
7577
[acceptedByKey]: req.body.acceptedByKey || null,
7678
[variantModeKey]: req.body.variantMode || null,
79+
[latestTouchKey]: req.body.latestTouch || null,
7780
birthMonth: req.body.birthMonth || "1",
7881
birthYear: req.body.birthYear || "2025",
7982
};
@@ -83,44 +86,6 @@ router.post("/reset", studentMiddleware, async (req, res) => {
8386
return res.status(200).send(getResponseBody(req, updateBody));
8487
});
8588

86-
// const bodies = {
87-
// under13_new: {
88-
// birthMonth: "1",
89-
// birthYear: "2025",
90-
// },
91-
// over13_new: {
92-
// birthMonth: "1",
93-
// birthYear: "1990",
94-
// },
95-
// year8webinar_new: {
96-
// birthMonth: "1",
97-
// birthYear: "1990",
98-
// [dueByKey]: Date.now() + 30 * 24 * 60 * 60 * 1000, // 30 days from now
99-
// [variantModeKey]: 'year8webinar',
100-
// },
101-
// year8webinar_31daysago: {
102-
// [firstSeenKey]: Date.now() - 31 * 24 * 60 * 60 * 1000, // first seen was 31 days ago
103-
// [dueByKey]: Date.now() - 24 * 60 * 60 * 1000, // due date was 1 day ago
104-
// birthMonth: "1",
105-
// birthYear: "2025", // Age doesn't matter for this variant
106-
// [variantModeKey]: 'year8webinar',
107-
// },
108-
// under13_8daysago: {
109-
// [firstSeenKey]: Date.now() - 8 * 24 * 60 * 60 * 1000, // first seen was 8 days ago
110-
// [dueByKey]: Date.now() - 24 * 60 * 60 * 1000, // due date was 1 day ago
111-
// [userNeedsGuardianTouchKey]: Date.now() - 8 * 24 * 60 * 60 * 1000, // guardian touch was 8 days ago
112-
// [guardianPrivacyAuthTokenKey]: generateGuardianPrivacyAuthToken(),
113-
// birthMonth: "1",
114-
// birthYear: "2025",
115-
// },
116-
// over13_8daysago: {
117-
// [firstSeenKey]: Date.now() - 8 * 24 * 60 * 60 * 1000, // first seen was 8 days ago
118-
// [dueByKey]: Date.now() - 24 * 60 * 60 * 1000, // due date was 1 day ago
119-
// birthMonth: "1",
120-
// birthYear: "1990",
121-
// }
122-
// }
123-
12489
router.get("/view", studentMiddleware, async (req, res) => {
12590
return res.status(200).send({ data: getViewData(req) });
12691
});

functions/utilities/privacy/router.js

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ const {
99
guardianPrivacyAuthTokenKey,
1010
acceptedKey,
1111
acceptedByKey,
12+
latestTouchKey,
1213
validateGuardianToken,
1314
} = require("./utils");
1415
const debugRouter = require("./debugRouter");
@@ -117,6 +118,7 @@ router.get("/student/delay", studentMiddleware, async (req, res) => {
117118
const updateBody = {
118119
[firstSeenKey]: req.user[firstSeenKey] || Date.now(),
119120
[dueByKey]: req.user[dueByKey] || Date.now() + SevenDays,
121+
[latestTouchKey]: Date.now(),
120122
};
121123

122124
await userDB.doc(req.user.uid).update(updateBody);
@@ -146,6 +148,7 @@ router.post("/student/update", studentMiddleware, async (req, res) => {
146148
req.user[userNeedsGuardianTouchKey] || Date.now(),
147149
[firstSeenKey]: req.user[firstSeenKey] || Date.now(),
148150
[dueByKey]: req.user[dueByKey] || Date.now() + SevenDays,
151+
[latestTouchKey]: Date.now(),
149152
};
150153

151154
await userDB.doc(req.user.uid).update(updateBody);

functions/utilities/privacy/utils.js

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ function generateGuardianPrivacyAuthToken() {
1212
const latestPrivacyVersion = "privacy-testing-002";
1313

1414
const firstSeenKey = `${latestPrivacyVersion}-firstSeen`;
15+
const latestTouchKey = `${latestPrivacyVersion}-latestTouch`;
1516
const dueByKey = `${latestPrivacyVersion}-dueBy`;
1617
const userNeedsGuardianTouchKey = `${latestPrivacyVersion}-ng-touch`;
1718
const guardianPrivacyAuthTokenKey = "guardianPrivacyAuthToken";
@@ -150,3 +151,4 @@ exports.validateGuardianToken = validateGuardianToken;
150151
exports.userNeedsGuardianTouchKey = userNeedsGuardianTouchKey;
151152
exports.isUnderThirteen = isUnderThirteen;
152153
exports.variantModeKey = variantModeKey;
154+
exports.latestTouchKey = latestTouchKey;

pages/tutorinfo.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ We are looking for tutors who will:
3131

3232
We are particularly keen to hear from tutors who have experience of teaching A Level Maths and A Level Further Maths, as well as tutors who are comfortable preparing students for UKMT challenges.
3333

34-
New tutors starting in September will be offered £30 per 50-minute tutorial, and will be able to choose the days and times that work best for them.
34+
Tutors are paid £30 per 50-minute tutorial, and will be able to choose the days and times that work best for them.
3535

3636

3737
## Application process

pages/webinar-9aut-week-1.md

Lines changed: 154 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,154 @@
1+
# Parallel Academy Year 9 Autumn Term Week 1 Assignment
2+
3+
These problems relate to a recent theme you have been covering during webinars. They are arranged in order of increasing difficulty and the final problem is much more of a challenge than the rest.
4+
5+
The problems are designed to help you reflect on material from previous webinar sessions (which you can access on your Academy page).
6+
7+
The number of marks each question or part is worth is shown. Some have an optional hint, which cost 1 mark, so only reveal the hint if you’ve given the problem some real thought.
8+
9+
Take your time, ensuring that you haven't overlooked something or made a silly error, before submitting your answers. Please remember that completing homework is certainly not a race!
10+
11+
You should only leave an answer blank if you have really thought about the problem and are still stuck (particularly with the final problem).
12+
13+
**Before you click Submit at the end of the assignment, check that all of your answers have been entered correctly.**
14+
15+
**After you click Submit, make sure you scroll down to see the correct answers and read the full written solutions.**
16+
17+
## 1.
18+
![](/resources/academy-9aut-week-1/q1.png){image align="center"}
19+
20+
::: problem id=1_1 marks=1
21+
a) <input type="number" solution="11"/>
22+
23+
---
24+
25+
![](/resources/academy-9aut-week-1/s1a.png){image align="center"}
26+
:::
27+
28+
::: problem id=1_2 marks=1
29+
b) <input type="number" solution="27"/>
30+
31+
---
32+
33+
![](/resources/academy-9aut-week-1/s1b.png){image align="center"}
34+
:::
35+
36+
::: problem id=1_3 marks=1
37+
c) <input type="number" solution="6"/>
38+
39+
---
40+
41+
![](/resources/academy-9aut-week-1/s1c.png){image align="center"}
42+
:::
43+
44+
::: problem id=1_4 marks=1
45+
d) <input type="number" solution="20"/>
46+
47+
---
48+
49+
![](/resources/academy-9aut-week-1/s1d.png){image align="center"}
50+
:::
51+
52+
53+
## 2.
54+
![](/resources/academy-9aut-week-1/q2.png){image align="center"}
55+
56+
::: problem id=2_1 marks=1
57+
![](/resources/academy-9aut-week-1/q2a.png){image align="center"}
58+
* [ ] (i)
59+
* [ ] (ii)
60+
* [x] (iii)
61+
* [ ] (iv)
62+
{.col-5}
63+
64+
---
65+
66+
![](/resources/academy-9aut-week-1/s2a.png){image align="center"}
67+
:::
68+
69+
::: problem id=2_2 marks=1
70+
![](/resources/academy-9aut-week-1/q2b.png){image align="center"}
71+
* [x] (i)
72+
* [ ] (ii)
73+
* [ ] (iii)
74+
* [ ] (iv)
75+
{.col-5}
76+
77+
---
78+
79+
![](/resources/academy-9aut-week-1/s2b.png){image align="center"}
80+
:::
81+
82+
::: problem id=2_3 marks=1
83+
![](/resources/academy-9aut-week-1/q2c.png){image align="center"}
84+
* [ ] (i)
85+
* [x] (ii)
86+
* [ ] (iii)
87+
* [ ] (iv)
88+
{.col-5}
89+
90+
---
91+
92+
![](/resources/academy-9aut-week-1/s2c.png){image align="center"}
93+
:::
94+
95+
::: problem id=2_4 marks=1
96+
![](/resources/academy-9aut-week-1/q2d.png){image align="center"}
97+
* [ ] (i)
98+
* [ ] (ii)
99+
* [ ] (iii)
100+
* [x] (iv)
101+
{.col-5}
102+
103+
---
104+
105+
![](/resources/academy-9aut-week-1/s2d.png){image align="center"}
106+
:::
107+
108+
109+
## 3.
110+
![](/resources/academy-9aut-week-1/q3.png){image align="center"}
111+
112+
::: problem id=3_1 marks=2
113+
<input type="number" solution="1"/>
114+
115+
---
116+
117+
![](/resources/academy-9aut-week-1/s3.png){image align="center"}
118+
:::
119+
120+
121+
## 4.
122+
![](/resources/academy-9aut-week-1/q4.png){image align="center"}
123+
124+
::: problem id=4_1 marks=2
125+
<input type="number" solution="2"/>
126+
127+
^^^ hint id=4_1 marks=1
128+
![](/resources/academy-9aut-week-1/h4.png){image align="center"}
129+
^^^
130+
131+
---
132+
133+
![](/resources/academy-9aut-week-1/s4.png){image align="center"}
134+
:::
135+
136+
137+
## 5.
138+
![](/resources/academy-4-week-2/4-skull.png){image align="right"}
139+
![](/resources/academy-9aut-week-1/q5.png){image align="center"}
140+
141+
::: problem id=5_1 marks=2
142+
<input type="number" solution="8"/>
143+
144+
^^^ hint id=5_1_1 marks=1
145+
![](/resources/academy-9aut-week-1/h5.png){image align="center"}
146+
^^^
147+
---
148+
149+
![](/resources/academy-9aut-week-1/s5.png){image align="center"}
150+
:::
151+
152+
**Before you click Submit at the end of the assignment, check that all of your answers have been entered correctly.**
153+
154+
**After you click Submit, make sure you scroll down to see the correct answers and read the full written solutions.**

pages/webinar-9aut-week-2.md

Lines changed: 108 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,108 @@
1+
# Parallel Academy Year 9 Autumn Term Week 2 Assignment
2+
3+
These problems relate to a recent theme you have been covering during webinars. They are arranged in order of increasing difficulty and the final problem is much more of a challenge than the rest.
4+
5+
The problems are designed to help you reflect on material from previous webinar sessions (which you can access on your Academy page).
6+
7+
The number of marks each question or part is worth is shown. Some have an optional hint, which cost 1 mark, so only reveal the hint if you’ve given the problem some real thought.
8+
9+
Take your time, ensuring that you haven't overlooked something or made a silly error, before submitting your answers. Please remember that completing homework is certainly not a race!
10+
11+
You should only leave an answer blank if you have really thought about the problem and are still stuck (particularly with the final problem).
12+
13+
**Before you click Submit at the end of the assignment, check that all of your answers have been entered correctly.**
14+
15+
**After you click Submit, make sure you scroll down to see the correct answers and read the full written solutions.**
16+
17+
## 1.
18+
19+
::: problem id=1_1 marks=1
20+
![](/resources/academy-9aut-week-2/q1a.png){image align="center"}
21+
22+
* [ ] Rowan
23+
* [x] Rachel
24+
* [ ] Impossible to tell
25+
{.col-5}
26+
27+
---
28+
29+
![](/resources/academy-9aut-week-2/s1a.png){image align="center"}
30+
:::
31+
32+
::: problem id=1_2 marks=1
33+
![](/resources/academy-9aut-week-2/q1b.png){image align="center"}
34+
35+
* [x] Yes
36+
* [ ] No
37+
* [ ] Impossible to tell
38+
{.col-5}
39+
40+
---
41+
42+
![](/resources/academy-9aut-week-2/s1b.png){image align="center"}
43+
:::
44+
45+
46+
## 2.
47+
![](/resources/academy-9aut-week-2/q2.png){image align="center"}
48+
49+
::: problem id=2_1 marks=2
50+
* [ ] One
51+
* [ ] One or two
52+
* [x] Two or three
53+
* [ ] Three
54+
* [ ] Four
55+
{.col-5}
56+
57+
---
58+
59+
![](/resources/academy-9aut-week-2/s2.png){image align="center"}
60+
:::
61+
62+
63+
## 3.
64+
![](/resources/academy-9aut-week-2/q3.png){image align="center"}
65+
66+
::: problem id=3_1 marks=2
67+
<input type="number" solution="2"/>
68+
69+
---
70+
71+
![](/resources/academy-9aut-week-2/s3.png){image align="center"}
72+
:::
73+
74+
75+
## 4.
76+
![](/resources/academy-9aut-week-2/q4.png){image align="center"}
77+
78+
::: problem id=4_1 marks=2
79+
<input type="number" solution="12"/>
80+
81+
^^^ hint id=4_1 marks=1
82+
![](/resources/academy-9aut-week-2/h4.png){image align="center"}
83+
^^^
84+
85+
---
86+
87+
![](/resources/academy-9aut-week-2/s4.png){image align="center"}
88+
:::
89+
90+
91+
## 5.
92+
![](/resources/academy-4-week-2/4-skull.png){image align="right"}
93+
![](/resources/academy-9aut-week-2/q5.png){image align="center"}
94+
95+
::: problem id=5_1 marks=2
96+
<input type="number" solution="2"/>
97+
98+
^^^ hint id=5_1_1 marks=1
99+
![](/resources/academy-9aut-week-2/h5.png){image align="center"}
100+
^^^
101+
---
102+
103+
![](/resources/academy-9aut-week-2/s5.png){image align="center"}
104+
:::
105+
106+
**Before you click Submit at the end of the assignment, check that all of your answers have been entered correctly.**
107+
108+
**After you click Submit, make sure you scroll down to see the correct answers and read the full written solutions.**

static/pages.yaml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1276,6 +1276,12 @@ homework:
12761276
- url: webinar-8aut-week-2
12771277
title: Parallel Academy Year 8 Autumn Term Week 2
12781278
available: 2025-08-12T09:00:00
1279+
- url: webinar-9aut-week-1
1280+
title: Parallel Academy Year 9 Autumn Term Week 1
1281+
available: 2025-08-12T09:00:00
1282+
- url: webinar-9aut-week-2
1283+
title: Parallel Academy Year 9 Autumn Term Week 2
1284+
available: 2025-08-12T09:00:00
12791285

12801286
test:
12811287
- url: mental-maths-summer

0 commit comments

Comments
 (0)