updated data + cashes by country

master
Laurent 7 years ago
parent 1061a63163
commit 6c3a2633bd
  1. 36
      TournamentStats.xcodeproj/project.pbxproj
  2. BIN
      TournamentStats.xcodeproj/project.xcworkspace/xcuserdata/laurent.xcuserdatad/UserInterfaceState.xcuserstate
  3. 12
      TournamentStats/AppDelegate.swift
  4. 784
      TournamentStats/Events/event14
  5. 56
      TournamentStats/Events/event15
  6. 1911
      TournamentStats/Events/event16
  7. 700
      TournamentStats/Events/event17
  8. 0
      TournamentStats/Events/event4 copie 6
  9. 0
      TournamentStats/Events/event4 copie 7
  10. 0
      TournamentStats/Events/event4 copie 8
  11. 0
      TournamentStats/Events/event4 copie 9
  12. 4
      TournamentStats/NotablePlayers.swift
  13. 8
      TournamentStats/Seed.swift
  14. 9
      TournamentStats/UI/MasterViewController.swift
  15. 13
      TournamentStats/core/Formatters.swift
  16. 20
      TournamentStats/report/Queries.swift
  17. 16
      TournamentStats/report/ReportGenerator.swift
  18. 40
      TournamentStats/report/structures/CountryCashes.swift

@ -7,6 +7,7 @@
objects = {
/* Begin PBXBuildFile section */
4DA5CA1E22AD078A00AC628E /* CountryCashes.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4DA5CA1D22AD078A00AC628E /* CountryCashes.swift */; };
4DF7608422A3FB96004B0EF1 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4DF7608322A3FB96004B0EF1 /* AppDelegate.swift */; };
4DF7608622A3FB96004B0EF1 /* MasterViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4DF7608522A3FB96004B0EF1 /* MasterViewController.swift */; };
4DF7608822A3FB96004B0EF1 /* DetailViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4DF7608722A3FB96004B0EF1 /* DetailViewController.swift */; };
@ -42,7 +43,7 @@
4DF7611322A56797004B0EF1 /* event1 copie 7 in Resources */ = {isa = PBXBuildFile; fileRef = 4DF760D722A56794004B0EF1 /* event1 copie 7 */; };
4DF7611422A56797004B0EF1 /* event10 in Resources */ = {isa = PBXBuildFile; fileRef = 4DF760D822A56794004B0EF1 /* event10 */; };
4DF7611522A56797004B0EF1 /* event1 copie 9 in Resources */ = {isa = PBXBuildFile; fileRef = 4DF760D922A56794004B0EF1 /* event1 copie 9 */; };
4DF7611622A56797004B0EF1 /* event4 copie 7 in Resources */ = {isa = PBXBuildFile; fileRef = 4DF760DA22A56794004B0EF1 /* event4 copie 7 */; };
4DF7611622A56797004B0EF1 /* event16 in Resources */ = {isa = PBXBuildFile; fileRef = 4DF760DA22A56794004B0EF1 /* event16 */; };
4DF7611722A56797004B0EF1 /* event8 in Resources */ = {isa = PBXBuildFile; fileRef = 4DF760DB22A56794004B0EF1 /* event8 */; };
4DF7611822A56797004B0EF1 /* event2 copie 5 in Resources */ = {isa = PBXBuildFile; fileRef = 4DF760DC22A56794004B0EF1 /* event2 copie 5 */; };
4DF7611922A56797004B0EF1 /* event4 copie 5 in Resources */ = {isa = PBXBuildFile; fileRef = 4DF760DD22A56794004B0EF1 /* event4 copie 5 */; };
@ -59,11 +60,11 @@
4DF7612422A56797004B0EF1 /* event3 copie 4 in Resources */ = {isa = PBXBuildFile; fileRef = 4DF760E822A56795004B0EF1 /* event3 copie 4 */; };
4DF7612522A56797004B0EF1 /* event3 copie 3 in Resources */ = {isa = PBXBuildFile; fileRef = 4DF760E922A56795004B0EF1 /* event3 copie 3 */; };
4DF7612622A56797004B0EF1 /* event4 copie 4 in Resources */ = {isa = PBXBuildFile; fileRef = 4DF760EA22A56795004B0EF1 /* event4 copie 4 */; };
4DF7612722A56797004B0EF1 /* event4 copie 9 in Resources */ = {isa = PBXBuildFile; fileRef = 4DF760EB22A56795004B0EF1 /* event4 copie 9 */; };
4DF7612722A56797004B0EF1 /* event14 in Resources */ = {isa = PBXBuildFile; fileRef = 4DF760EB22A56795004B0EF1 /* event14 */; };
4DF7612822A56797004B0EF1 /* event2 copie 11 in Resources */ = {isa = PBXBuildFile; fileRef = 4DF760EC22A56795004B0EF1 /* event2 copie 11 */; };
4DF7612922A56797004B0EF1 /* event3 copie in Resources */ = {isa = PBXBuildFile; fileRef = 4DF760ED22A56795004B0EF1 /* event3 copie */; };
4DF7612A22A56797004B0EF1 /* event1 copie 8 in Resources */ = {isa = PBXBuildFile; fileRef = 4DF760EE22A56795004B0EF1 /* event1 copie 8 */; };
4DF7612B22A56797004B0EF1 /* event4 copie 8 in Resources */ = {isa = PBXBuildFile; fileRef = 4DF760EF22A56795004B0EF1 /* event4 copie 8 */; };
4DF7612B22A56797004B0EF1 /* event15 in Resources */ = {isa = PBXBuildFile; fileRef = 4DF760EF22A56795004B0EF1 /* event15 */; };
4DF7612C22A56797004B0EF1 /* event5 in Resources */ = {isa = PBXBuildFile; fileRef = 4DF760F022A56795004B0EF1 /* event5 */; };
4DF7612D22A56797004B0EF1 /* event1 copie 11 in Resources */ = {isa = PBXBuildFile; fileRef = 4DF760F122A56795004B0EF1 /* event1 copie 11 */; };
4DF7612E22A56797004B0EF1 /* event12 in Resources */ = {isa = PBXBuildFile; fileRef = 4DF760F222A56795004B0EF1 /* event12 */; };
@ -78,7 +79,7 @@
4DF7613722A56797004B0EF1 /* event3 copie 11 in Resources */ = {isa = PBXBuildFile; fileRef = 4DF760FB22A56796004B0EF1 /* event3 copie 11 */; };
4DF7613822A56797004B0EF1 /* event3 copie 6 in Resources */ = {isa = PBXBuildFile; fileRef = 4DF760FC22A56796004B0EF1 /* event3 copie 6 */; };
4DF7613922A56797004B0EF1 /* event1 copie 14 in Resources */ = {isa = PBXBuildFile; fileRef = 4DF760FD22A56796004B0EF1 /* event1 copie 14 */; };
4DF7613A22A56797004B0EF1 /* event4 copie 6 in Resources */ = {isa = PBXBuildFile; fileRef = 4DF760FE22A56796004B0EF1 /* event4 copie 6 */; };
4DF7613A22A56797004B0EF1 /* event17 in Resources */ = {isa = PBXBuildFile; fileRef = 4DF760FE22A56796004B0EF1 /* event17 */; };
4DF7613B22A56797004B0EF1 /* event11 in Resources */ = {isa = PBXBuildFile; fileRef = 4DF760FF22A56796004B0EF1 /* event11 */; };
4DF7613C22A56797004B0EF1 /* event4 copie in Resources */ = {isa = PBXBuildFile; fileRef = 4DF7610022A56796004B0EF1 /* event4 copie */; };
4DF7613D22A56797004B0EF1 /* event2 copie 12 in Resources */ = {isa = PBXBuildFile; fileRef = 4DF7610122A56796004B0EF1 /* event2 copie 12 */; };
@ -107,6 +108,7 @@
/* End PBXContainerItemProxy section */
/* Begin PBXFileReference section */
4DA5CA1D22AD078A00AC628E /* CountryCashes.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CountryCashes.swift; sourceTree = "<group>"; };
4DF7608022A3FB96004B0EF1 /* TournamentStats.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = TournamentStats.app; sourceTree = BUILT_PRODUCTS_DIR; };
4DF7608322A3FB96004B0EF1 /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = "<group>"; };
4DF7608522A3FB96004B0EF1 /* MasterViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MasterViewController.swift; sourceTree = "<group>"; };
@ -146,7 +148,7 @@
4DF760D722A56794004B0EF1 /* event1 copie 7 */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "event1 copie 7"; sourceTree = "<group>"; };
4DF760D822A56794004B0EF1 /* event10 */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = event10; sourceTree = "<group>"; };
4DF760D922A56794004B0EF1 /* event1 copie 9 */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "event1 copie 9"; sourceTree = "<group>"; };
4DF760DA22A56794004B0EF1 /* event4 copie 7 */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "event4 copie 7"; sourceTree = "<group>"; };
4DF760DA22A56794004B0EF1 /* event16 */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = event16; sourceTree = "<group>"; };
4DF760DB22A56794004B0EF1 /* event8 */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = event8; sourceTree = "<group>"; };
4DF760DC22A56794004B0EF1 /* event2 copie 5 */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "event2 copie 5"; sourceTree = "<group>"; };
4DF760DD22A56794004B0EF1 /* event4 copie 5 */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "event4 copie 5"; sourceTree = "<group>"; };
@ -163,11 +165,11 @@
4DF760E822A56795004B0EF1 /* event3 copie 4 */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "event3 copie 4"; sourceTree = "<group>"; };
4DF760E922A56795004B0EF1 /* event3 copie 3 */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "event3 copie 3"; sourceTree = "<group>"; };
4DF760EA22A56795004B0EF1 /* event4 copie 4 */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "event4 copie 4"; sourceTree = "<group>"; };
4DF760EB22A56795004B0EF1 /* event4 copie 9 */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "event4 copie 9"; sourceTree = "<group>"; };
4DF760EB22A56795004B0EF1 /* event14 */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = event14; sourceTree = "<group>"; };
4DF760EC22A56795004B0EF1 /* event2 copie 11 */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "event2 copie 11"; sourceTree = "<group>"; };
4DF760ED22A56795004B0EF1 /* event3 copie */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "event3 copie"; sourceTree = "<group>"; };
4DF760EE22A56795004B0EF1 /* event1 copie 8 */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "event1 copie 8"; sourceTree = "<group>"; };
4DF760EF22A56795004B0EF1 /* event4 copie 8 */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "event4 copie 8"; sourceTree = "<group>"; };
4DF760EF22A56795004B0EF1 /* event15 */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = event15; sourceTree = "<group>"; };
4DF760F022A56795004B0EF1 /* event5 */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = event5; sourceTree = "<group>"; };
4DF760F122A56795004B0EF1 /* event1 copie 11 */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "event1 copie 11"; sourceTree = "<group>"; };
4DF760F222A56795004B0EF1 /* event12 */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = event12; sourceTree = "<group>"; };
@ -182,7 +184,7 @@
4DF760FB22A56796004B0EF1 /* event3 copie 11 */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "event3 copie 11"; sourceTree = "<group>"; };
4DF760FC22A56796004B0EF1 /* event3 copie 6 */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "event3 copie 6"; sourceTree = "<group>"; };
4DF760FD22A56796004B0EF1 /* event1 copie 14 */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "event1 copie 14"; sourceTree = "<group>"; };
4DF760FE22A56796004B0EF1 /* event4 copie 6 */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "event4 copie 6"; sourceTree = "<group>"; };
4DF760FE22A56796004B0EF1 /* event17 */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = event17; sourceTree = "<group>"; };
4DF760FF22A56796004B0EF1 /* event11 */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = event11; sourceTree = "<group>"; };
4DF7610022A56796004B0EF1 /* event4 copie */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "event4 copie"; sourceTree = "<group>"; };
4DF7610122A56796004B0EF1 /* event2 copie 12 */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "event2 copie 12"; sourceTree = "<group>"; };
@ -349,10 +351,10 @@
4DF760DF22A56794004B0EF1 /* event4 copie 3 */,
4DF760EA22A56795004B0EF1 /* event4 copie 4 */,
4DF760DD22A56794004B0EF1 /* event4 copie 5 */,
4DF760FE22A56796004B0EF1 /* event4 copie 6 */,
4DF760DA22A56794004B0EF1 /* event4 copie 7 */,
4DF760EF22A56795004B0EF1 /* event4 copie 8 */,
4DF760EB22A56795004B0EF1 /* event4 copie 9 */,
4DF760FE22A56796004B0EF1 /* event17 */,
4DF760DA22A56794004B0EF1 /* event16 */,
4DF760EF22A56795004B0EF1 /* event15 */,
4DF760EB22A56795004B0EF1 /* event14 */,
4DF760F022A56795004B0EF1 /* event5 */,
4DF7610322A56797004B0EF1 /* event6 */,
4DF760D022A56793004B0EF1 /* event7 */,
@ -401,6 +403,7 @@
4DF7614922A66675004B0EF1 /* TournamentWinner.swift */,
4DF7614E22A6CF93004B0EF1 /* PlayerResult.swift */,
4DF7615022A7AECA004B0EF1 /* TournamentRepresentable.swift */,
4DA5CA1D22AD078A00AC628E /* CountryCashes.swift */,
);
path = structures;
sourceTree = "<group>";
@ -495,11 +498,11 @@
4DF7613F22A56797004B0EF1 /* event6 in Resources */,
4DF7613022A56797004B0EF1 /* event2 copie 10 in Resources */,
4DF7609022A3FB98004B0EF1 /* LaunchScreen.storyboard in Resources */,
4DF7612B22A56797004B0EF1 /* event4 copie 8 in Resources */,
4DF7612B22A56797004B0EF1 /* event15 in Resources */,
4DF7608D22A3FB98004B0EF1 /* Assets.xcassets in Resources */,
4DF7613722A56797004B0EF1 /* event3 copie 11 in Resources */,
4DF7611922A56797004B0EF1 /* event4 copie 5 in Resources */,
4DF7612722A56797004B0EF1 /* event4 copie 9 in Resources */,
4DF7612722A56797004B0EF1 /* event14 in Resources */,
4DF760B522A47F6D004B0EF1 /* event2 in Resources */,
4DF7614222A56797004B0EF1 /* event3 copie 5 in Resources */,
4DF7613B22A56797004B0EF1 /* event11 in Resources */,
@ -513,7 +516,7 @@
4DF7610C22A56797004B0EF1 /* event7 in Resources */,
4DF7613122A56797004B0EF1 /* event1 copie 4 in Resources */,
4DF7610E22A56797004B0EF1 /* event2 copie 14 in Resources */,
4DF7611622A56797004B0EF1 /* event4 copie 7 in Resources */,
4DF7611622A56797004B0EF1 /* event16 in Resources */,
4DF7611C22A56797004B0EF1 /* event3 copie 7 in Resources */,
4DF7611022A56797004B0EF1 /* event9 in Resources */,
4DF7613E22A56797004B0EF1 /* event1 copie 5 in Resources */,
@ -539,7 +542,7 @@
4DF7612E22A56797004B0EF1 /* event12 in Resources */,
4DF7612222A56797004B0EF1 /* event1 copie 13 in Resources */,
4DF7611122A56797004B0EF1 /* event3 copie 12 in Resources */,
4DF7613A22A56797004B0EF1 /* event4 copie 6 in Resources */,
4DF7613A22A56797004B0EF1 /* event17 in Resources */,
4DF7612022A56797004B0EF1 /* event3 copie 14 in Resources */,
4DF7614122A56797004B0EF1 /* event2 copie 9 in Resources */,
4DF7613D22A56797004B0EF1 /* event2 copie 12 in Resources */,
@ -606,6 +609,7 @@
4DF7614F22A6CF93004B0EF1 /* PlayerResult.swift in Sources */,
4DF7614622A59407004B0EF1 /* CumulatedResults.swift in Sources */,
4DF760BF22A560AA004B0EF1 /* FileWriter.swift in Sources */,
4DA5CA1E22AD078A00AC628E /* CountryCashes.swift in Sources */,
4DF760BC22A5270E004B0EF1 /* Queries.swift in Sources */,
4DF760BA22A524F4004B0EF1 /* Formatters.swift in Sources */,
4DF7614D22A6CC0D004B0EF1 /* NotablePlayers.swift in Sources */,

@ -33,14 +33,12 @@ class AppDelegate: UIResponder, UIApplicationDelegate, UISplitViewControllerDele
config.deleteRealmIfMigrationNeeded = true
Realm.Configuration.defaultConfiguration = config
let realm = try! Realm()
try! realm.write {
realm.deleteAll()
}
// let map = NSLocale.isoCountryCodes.map { (cc) -> (String, String) in
// return (cc, NSLocale.current.localizedString(forRegionCode: cc)!)
// }
// print("cc = \(map)")
Seed.createTournaments()
Importer.start()
ReportGenerator.create()
ReportGenerator.go()
return true
}

@ -0,0 +1,784 @@
1
BrazilMurilo Figueredo
$207,003
1,001.7
Penha
-
Brazil
2
United StatesJason Stockfish
$127,932
500.9
Las Vegas
NV
United States
3
United StatesGary Kosakowski
$89,730
450.8
Newark
NJ
United States
4
United StatesPhillip Hui
$63,860
400.7
San Antonio
TX
United States
5
United StatesChris Klodnicki
$46,127
375.7
Philadelphia
PA
United States
6
UkraineAlex Dovzhenko
$33,822
350.6
Kiev
-
Ukraine
7
United StatesJoe Aronesty
$25,181
300.5
Miami Beach
FL
United States
8
United StatesDanny Woolard
$19,040
275.5
Ventura
CA
United States
9
United StatesJason Acosta
$14,625
250.4
Little Ferry
NJ
United States
10
United StatesKeith Sexton
$14,625
200.3
Henderson
NV
United States
11
AustraliaAshish Gupta
$11,415
200.3
Melbourne
-
Australia
12
BelgiumLaurent Manderlier
$11,415
200.3
-
-
Belgium
13
Russian FederationSergey Altbregin
$9,056
200.3
St Petersburg
-
Russian Federation
14
United StatesMark Gregorich
$9,056
200.3
Las Vegas
NV
United States
15
ChinaYueqi Zhu
$7,303
200.3
Benxi
-
China
16
United StatesRon Ware
$7,303
200.3
Las Vegas
NV
United States
17
United StatesAndre Ching
$5,990
200.3
Las Vegas
NV
United States
18
CanadaBradley Smith
$5,990
200.3
Thornhill
ON
Canada
19
United StatesValentin Vornicu
$5,990
200.3
San Diego
CA
United States
20
United StatesTony Ma
$5,990
200.3
South El Monte
CA
United States
21
United StatesDavid Brown
$5,990
200.3
Jackson
TN
United States
22
United StatesMichael Gamerman
$5,990
200.3
Foxborough
MA
United States
23
SpainRaul Paez
$5,990
200.3
Barbara Del Valle
-
Spain
24
United StatesDaniel Brecht-Haddad
$5,990
200.3
Seattle
WA
United States
25
United StatesCarlos Chadha-Villamarin
$4,997
200.3
Lexington
KY
United States
26
BrazilAndre Akkari
$4,997
200.3
Sao Paulo
-
Brazil
27
United StatesAlex Ferrari
$4,997
200.3
Los Angeles
CA
United States
28
United StatesTimothy Raines
$4,997
200.3
Montague
MA
United States
29
United StatesAnthony Zinno
$4,997
200.3
Boston
MA
United States
30
United StatesTed Woolridge
$4,997
200.3
San Diego
CA
United States
31
United StatesDJ Buckley
$4,997
100.2
Eden Prairie
MN
United States
32
United StatesThomas Walter
$4,997
100.2
Hallandale Beach
FL
United States
33
United StatesChris Tryba
$4,242
100.2
Evergreen
CO
United States
34
United StatesOliver Vereschagin
$4,242
100.2
West Hollywood
CA
United States
35
JapanTamon Nakamura
$4,242
100.2
Tokyo
-
Japan
36
United StatesHrair Danielyan
$4,242
100.2
Sunland
CA
United States
37
United StatesRalph Perry
$4,242
100.2
Las Vegas
NV
United States
38
United StatesKevin Gerhart
$4,242
100.2
Las Vegas
NV
United States
39
United StatesDavid Bach
$4,242
100.2
Athens
GA
United States
40
United StatesBarry Levy
$4,242
100.2
Brooklyn
NY
United States
41
United StatesDavid Brookshire
$3,666
100.2
Baltimore
MD
United States
42
FranceDamien Rivier
$3,666
100.2
St Denis De L Hotel
-
France
43
United StatesWalter Twardus
$3,666
100.2
Newark
DE
United States
44
United StatesRolando Lozano
$3,666
100.2
Channelview
TX
United States
45
United StatesJeffrey Foreman
$3,666
100.2
Albuquerque
NM
United States
46
United StatesShane Douglas
$3,666
100.2
Priest River
ID
United States
47
United StatesDaniel Zack
$3,666
100.2
Princeton
NJ
United States
48
United StatesRichard Bai
$3,666
100.2
Schaumburg
IL
United States
49
United StatesJeffrey Mitseff
$3,225
100.2
Portland
OR
United States
50
United StatesGregory Smith
$3,225
100.2
Everett
WA
United States
51
United StatesDaniel Ratigan
$3,225
100.2
Seattle
WA
United States
52
United StatesMike Epstein
$3,225
100.2
Las Vegas
NV
United States
53
United StatesRussell Fox
$3,225
100.2
Irvine
CA
United States
54
CanadaJason Bigelow
$3,225
100.2
St Johns
NL
Canada
55
United StatesJim Collopy
$3,225
100.2
Washington
MD
United States
56
United StatesJean Gaspard
$3,225
100.2
Evanston
IL
United States
57
BrazilMarcos Rogerio De Siqueira
$2,889
100.2
-
-
Brazil
58
BrazilManoel Filho
$2,889
100.2
Rio De Janeiro
-
Brazil
59
United StatesMatt Savage
$2,889
100.2
South San Francisco
CA
United States
60
United StatesBill Tracy
$2,889
100.2
East Meadow
NY
United States
61
United StatesDavid Prager
$2,889
100.2
New York
NY
United States
62
United StatesColin Mchugh
$2,889
50.1
Las Vegas
NV
United States
63
United StatesEdward Nassif
$2,889
50.1
Ames
IA
United States
64
United StatesDouglas Redmann
$2,889
50.1
N Barrington
IL
United States
65
United StatesBentley Roberts
$2,638
50.1
Lexington
KY
United States
66
United StatesJonathan Miller
$2,638
50.1
Collingswood
NJ
United States
67
United StatesArata Ogawa
$2,638
50.1
-
-
United States
68
AustriaIvo Donev
$2,638
50.1
Lochau
-
Austria
69
United StatesKenneth Po
$2,638
50.1
Seven Hills
OH
United States
70
United StatesMichael Moore
$2,638
50.1
Agar
SD
United States
71
United StatesBlake Cahail
$2,638
50.1
Kansas City
MO
United States
72
United StatesMark Castagnini
$2,638
50.1
Walnut Creek
CA
United States
73
United StatesTodd Ickow
$2,454
50.1
Valparaiso
IN
United States
74
United StatesAaron Klausman
$2,454
50.1
Birmingham
AL
United States
75
United StatesChris Wallace
$2,454
50.1
Saint Paul
MN
United States
76
United StatesDoug Saab
$2,454
50.1
Trussville
AL
United States
77
United StatesRyan Beckwith
$2,454
50.1
Stoughton
WI
United States
78
United StatesAlan Leach
$2,454
50.1
Fort Worth
TX
United States
79
United StatesKevin Johnson
$2,454
50.1
Bartlett
TN
United States
80
United StatesJames Pritchard
$2,454
50.1
Dacula
GA
United States
81
United StatesDavid Olson
$2,328
50.1
Dallas
TX
United States
82
United StatesMatt Grapenthien
$2,328
50.1
Chicago
IL
United States
83
United StatesGeorge Fountoulakis
$2,328
50.1
Stuart
FL
United States
84
United StatesCarol Fuchs
$2,328
50.1
Los Angeles
CA
United States
85
United StatesWilliam Anderson
$2,328
50.1
Missoula
MT
United States
86
United StatesLena Wang
$2,328
50.1
Foster City
CA
United States
87
United StatesDavid "ODB" Baker
$2,328
50.1
Sahuarita
AZ
United States
88
United StatesWilliam Shelton
$2,328
50.1
Gilbert
AZ
United States
89
United StatesAnthony Mender
$2,328
50.1
Las Vegas
NV
United States
90
United StatesDon Zewin
$2,328
50.1
Las Vegas
NV
United States
91
United StatesRafael Concepcion
$2,328
50.1
Las Vegas
-
United States
92
United StatesChris Ferguson
$2,328
50.1
Las Vegas
NV
United States
93
United StatesAdam Friedman
$2,328
50.1
Gahanna
OH
United States
94
AustriaAlexander Freund
$2,328
50.1
-
-
Austria
95
United StatesHernan Salazar
$2,328
50.1
Las Vegas
NV
United States
96
United StatesScott Bohlman
$2,328
50.1
Lemont
IL
United States
97
United StatesJimmy Fricke
$2,253
50.1
Las Vegas
NV
United States
98
CanadaRonny Der
$2,253
50.1
Edmonton
AB
Canada
99
United StatesNicolas Milgrom
$2,253
50.1
Woodland Hills
CA
United States
100
United StatesDaniel Spear
$2,253
50.1
Newtown Sq
PA
United States
101
United StatesCarol Kline
$2,253
50.1
Las Vegas
NV
United States
102
United StatesAshton Berner
$2,253
50.1
Henderson
NV
United States
103
United StatesJay Johnson
$2,253
50.1
San Bernardino
CA
United States
104
United StatesEdwin Eng
$2,253
50.1
Boulder
CO
United States
105
United StatesBrian Tamplen
$2,253
50.1
Houston
TX
United States
106
United StatesBrian Ballentine
$2,253
50.1
Liverpool
NY
United States
107
BrazilJose Arenstein
$2,253
50.1
Sao Paulo
-
Brazil
108
United StatesNorman Graves
$2,253
50.1
Houston
TX
United States
109
United StatesJohn Evans
$2,253
50.1
Granbury
TX
United States
110
United StatesBradley Helm
$2,253
50.1
Scottsdale
AZ
United States
111
SwedenMikael Gronvik
$2,253
50.1
Ekero
-
Sweden
112
United StatesDavid Jacobs
$2,253
50.1
Boynton Beach
FL
United States

@ -0,0 +1,56 @@
1
United StatesSean Swingruber
$186,356
1,006.5
Venice
CA
United States
2
United StatesBen Yu
$115,174
503.2
Las Vegas
NV
United States
3
United StatesCord Garcia
$73,333
427.7
Houston
TX
United States
4
United StatesKeith Lehr
$73,333
427.7
Bossier City
LA
United States
5
United StatesJimmy D'Ambrosio
$31,151
327.1
Mundelein
IL
United States
6
United StatesJake Schindler
$31,151
327.1
Philadelphia
PA
United States
7
CanadaKristen Bicknell
$31,151
327.1
Nepean
ON
Canada
8
AustriaMatthias Eibinger
$31,151
327.1
Graz
-
Austria

File diff suppressed because it is too large Load Diff

@ -0,0 +1,700 @@
1
United StatesBrett Apter
$238,824
1000
Arlington
VA
United States
2
Russian FederationAnatolii Zyrin
$147,594
1000
Lesnoy Gorodok
-
Russian Federation
3
CanadaTommy Nguyen
$106,351
462.2
Oakville
ON
Canada
4
United StatesAdrian Scarpa
$77,591
410.8
Manchester
CT
United States
5
PortugalManuel Afonso Soares Ruivo
$57,326
385.1
Coimbra
-
Portugal
6
United StatesCary Katz
$42,897
359.5
Las Vegas
NV
United States
7
JapanShintaro Baba
$32,517
308.1
Hakataku
-
Japan
8
United StatesMichael O'Grady
$24,973
282.4
Wilton
CT
United States
9
United StatesKenna James
$19,436
256.8
Las Vegas
NV
United States
10
SloveniaMarko Maher
$15,331
205.4
Ljubljana
-
Slovenia
11
United StatesJason Johnson
$5,279
97.6
Pontiac
MI
United States
12
United StatesMichael Ciaravino
$5,279
97.6
Plant City
FL
United States
13
United StatesQuinn Bruno
$5,279
97.6
Boynton Beach
FL
United States
14
United StatesGeorge Alex
$5,279
97.6
Boston
MA
United States
15
United StatesAlan Thompson
$5,279
97.6
Bismarck
ND
United States
16
United StatesJason Shinbaum
$5,279
97.6
St Augustine
FL
United States
17
United StatesRobert Mitchell
$5,279
97.6
Henderson
NV
United States
18
PolandMichal Lubas
$5,279
97.6
Zielona Gora
-
Poland
19
SpainOscar Lima
$5,279
97.6
-
-
Spain
20
United StatesAaron Pinson
$5,279
97.6
Baltimore
MD
United States
21
United StatesCody Wiegmann
$5,279
97.6
San Jose
CA
United States
22
United StatesBeau Winn
$5,279
97.6
Los Angeles
CA
United States
23
South KoreaSteve Yea
$5,279
97.6
Seoul
-
South Korea
24
CanadaLinyang Song
$5,279
97.6
Richmond
BC
Canada
25
United StatesAthanasios Polychronopoulos
$5,279
97.6
Springs
NY
United States
26
United StatesJoe Cada
$5,279
97.6
Shelby Township
MI
United States
27
United StatesErik Seidel
$5,279
97.6
Henderson
NV
United States
28
DenmarkSebastian Percysmith
$5,279
97.6
Copenhagen
-
Denmark
29
United StatesChristopher Godfrey
$5,279
97.6
Fremont
CA
United States
30
United StatesAdam Walton
$5,279
97.6
Thousand Oaks
CA
United States
31
United StatesDillon Ott
$5,279
97.6
Altoona
PA
United States
32
CanadaPlamen Markov
$5,279
97.6
North York
-
Canada
33
United StatesAlexander Gambino
$5,279
97.6
Royersford
PA
United States
34
United StatesAdam Volen
$5,279
97.6
Fullerton
CA
United States
35
United StatesUpeshka De Silva
$5,279
97.6
Katy
TX
United States
36
United StatesDaniel Ott
$5,279
97.6
Altoona
PA
United States
37
United KingdomJonathan Proudfoot
$5,279
97.6
-
-
United Kingdom
38
United StatesNicolas Manion
$5,279
97.6
Muskegon
MI
United States
39
United StatesCasey Coughlan
$5,279
97.6
San Diego
CA
United States
40
United StatesQui Nguyen
$5,279
97.6
Las Vegas
NV
United States
41
United StatesVince Benvenuto
$5,279
97.6
Onl Signup-No City
NY
United States
42
United StatesKane Kalas
$5,279
97.6
Philadelphia
PA
United States
43
BulgariaIvan Zhechev
$5,279
97.6
-
-
Bulgaria
44
United StatesNicholas Verderamo
$5,279
97.6
Baltimore
MD
United States
45
United StatesCaleb King
$5,279
97.6
Springfield
OH
United States
46
United StatesJames Little
$5,279
97.6
San Francisco
CA
United States
47
United KingdomFlorian Duta
$5,279
97.6
Birmingham
-
United Kingdom
48
United StatesIbrahim Ghazal
$5,279
97.6
Las Vegas
NV
United States
49
ChadMengqi Chen
$5,279
97.6
Hai Kou
-
Chad
50
CanadaDustin Born
$5,279
97.6
Abbotsford
BC
Canada
51
United StatesJohn Murphy
$5,279
97.6
Seattle
WA
United States
52
BrazilGil Morgensztern
$5,279
97.6
Sao Paulo
-
Brazil
53
United StatesStephen Song
$5,279
97.6
Greenwich
CT
United States
54
United StatesCharles Furey
$5,279
97.6
Atlantic City
NJ
United States
55
United KingdomDragos Trofimov
$5,279
97.6
Waringstown
-
United Kingdom
56
BrazilFelipe Ramos
$5,279
97.6
-
-
Brazil
57
GermanyTonio Roder
$5,279
97.6
Ruesselsheim
-
Germany
58
United StatesJorge Gomez
$5,279
97.6
Houston
TX
United States
59
United KingdomYiannis Liperis
$5,279
97.6
-
-
United Kingdom
60
United StatesSam Abueid
$5,279
97.6
Chicago
IL
United States
61
United StatesRobert Salaburu
$5,279
97.6
San Antonio
TX
United States
62
United StatesRaymond Ho
$5,279
97.6
Cerritos
CA
United States
63
United StatesBob Shao
$5,279
97.6
Las Vegas
NV
United States
64
AustraliaDaniel Neilson
$5,279
97.6
Sydney
-
Australia
65
United StatesLouise Francoeur
$5,279
97.6
Las Vegas
NV
United States
66
United StatesDavid Worden
$5,279
97.6
N Ridgeville
OH
United States
67
United StatesJames Gilbert
$5,279
97.6
Bensalem
PA
United States
68
United StatesJoshua Hillock
$5,279
97.6
Coconut Creek
FL
United States
69
United StatesWilliam Klein
$5,279
97.6
Laguna Hills
CA
United States
70
United StatesBenjamin Ector
$5,279
97.6
Marietta
GA
United States
71
United StatesIdo Ashkenazi
$5,279
97.6
Davie
FL
United States
72
United StatesKelly Minkin
$5,279
97.6
Tucson
AZ
United States
73
United StatesBrad Albrinck
$5,279
97.6
Cincinnati
OH
United States
74
United StatesJason Daly
$5,279
97.6
Houston
TX
United States
75
CanadaTyler Walker
$5,279
97.6
Langley
-
Canada
76
United StatesLoni Harwood
$5,279
97.6
Staten Island
NY
United States
77
Russian FederationDenis Timofeev
$5,279
97.6
-
-
Russian Federation
78
United StatesRyan Olisar
$5,279
97.6
Naperville
IL
United States
79
United StatesRoger Tung
$5,279
97.6
Moraga
CA
United States
80
United StatesJay Weil
$5,279
97.6
Hillsboro
OR
United States
81
United StatesKevin Andriamahefa
$5,279
97.6
Chicago
IL
United States
82
United StatesEric Bunch
$5,279
97.6
Tulsa
OK
United States
83
CanadaAlexander Villa
$5,279
97.6
Ottawa
-
Canada
84
United StatesChristopher Farmer
$5,279
97.6
Poway
CA
United States
85
AustriaSeverin Schleser
$5,279
97.6
Wien
-
Austria
86
CanadaDavid Guay
$5,279
97.6
St-Hubert
QC
Canada
87
United StatesJeffrey Griffiths
$5,279
97.6
Pacifica
CA
United States
88
United StatesArish Nat
$5,279
97.6
Elk Grove
CA
United States
89
United KingdomBrandon Sheils
$5,279
97.6
Birmingham
-
United Kingdom
90
United StatesDavid Mock
$5,279
97.6
Medford
MA
United States
91
CanadaGreg Mueller
$5,279
97.6
Vancouver
BC
Canada
92
United StatesMaurice Hawkins
$5,279
97.6
West Palm Beach
FL
United States
93
AustriaMario Mosbock
$5,279
97.6
St Polten
-
Austria
94
United StatesBrett Feder
$5,279
97.6
Lexington
SC
United States
95
United StatesKyle Montgomery
$5,279
97.6
Fishers
IN
United States
96
United StatesJennifer Tilly
$5,279
97.6
Sherman Oaks
CA
United States
97
United StatesEric Holt
$5,279
97.6
Medina
OH
United States
98
United StatesShiraz Lall
$5,279
97.6
Teaneck
NJ
United States
99
United StatesMichael Uzala
$5,279
97.6
Las Vegas
NV
United States
100
Trinidad And TobagoRyan Goindoo
$5,279
97.6
Port Of Spain
-
Trinidad And Tobago

@ -48,8 +48,8 @@ class NotablePlayers {
"Frank Kassela",
"Maria Ho",
"Allen Cunningham",
// "",
// "",
// "David Benyamine",
// "Mike Matusow",
// "",
// "",
// "",

@ -36,11 +36,11 @@ class Seed {
TD(date: "07/06/2019", name: "No-Limit Hold'em", number: 11, buyin: 5000, entries: 400, prizePool: 1860000),
TD(date: "06/06/2019", name: "No-Limit Hold'em Super Turbo Bounty", number: 12, buyin: 1000, entries: 2452, prizePool: 1471200),
TD(date: "07/06/2019", name: "No-Limit 2-7 Lowball Draw", number: 13, buyin: 1500, entries: 296, prizePool: 399600),
TD(date: "08/06/2019", name: "HORSE", number: 14, buyin: 1500, entries: 751, prizePool: 1013850),
TD(date: "09/06/2019", name: "HORSE", number: 14, buyin: 1500, entries: 751, prizePool: 1013850),
TD(date: "09/06/2019", name: "Heads-Up No-Limit Hold'em", number: 15, buyin: 10000, entries: 112, prizePool: 1052800),
TD(date: "08/06/2019", name: "No-Limit Hold'em 6-Handed", number: 16, buyin: 1500, entries: 1832, prizePool: 2473200),
// TD(date: "08/06/2019", name: "No-Limit Hold'em Shootout", number: 17, buyin: 1500, entries: 917, prizePool: 1237950),
// TD(date: "08/06/2019", name: "Omaha Hi-Lo 8 or Better", number: 18, buyin: 10000, entries: 1832, prizePool: 2473200),
TD(date: "09/06/2019", name: "No-Limit Hold'em 6-Handed", number: 16, buyin: 1500, entries: 1832, prizePool: 2473200),
TD(date: "09/06/2019", name: "No-Limit Hold'em Shootout", number: 17, buyin: 1500, entries: 917, prizePool: 1237950),
// TD(date: "08/06/2019", name: "Omaha Hi-Lo 8 or Better", number: 18, buyin: 10000, entries: 183, prizePool: 1720 200),
// TD(date: "08/06/2019", name: "Millionaire Maker - No-Limit Hold'em", number: 19, buyin: 1500, entries: 1832, prizePool: 2473200),
// TD(date: "08/06/2019", name: "Seven-Card Stud", number: 20, buyin: 1500, entries: 285, prizePool: 384750),

@ -19,7 +19,7 @@ class MasterViewController: UITableViewController {
// Do any additional setup after loading the view.
navigationItem.leftBarButtonItem = editButtonItem
let addButton = UIBarButtonItem(barButtonSystemItem: .add, target: self, action: #selector(insertNewObject(_:)))
let addButton = UIBarButtonItem(barButtonSystemItem: .play, target: self, action: #selector(generate(_:)))
navigationItem.rightBarButtonItem = addButton
if let split = splitViewController {
let controllers = split.viewControllers
@ -32,6 +32,13 @@ class MasterViewController: UITableViewController {
super.viewWillAppear(animated)
}
@objc
func generate(_ sender: Any) {
ReportGenerator.go()
}
@objc
func insertNewObject(_ sender: Any) {
reports.insert(NSDate(), at: 0)

@ -18,7 +18,18 @@ extension Locale {
}
func flagoji(from countryName: String) -> String? {
if let countryCode = self.countryCode(from: countryName) {
var adaptedCountryName = countryName
switch countryName {
case "Russian Federation":
adaptedCountryName = "Russia"
case "China":
adaptedCountryName = "China mainland"
default:
break
}
if let countryCode = self.countryCode(from: adaptedCountryName) {
let base : UInt32 = 127397
var s = ""
for v in countryCode.uppercased().unicodeScalars {

@ -96,4 +96,24 @@ class Queries {
return trs
}
static func cashesByCountry(realm: Realm) -> [CountryCashes] {
let playerDistinctCountries = realm.objects(Player.self).distinct(by: ["country"])
var countryCashes: [CountryCashes] = []
for player in playerDistinctCountries {
let country = player.country
let resultsByCountry = realm.objects(Result.self).filter("player.country == %@", country)
let cc = CountryCashes(country: country, cashes: resultsByCountry.count)
countryCashes.append(cc)
}
countryCashes.sort { (cc1, cc2) -> Bool in
return cc1.cashes > cc2.cashes
}
return countryCashes
}
}

@ -14,6 +14,19 @@ class ReportGenerator {
static private let winnersDirectoryName: String = "reports/winners"
static func go() {
let realm = try! Realm()
try! realm.write {
realm.deleteAll()
}
Seed.createTournaments()
Importer.start()
ReportGenerator.create()
}
static func createDirectories() {
// Create winners directory if necessary
@ -68,6 +81,9 @@ class ReportGenerator {
tourniesByPrizepool.writeHTML(fileName: "reports/tourniesByPrizepool.html", limit: nil)
tourniesByPrizepool.writeHTML(fileName: "reports/tourniesByPrizepool_top5.html", limit: 5)
let countryCashes = Queries.cashesByCountry(realm: realm)
countryCashes.writeHTML(fileName: "reports/countryCashes.html")
}
}

@ -0,0 +1,40 @@
//
// CountryCashes.swift
// TournamentStats
//
// Created by Laurent Morvillier on 09/06/2019.
// Copyright © 2019 Stax River. All rights reserved.
//
import Foundation
struct CountryCashes : HTMLRepresentable {
var country: String
var cashes: Int
static func htmlHeaders() -> String {
var strings: [String] = []
strings.append("Country")
strings.append("Cashes")
let all = strings.joined(separator: "</td><td>")
return "<tr class=\"table-header\"><td>\(all)</td></tr>"
}
func html() -> String {
let formattedCountry: String
if let flagoji = Locale.current.flagoji(from: self.country) {
formattedCountry = "\(flagoji) \(self.country)"
} else {
formattedCountry = self.country
}
var strings: [String] = []
strings.append(formattedCountry)
strings.append("\(cashes)")
let all = strings.joined(separator: "</td><td>")
return "<tr><td>\(all)</td></tr>"
}
}
Loading…
Cancel
Save