Skip to content

Commit 0df9c82

Browse files
committed
Add St. Louis Blues, WHL and PLL
1 parent 2835626 commit 0df9c82

File tree

3 files changed

+68
-23
lines changed

3 files changed

+68
-23
lines changed

services/providers/victory/index.tsx

+18-3
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ victory.put('/toggle-stars', async c => {
4040

4141
const {affectedDocuments} = await db.providers.updateAsync<IProvider<TVictoryTokens>, any>(
4242
{name: 'victory'},
43-
{$set: {meta: {ducks: false, stars}}},
43+
{$set: {'meta.stars': stars}},
4444
{returnUpdatedDocs: true},
4545
);
4646
const {enabled, tokens} = affectedDocuments as IProvider<TVictoryTokens>;
@@ -55,7 +55,7 @@ victory.put('/toggle-rangers', async c => {
5555

5656
const {affectedDocuments} = await db.providers.updateAsync<IProvider<TVictoryTokens>, any>(
5757
{name: 'victory'},
58-
{$set: {meta: {ducks: false, rangers}}},
58+
{$set: {'meta.rangers': rangers}},
5959
{returnUpdatedDocs: true},
6060
);
6161
const {enabled, tokens} = affectedDocuments as IProvider<TVictoryTokens>;
@@ -70,7 +70,22 @@ victory.put('/toggle-ducks', async c => {
7070

7171
const {affectedDocuments} = await db.providers.updateAsync<IProvider<TVictoryTokens>, any>(
7272
{name: 'victory'},
73-
{$set: {meta: {ducks, stars: false}}},
73+
{$set: {'meta.ducks': ducks}},
74+
{returnUpdatedDocs: true},
75+
);
76+
const {enabled, tokens} = affectedDocuments as IProvider<TVictoryTokens>;
77+
scheduleEvents();
78+
79+
return c.html(<VictoryBody enabled={enabled} tokens={tokens} />);
80+
});
81+
82+
victory.put('/toggle-blues', async c => {
83+
const body = await c.req.parseBody();
84+
const blues = body['victory-blues-enabled'] === 'on';
85+
86+
const {affectedDocuments} = await db.providers.updateAsync<IProvider<TVictoryTokens>, any>(
87+
{name: 'victory'},
88+
{$set: {'meta.blues': blues}},
7489
{returnUpdatedDocs: true},
7590
);
7691
const {enabled, tokens} = affectedDocuments as IProvider<TVictoryTokens>;

services/providers/victory/views/index.tsx

+35-16
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ export const Victory: FC = async () => {
1010
const victory = await db.providers.findOneAsync<IProvider<TVictoryTokens>>({name: 'victory'});
1111
const enabled = victory?.enabled;
1212
const tokens = victory?.tokens;
13-
const {stars, ducks, rangers} = victory.meta;
13+
const {stars, ducks, rangers, blues} = victory.meta;
1414

1515
return (
1616
<div>
@@ -66,21 +66,40 @@ export const Victory: FC = async () => {
6666
</label>
6767
</fieldset>
6868
</div>
69-
<fieldset>
70-
<label>
71-
Anaheim Ducks?&nbsp;&nbsp;
72-
<input
73-
hx-put={`/providers/victory/toggle-ducks`}
74-
hx-trigger="change"
75-
name="victory-ducks-enabled"
76-
hx-target="#victory-body"
77-
type="checkbox"
78-
role="switch"
79-
checked={ducks ? true : false}
80-
data-enabled={ducks ? 'true' : 'false'}
81-
/>
82-
</label>
83-
</fieldset>
69+
<div>
70+
<fieldset>
71+
<label>
72+
Anaheim Ducks?&nbsp;&nbsp;
73+
<input
74+
hx-put={`/providers/victory/toggle-ducks`}
75+
hx-trigger="change"
76+
name="victory-ducks-enabled"
77+
hx-target="#victory-body"
78+
type="checkbox"
79+
role="switch"
80+
checked={ducks ? true : false}
81+
data-enabled={ducks ? 'true' : 'false'}
82+
/>
83+
</label>
84+
</fieldset>
85+
</div>
86+
<div>
87+
<fieldset>
88+
<label>
89+
St. Louis Blues?&nbsp;&nbsp;
90+
<input
91+
hx-put={`/providers/victory/toggle-blues`}
92+
hx-trigger="change"
93+
name="victory-blues-enabled"
94+
hx-target="#victory-body"
95+
type="checkbox"
96+
role="switch"
97+
checked={blues ? true : false}
98+
data-enabled={blues ? 'true' : 'false'}
99+
/>
100+
</label>
101+
</fieldset>
102+
</div>
84103
</div>
85104
<div id="victory-body" hx-swap="innerHTML">
86105
<VictoryBody enabled={enabled} tokens={tokens} />

services/victory-handler.ts

+15-4
Original file line numberDiff line numberDiff line change
@@ -33,17 +33,26 @@ const DEVICE_INFO = {
3333
screenResW: 3840,
3434
};
3535

36-
const ALLOWED_SERIES = ['66', '67', '99', '128', '139'];
36+
const ALLOWED_SERIES = ['66', '67', '68', '97', '99', '128', '139', '140', '141', '142'];
3737

3838
const fillEvent = (event: IVictoryEvent): [string, string[]] => {
3939
let sport = '';
4040
const categories = ['Victory+'];
41+
const seriesId = event.seriesId;
4142

42-
if (event.seriesId === '66' || event.seriesId === '67') {
43-
// Stars or Ducks game
43+
if (seriesId === '66' || seriesId === '67' || seriesId === '68') {
44+
// Stars or Ducks or Blues game
4445
sport = 'Hockey';
4546
categories.push('Hockey', 'NHL');
46-
} else if (event.seriesId === '99') {
47+
} else if (seriesId === '140' || seriesId === '141' || seriesId === '142') {
48+
// WHL
49+
sport = 'Hockey';
50+
categories.push('Hockey', 'WHL')
51+
} else if (seriesId === '97') {
52+
// Premier Lacrosse League
53+
sport = 'Lacrosse';
54+
categories.push('PLL');
55+
} else if (seriesId === '99') {
4756
// Major Arena Soccer League
4857
sport = 'Soccer';
4958
categories.push('Soccer', 'MASL');
@@ -63,6 +72,7 @@ const parseAirings = async (events: IVictoryEvent[]) => {
6372
!ALLOWED_SERIES.includes(event.seriesId) ||
6473
(event.seriesId === '66' && !meta.stars) ||
6574
(event.seriesId === '67' && !meta.ducks) ||
75+
(event.seriesId === '68' && !meta.blues) ||
6676
(event.seriesId === '128' && !meta.rangers)
6777
) {
6878
continue;
@@ -119,6 +129,7 @@ class VictoryHandler {
119129
ducks: false,
120130
rangers: false,
121131
stars: false,
132+
blues: false,
122133
},
123134
name: 'victory',
124135
tokens: data,

0 commit comments

Comments
 (0)