43 // SAVES - just delete and overwrite |
43 // SAVES - just delete and overwrite |
44 if ([[NSFileManager defaultManager] fileExistsAtPath:SAVES_DIRECTORY()]) |
44 if ([[NSFileManager defaultManager] fileExistsAtPath:SAVES_DIRECTORY()]) |
45 [[NSFileManager defaultManager] removeItemAtPath:SAVES_DIRECTORY() error:NULL]; |
45 [[NSFileManager defaultManager] removeItemAtPath:SAVES_DIRECTORY() error:NULL]; |
46 [[NSFileManager defaultManager] createDirectoryAtPath:SAVES_DIRECTORY() withIntermediateDirectories:NO attributes:nil error:NULL]; |
46 [[NSFileManager defaultManager] createDirectoryAtPath:SAVES_DIRECTORY() withIntermediateDirectories:NO attributes:nil error:NULL]; |
47 |
47 |
48 // SETTINGS FILE - merge when present |
48 // SETTINGS - nsuserdefaults ftw |
49 NSString *baseSettingsFile = [[NSString alloc] initWithFormat:@"%@/Settings/settings.plist",resourcesDir]; |
49 createSettings(); |
50 if ([[NSFileManager defaultManager] fileExistsAtPath:SETTINGS_FILE()]) { |
|
51 NSDictionary *settings = [[NSDictionary alloc] initWithContentsOfFile:SETTINGS_FILE()]; |
|
52 NSMutableDictionary *update = [[NSMutableDictionary alloc] initWithContentsOfFile:baseSettingsFile]; |
|
53 // the order of what adds what is important |
|
54 [update addEntriesFromDictionary:settings]; |
|
55 [settings release]; |
|
56 [update writeToFile:SETTINGS_FILE() atomically:YES]; |
|
57 [update release]; |
|
58 } else |
|
59 [[NSFileManager defaultManager] copyItemAtPath:baseSettingsFile toPath:SETTINGS_FILE() error:NULL]; |
|
60 [baseSettingsFile release]; |
|
61 |
50 |
62 // TEAMS - update exisiting teams with new format |
51 // TEAMS - update exisiting teams with new format |
63 if ([[NSFileManager defaultManager] fileExistsAtPath:TEAMS_DIRECTORY()] == NO) { |
52 if ([[NSFileManager defaultManager] fileExistsAtPath:TEAMS_DIRECTORY()] == NO) { |
64 [[NSFileManager defaultManager] createDirectoryAtPath:TEAMS_DIRECTORY() |
53 [[NSFileManager defaultManager] createDirectoryAtPath:TEAMS_DIRECTORY() |
65 withIntermediateDirectories:YES |
54 withIntermediateDirectories:YES |