|  | 37a65526e4 | Implement offline POST method for starting an offline participation 
		
	
	
		
			
				
	
				CI / scan_ruby (push) Successful in 17s 
				
	
				CI / scan_js (push) Successful in 14s 
				
	
				CI / lint (push) Failing after 15s 
				
	
				CI / test (push) Successful in 42s | 2025-10-30 11:37:20 +01:00 |  | 
			
				
					|  | aea001cdf6 | Add contest param for offline form participation 
		
	
	
		
			
				
	
				CI / scan_ruby (push) Successful in 20s 
				
	
				CI / scan_js (push) Successful in 15s 
				
	
				CI / lint (push) Failing after 13s 
				
	
				CI / test (push) Successful in 38s | 2025-10-30 10:30:32 +01:00 |  | 
			
				
					|  | 35ad7da355 | Add offline model and "new" form/controller 
		
	
	
		
			
				
	
				CI / scan_ruby (push) Successful in 18s 
				
	
				CI / scan_js (push) Successful in 15s 
				
	
				CI / lint (push) Failing after 14s 
				
	
				CI / test (push) Failing after 15m10s | 2025-10-29 17:20:38 +01:00 |  | 
			
				
					|  | bbd2cef168 | Support remaining pieces in completions and scoreboards 
		
	
	
		
			
				
	
				CI / scan_ruby (push) Failing after 16s 
				
	
				CI / scan_js (push) Successful in 13s 
				
	
				CI / lint (push) Successful in 13s 
				
	
				CI / test (push) Successful in 36s | 2025-10-28 15:13:29 +01:00 |  | 
			
				
					|  | 916c7af738 | Fix refresh 
		
	
	
		
			
				
	
				CI / scan_ruby (push) Successful in 17s 
				
	
				CI / scan_js (push) Successful in 13s 
				
	
				CI / lint (push) Successful in 13s 
				
	
				CI / test (push) Successful in 28s | 2025-07-16 10:53:33 +02:00 |  | 
			
				
					|  | 4ca711f5aa | Add category selectors on public scoreboards 
		
	
	
		
			
				
	
				CI / scan_ruby (push) Successful in 16s 
				
	
				CI / scan_js (push) Successful in 14s 
				
	
				CI / lint (push) Successful in 14s 
				
	
				CI / test (push) Successful in 30s | 2025-07-16 10:38:21 +02:00 |  | 
			
				
					|  | 657c5ac47b | Internal scoreboard: add category filter 
		
	
	
		
			
				
	
				CI / scan_ruby (push) Successful in 18s 
				
	
				CI / scan_js (push) Successful in 13s 
				
	
				CI / lint (push) Successful in 14s 
				
	
				CI / test (push) Successful in 34s | 2025-07-15 18:23:26 +02:00 |  | 
			
				
					|  | 1b34d10dee | Improve public scoreboard UI + make it responsive 
		
	
	
		
			
				
	
				CI / scan_ruby (push) Successful in 19s 
				
	
				CI / scan_js (push) Successful in 13s 
				
	
				CI / lint (push) Successful in 13s 
				
	
				CI / test (push) Successful in 43s | 2025-06-26 10:53:21 +02:00 |  | 
			
				
					|  | 2b1a2c9296 | Add "public" setting to contests 
		
	
	
		
			
				
	
				CI / scan_ruby (push) Successful in 16s 
				
	
				CI / scan_js (push) Successful in 13s 
				
	
				CI / lint (push) Successful in 13s 
				
	
				CI / test (push) Successful in 35s | 2025-06-25 10:07:27 +02:00 |  | 
			
				
					|  | 5b908fe37c | Add notices 
		
	
	
		
			
				
	
				CI / scan_ruby (push) Successful in 16s 
				
	
				CI / scan_js (push) Successful in 12s 
				
	
				CI / lint (push) Successful in 12s 
				
	
				CI / test (push) Successful in 39s | 2025-06-21 09:59:18 +02:00 |  | 
			
				
					|  | ac3b354480 | Contest language & top buttons 
		
	
	
		
			
				
	
				CI / scan_ruby (push) Successful in 18s 
				
	
				CI / scan_js (push) Successful in 13s 
				
	
				CI / lint (push) Successful in 13s 
				
	
				CI / test (push) Successful in 33s | 2025-06-20 08:07:39 +02:00 |  | 
			
				
					|  | 79fb1edfaf | Multiples traductions 
		
	
	
		
			
				
	
				CI / scan_ruby (push) Successful in 16s 
				
	
				CI / scan_js (push) Successful in 14s 
				
	
				CI / lint (push) Successful in 14s 
				
	
				CI / test (push) Successful in 32s | 2025-06-19 11:20:33 +02:00 |  | 
			
				
					|  | b8674a126f | Back buttons 
		
	
	
		
			
				
	
				CI / scan_ruby (push) Successful in 16s 
				
	
				CI / scan_js (push) Successful in 12s 
				
	
				CI / lint (push) Successful in 13s 
				
	
				CI / test (push) Successful in 37s | 2025-06-18 19:09:55 +02:00 |  | 
			
				
					|  | 194c126c90 | Correctly order participants 
		
	
	
		
			
				
	
				CI / scan_ruby (push) Successful in 19s 
				
	
				CI / scan_js (push) Successful in 12s 
				
	
				CI / lint (push) Successful in 12s 
				
	
				CI / test (push) Successful in 31s | 2025-06-18 14:49:16 +02:00 |  | 
			
				
					|  | 7444a09046 | Translations for the contest dashboard page 
		
	
	
		
			
				
	
				CI / scan_ruby (push) Successful in 16s 
				
	
				CI / scan_js (push) Successful in 11s 
				
	
				CI / lint (push) Successful in 11s 
				
	
				CI / test (push) Successful in 28s | 2025-05-18 09:52:58 +02:00 |  | 
			
				
					|  | c4902d85d5 | Messages to completions conversion 
		
	
	
		
			
				
	
				CI / scan_ruby (push) Failing after 15s 
				
	
				CI / scan_js (push) Successful in 11s 
				
	
				CI / lint (push) Successful in 14s 
				
	
				CI / test (push) Successful in 31s | 2025-05-15 08:57:25 +02:00 |  | 
			
				
					|  | 138fe67baa | Improve show contest buttons 
		
	
	
		
			
				
	
				CI / scan_ruby (push) Failing after 15s 
				
	
				CI / scan_js (push) Successful in 10s 
				
	
				CI / lint (push) Successful in 11s 
				
	
				CI / test (push) Successful in 29s | 2025-05-14 15:17:42 +02:00 |  | 
			
				
					|  | 3a8517e637 | Show messages on contest management view 
		
	
	
		
			
				
	
				CI / scan_ruby (push) Failing after 11m23s 
				
	
				CI / scan_js (push) Has been cancelled 
				
	
				CI / lint (push) Has been cancelled 
				
	
				CI / test (push) Has been cancelled | 2025-05-11 21:22:19 +02:00 |  | 
			
				
					|  | 497768610d | Setup I18n for titles 
		
	
	
		
			
				
	
				CI / scan_ruby (push) Successful in 17s 
				
	
				CI / scan_js (push) Successful in 12s 
				
	
				CI / lint (push) Successful in 11s 
				
	
				CI / test (push) Successful in 26s | 2025-03-27 12:15:27 +01:00 |  | 
			
				
					|  | 2144c22bd9 | Use the friendly ID gem for contest slugs 
		
	
	
		
			
				
	
				CI / scan_ruby (push) Successful in 18s 
				
	
				CI / scan_js (push) Successful in 10s 
				
	
				CI / lint (push) Successful in 11s 
				
	
				CI / test (push) Successful in 33s | 2025-03-26 17:40:56 +01:00 |  | 
			
				
					|  | a5d165c4b3 | Save display times in the db 
		
	
	
		
			
				
	
				CI / scan_ruby (push) Successful in 17s 
				
	
				CI / scan_js (push) Successful in 11s 
				
	
				CI / lint (push) Successful in 12s 
				
	
				CI / test (push) Successful in 41s | 2025-03-26 17:00:06 +01:00 |  | 
			
				
					|  | 7ce684ced9 | Move completions methods to a concern 
		
	
	
		
			
				
	
				CI / scan_ruby (push) Successful in 15s 
				
	
				CI / scan_js (push) Successful in 12s 
				
	
				CI / lint (push) Successful in 12s 
				
	
				CI / test (push) Has been cancelled | 2025-03-23 09:25:32 +01:00 |  | 
			
				
					|  | 2982f44acc | Public scoreboard scaffold 
		
	
	
		
			
				
	
				CI / scan_ruby (push) Successful in 14s 
				
	
				CI / scan_js (push) Successful in 12s 
				
	
				CI / lint (push) Successful in 11s 
				
	
				CI / test (push) Failing after 8s | 2025-03-23 08:44:38 +01:00 |  | 
			
				
					|  | 9a2a3a6f33 | Add public scoreboard slug & URL 
		
	
	
		
			
				
	
				CI / scan_ruby (push) Waiting to run 
				
	
				CI / scan_js (push) Waiting to run 
				
	
				CI / lint (push) Waiting to run 
				
	
				CI / test (push) Waiting to run | 2025-03-22 18:21:13 +01:00 |  | 
			
				
					|  | 6b02eecb9b | Add auth in all controllers | 2025-03-22 13:07:12 +01:00 |  | 
			
				
					|  | ea7cdcf608 | Some improvements 
		
	
	
		
			
				
	
				CI / scan_ruby (push) Waiting to run 
				
	
				CI / scan_js (push) Waiting to run 
				
	
				CI / lint (push) Waiting to run 
				
	
				CI / test (push) Waiting to run | 2025-03-20 16:14:48 +01:00 |  | 
			
				
					|  | 44507bb85c | Add contestants 
		
	
	
		
			
				
	
				CI / scan_ruby (push) Waiting to run 
				
	
				CI / scan_js (push) Waiting to run 
				
	
				CI / lint (push) Waiting to run 
				
	
				CI / test (push) Waiting to run | 2025-03-20 09:19:39 +01:00 |  | 
			
				
					|  | 0cbd2e4fdc | Add puzzles to contests 
		
	
	
		
			
				
	
				CI / scan_ruby (push) Waiting to run 
				
	
				CI / scan_js (push) Waiting to run 
				
	
				CI / lint (push) Waiting to run 
				
	
				CI / test (push) Waiting to run | 2025-03-15 14:28:24 +01:00 |  | 
			
				
					|  | eca2e46d23 | Add contest badges | 2025-03-15 13:36:02 +01:00 |  | 
			
				
					|  | 4b3bc58474 | Add allow registration switch 
		
	
	
		
			
				
	
				CI / scan_ruby (push) Waiting to run 
				
	
				CI / scan_js (push) Waiting to run 
				
	
				CI / lint (push) Waiting to run 
				
	
				CI / test (push) Waiting to run | 2025-03-15 12:52:07 +01:00 |  | 
			
				
					|  | 1f0cbee9fd | Add team switch 
		
	
	
		
			
				
	
				CI / scan_ruby (push) Waiting to run 
				
	
				CI / scan_js (push) Waiting to run 
				
	
				CI / lint (push) Waiting to run 
				
	
				CI / test (push) Waiting to run | 2025-03-15 12:44:58 +01:00 |  | 
			
				
					|  | 64109cdfd3 | Improve forms 
		
	
	
		
			
				
	
				CI / scan_ruby (push) Waiting to run 
				
	
				CI / scan_js (push) Waiting to run 
				
	
				CI / lint (push) Waiting to run 
				
	
				CI / test (push) Waiting to run | 2025-03-15 09:26:03 +01:00 |  | 
			
				
					|  | caa45332b0 | Organise with layouts 
		
	
	
		
			
				
	
				CI / scan_ruby (push) Waiting to run 
				
	
				CI / scan_js (push) Waiting to run 
				
	
				CI / lint (push) Waiting to run 
				
	
				CI / test (push) Waiting to run | 2025-03-15 08:44:08 +01:00 |  | 
			
				
					|  | 026bda2a99 | Add users controller 
		
	
	
		
			
				
	
				CI / scan_ruby (push) Waiting to run 
				
	
				CI / scan_js (push) Waiting to run 
				
	
				CI / lint (push) Waiting to run 
				
	
				CI / test (push) Waiting to run | 2025-03-14 16:37:21 +01:00 |  | 
			
				
					|  | 50280ce389 | Initial app 
		
	
	
		
			
				
	
				CI / scan_ruby (push) Waiting to run 
				
	
				CI / scan_js (push) Waiting to run 
				
	
				CI / lint (push) Waiting to run 
				
	
				CI / test (push) Waiting to run | 2025-03-14 15:36:05 +01:00 |  |