Skip to content

Commit f6f1ded

Browse files
authored
Add initial Ropecon 2026 config (#1251)
* Add initial Ropecon 2026 config * Disable cronjobs * Fix lint errors
1 parent 252a6a1 commit f6f1ded

File tree

7 files changed

+140
-41
lines changed

7 files changed

+140
-41
lines changed

.github/workflows/test.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ jobs:
3131
shell: bash
3232

3333
- name: Run actionlint
34-
uses: docker://rhysd/actionlint:1.7.7
34+
uses: docker://rhysd/actionlint:1.7.9
3535
with:
3636
args: -color
3737

server/src/test/scripts/loadPastEventDataToDb.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,13 +13,13 @@ import { initializeDayjs } from "shared/utils/initializeDayjs";
1313
const updatePastEventProgramItems = async (): Promise<void> => {
1414
const { eventStartTime } = config.event();
1515

16-
// Tracon 2024 start time
17-
const oldStartTime = "2024-09-06T05:00:00Z";
16+
// Ropecon 2025 start time
17+
const oldStartTime = "2025-07-25T12:00:00Z";
1818

1919
const rawData = fs.readFileSync(
2020
path.join(
2121
__dirname,
22-
"../../features/statistics/datafiles/tracon/2024/program-items.json",
22+
"../../features/statistics/datafiles/ropecon/2025/program-items.json",
2323
),
2424
"utf8",
2525
);

shared/config/clientConfig.ts

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,8 +23,12 @@ export const clientConfig: ClientConfig = {
2323
"all",
2424
ProgramType.FLEAMARKET,
2525
ProgramType.TABLETOP_RPG,
26+
ProgramType.LARP,
27+
ProgramType.TOURNAMENT,
28+
ProgramType.WORKSHOP,
29+
ProgramType.OTHER,
2630
],
27-
activeLanguages: [Language.FINNISH],
31+
activeLanguages: [Language.FINNISH, Language.ENGLISH, Language.SWEDISH],
2832

2933
// Dev
3034
enableReduxTrace: false,

shared/config/eventConfig.ts

Lines changed: 20 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -6,21 +6,20 @@ import {
66
import { ProgramType, SignupType } from "shared/types/models/programItem";
77

88
// Event days
9-
const friday = "2025-09-05";
10-
const saturday = "2025-09-06";
9+
const friday = "2026-07-24";
1110

1211
export const eventConfig: EventConfig = {
1312
// Event info
14-
eventName: EventName.TRACON,
15-
eventYear: "2025",
13+
eventName: EventName.ROPECON,
14+
eventYear: "2026",
1615

1716
// Event settings
18-
enableRevolvingDoor: false,
17+
enableRevolvingDoor: true,
1918
enableOrganizerFeedback: true,
20-
enableTagDropdown: false,
19+
enableTagDropdown: true,
2120

2221
requireRegistrationCode: true,
23-
assignmentAlgorithm: AssignmentAlgorithm.RANDOM,
22+
assignmentAlgorithm: AssignmentAlgorithm.RANDOM_PADG,
2423
enableGroups: true,
2524
signupOpen: true, // TODO: Remove this
2625
resultsVisible: true, // TODO: Remove this
@@ -30,21 +29,26 @@ export const eventConfig: EventConfig = {
3029
// ... or remove all upcoming lottery signups
3130
enableRemoveAllUpcomingSignups: true,
3231

33-
programGuideUrl: "https://2025.tracon.fi/opas",
32+
programGuideUrl: "https://2025.ropecon.fi/opas",
3433

35-
activeProgramTypes: [ProgramType.TABLETOP_RPG, ProgramType.FLEAMARKET],
34+
activeProgramTypes: [
35+
ProgramType.TABLETOP_RPG,
36+
ProgramType.LARP,
37+
ProgramType.TOURNAMENT,
38+
ProgramType.WORKSHOP,
39+
ProgramType.OTHER,
40+
],
3641

37-
twoPhaseSignupProgramTypes: [ProgramType.FLEAMARKET],
42+
twoPhaseSignupProgramTypes: [ProgramType.TABLETOP_RPG, ProgramType.WORKSHOP],
3843

39-
// Event start at 15:00 GMT+3 but lottery signups start at 08:00 GMT+3
40-
eventStartTime: `${friday}T05:00:00Z`, // Fri 08:00 GMT+3
44+
eventStartTime: `${friday}T12:00:00Z`, // Fri 15:00 GMT+3
4145

4246
directSignupWindows: {},
4347

44-
rollingDirectSignupProgramTypes: [ProgramType.TABLETOP_RPG],
48+
rollingDirectSignupProgramTypes: [],
4549
enableRollingDirectSignupPreviousDay: true,
4650

47-
hideParticipantListProgramTypes: [ProgramType.FLEAMARKET],
51+
hideParticipantListProgramTypes: [],
4852

4953
// Direct signup open till program item endTime instead of startTime
5054
directSignupOpenToEndProgramTypes: [], // TODO: Remove config
@@ -81,23 +85,10 @@ export const eventConfig: EventConfig = {
8185
phaseGap: 15, // minutes
8286

8387
// Use fixed time to open all lottery signups for the whole event
84-
fixedLotterySignupTime: `${friday}T05:00:00Z`, // Fri 08:00 GMT+3
88+
fixedLotterySignupTime: null,
8589

8690
// Program items with parentId use startTime configured here
87-
startTimesByParentIds: new Map([
88-
[
89-
"kirpputori-perjantai-alkuilta",
90-
`${friday}T13:00:00Z`, // Fri 16:00 GMT+3
91-
],
92-
[
93-
"kirpputori-perjantai-loppuilta",
94-
`${friday}T16:00:00Z`, // Fri 19:00 GMT+3
95-
],
96-
[
97-
"kirpputori-lauantai",
98-
`${saturday}T06:30:00Z`, // Sat 09:30 GMT+3
99-
],
100-
]),
91+
startTimesByParentIds: new Map([]),
10192

10293
defaultSignupType: SignupType.KONSTI,
10394
};

shared/config/past-events/ropecon2023.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ const sunday = "2023-07-30";
1515
// eslint-disable-next-line @typescript-eslint/no-unused-vars
1616
const eventConfig: Partial<EventConfig> = {
1717
// Event info
18-
eventName: EventName.HITPOINT,
18+
eventName: EventName.ROPECON,
1919
eventYear: "2023",
2020

2121
// Event settings
Lines changed: 104 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,104 @@
1+
import {
2+
AssignmentAlgorithm,
3+
EventName,
4+
EventConfig,
5+
} from "shared/config/eventConfigTypes";
6+
import { ProgramType, SignupType } from "shared/types/models/programItem";
7+
8+
// Event days
9+
const friday = "2025-09-05";
10+
const saturday = "2025-09-06";
11+
12+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
13+
const eventConfig: Partial<EventConfig> = {
14+
// Event info
15+
eventName: EventName.TRACON,
16+
eventYear: "2025",
17+
18+
// Event settings
19+
enableRevolvingDoor: false,
20+
enableOrganizerFeedback: true,
21+
enableTagDropdown: false,
22+
23+
requireRegistrationCode: true,
24+
assignmentAlgorithm: AssignmentAlgorithm.RANDOM,
25+
enableGroups: true,
26+
signupOpen: true,
27+
resultsVisible: true,
28+
29+
// Remove overlapping lottery signups...
30+
enableRemoveOverlapSignups: false,
31+
// ... or remove all upcoming lottery signups
32+
enableRemoveAllUpcomingSignups: true,
33+
34+
programGuideUrl: "https://2025.tracon.fi/opas",
35+
36+
activeProgramTypes: [ProgramType.TABLETOP_RPG, ProgramType.FLEAMARKET],
37+
38+
twoPhaseSignupProgramTypes: [ProgramType.FLEAMARKET],
39+
40+
// Event start at 15:00 GMT+3 but lottery signups start at 08:00 GMT+3
41+
eventStartTime: `${friday}T05:00:00Z`, // Fri 08:00 GMT+3
42+
43+
directSignupWindows: {},
44+
45+
rollingDirectSignupProgramTypes: [ProgramType.TABLETOP_RPG],
46+
enableRollingDirectSignupPreviousDay: true,
47+
48+
hideParticipantListProgramTypes: [ProgramType.FLEAMARKET],
49+
50+
// Direct signup open till program item endTime instead of startTime
51+
directSignupOpenToEndProgramTypes: [], // TODO: Remove config
52+
53+
// These program items have their signup always open even if signup mode is set to lottery
54+
directSignupAlwaysOpenIds: [],
55+
56+
// Add these to Konsti under 'other' program type
57+
addToKonstiOther: [],
58+
59+
// These program items have hand picked revolving door status
60+
addRevolvingDoorIds: [],
61+
62+
// These program items are imported to Konsti but don't have Konsti signup
63+
noKonstiSignupIds: [],
64+
65+
// Don't import these program items from Kompassi - this is program item id, not schedule item
66+
ignoreProgramItemsIds: [],
67+
68+
signupQuestions: [],
69+
70+
tournamentSignupQuestion: null,
71+
72+
tournamentSignupQuestionExcludeIds: [],
73+
74+
customDetailsProgramItems: {},
75+
76+
// Require checkbox to be checked before signing up
77+
entryConditions: [],
78+
79+
// Two phase signup settings
80+
preSignupStart: 60 * 4, // minutes
81+
directSignupPhaseStart: 60 * 2, // minutes
82+
phaseGap: 15, // minutes
83+
84+
// Use fixed time to open all lottery signups for the whole event
85+
fixedLotterySignupTime: `${friday}T05:00:00Z`, // Fri 08:00 GMT+3
86+
87+
// Program items with parentId use startTime configured here
88+
startTimesByParentIds: new Map([
89+
[
90+
"kirpputori-perjantai-alkuilta",
91+
`${friday}T13:00:00Z`, // Fri 16:00 GMT+3
92+
],
93+
[
94+
"kirpputori-perjantai-loppuilta",
95+
`${friday}T16:00:00Z`, // Fri 19:00 GMT+3
96+
],
97+
[
98+
"kirpputori-lauantai",
99+
`${saturday}T06:30:00Z`, // Sat 09:30 GMT+3
100+
],
101+
]),
102+
103+
defaultSignupType: SignupType.KONSTI,
104+
};

shared/config/serverConfig.ts

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -116,14 +116,14 @@ const prodConfig = {
116116
useTestTime: false,
117117

118118
// Program update cron
119-
autoUpdateProgramEnabled: true,
119+
autoUpdateProgramEnabled: false,
120120
programUpdateInterval: "5,10,15,20,25,35,40,45,50,55 * * * *",
121121

122122
// Program update
123123
updateProgramItemPopularityEnabled: true,
124124

125125
// Attendee assign cron
126-
autoAssignAttendeesEnabled: true,
126+
autoAssignAttendeesEnabled: false,
127127
autoAssignInterval: "0,30 * * * *",
128128
autoAssignDelay: 1000 * 5,
129129
emailSendFromAddress: "Konsti <[email protected]>",
@@ -145,14 +145,14 @@ const stagingConfig = {
145145
useTestTime: true,
146146

147147
// Program update cron
148-
autoUpdateProgramEnabled: true,
148+
autoUpdateProgramEnabled: false,
149149
programUpdateInterval: "5,10,15,20,25,35,40,45,50,55 * * * *",
150150

151151
// Program update
152152
updateProgramItemPopularityEnabled: true,
153153

154154
// Attendee assign cron
155-
autoAssignAttendeesEnabled: true,
155+
autoAssignAttendeesEnabled: false,
156156
autoAssignInterval: "0,30 * * * *",
157157
autoAssignDelay: 1000 * 5,
158158
};
@@ -177,14 +177,14 @@ const devConfig = {
177177
useTestTime: true,
178178

179179
// Program update cron
180-
autoUpdateProgramEnabled: true,
180+
autoUpdateProgramEnabled: false,
181181
programUpdateInterval: "5,10,15,20,25,35,40,45,50,55 * * * *",
182182

183183
// Program update
184184
updateProgramItemPopularityEnabled: true,
185185

186186
// Attendee assign cron
187-
autoAssignAttendeesEnabled: true,
187+
autoAssignAttendeesEnabled: false,
188188
autoAssignInterval: "0,30 * * * *",
189189
autoAssignDelay: 1000 * 1,
190190
};

0 commit comments

Comments
 (0)