From acd6c0f1e8d719673d17de3e37f01ee6d4af7d92 Mon Sep 17 00:00:00 2001 From: Abhishek Banthia Date: Fri, 18 Dec 2015 23:46:34 -0500 Subject: [PATCH] Reachability + API additions. --- Clocker.xcodeproj/project.pbxproj | 65 +-- .../UserInterfaceState.xcuserstate | Bin 228762 -> 239182 bytes .../xcdebugger/Breakpoints_v2.xcbkptlist | 28 ++ Clocker/AboutUsWindow/CLAboutUsView.xib | 2 +- Clocker/ApplicationDelegate.m | 13 +- Clocker/Clocker-Info.plist | 5 + Clocker/PanelController.m | 49 +- Clocker/Preferences/CLPreferencesView.xib | 104 ++-- .../Preferences/CLPreferencesViewController.h | 5 +- .../Preferences/CLPreferencesViewController.m | 445 ++++++++++++------ Clocker/Reachability/Reachability.h | 61 +++ Clocker/Reachability/Reachability.m | 269 +++++++++++ Clocker/Utilities/CommonStrings.h | 1 + Clocker/Utilities/CommonStrings.m | 3 +- 14 files changed, 775 insertions(+), 275 deletions(-) create mode 100644 Clocker/Reachability/Reachability.h create mode 100644 Clocker/Reachability/Reachability.m diff --git a/Clocker.xcodeproj/project.pbxproj b/Clocker.xcodeproj/project.pbxproj index de818a6..fd3f3e6 100755 --- a/Clocker.xcodeproj/project.pbxproj +++ b/Clocker.xcodeproj/project.pbxproj @@ -44,26 +44,10 @@ 9A9E876F1C1FEE1A00A7A2DF /* Parse.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = 9A9E87581C1FED1A00A7A2DF /* Parse.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; 9AB9357B1C1AD8F7001285A0 /* CLRatingCellView.m in Sources */ = {isa = PBXBuildFile; fileRef = 9AB9357A1C1AD8F7001285A0 /* CLRatingCellView.m */; }; 9AC678E41C1ABAB9003B4F6B /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 9AC678E31C1ABAB9003B4F6B /* QuartzCore.framework */; }; + 9AF9A16B1C250AB300EE7C2A /* Reachability.m in Sources */ = {isa = PBXBuildFile; fileRef = 9AF9A16A1C250AB300EE7C2A /* Reachability.m */; }; DD4F7C0913C30F9F00825C6E /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = DD4F7C0813C30F9F00825C6E /* Cocoa.framework */; }; /* End PBXBuildFile section */ -/* Begin PBXContainerItemProxy section */ - 9A5951CC1C1D1B6F009C17AA /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 9A5951C71C1D1B6F009C17AA /* ApptentiveConnect.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 8DC2EF5B0486A6940098B216; - remoteInfo = ApptentiveConnect; - }; - 9A5951CE1C1D1B6F009C17AA /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 9A5951C71C1D1B6F009C17AA /* ApptentiveConnect.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 49626B6D13942A2B0093534C; - remoteInfo = ApptentiveUnitTests; - }; -/* End PBXContainerItemProxy section */ - /* Begin PBXCopyFilesBuildPhase section */ 9A9E876D1C1FEE0B00A7A2DF /* CopyFiles */ = { isa = PBXCopyFilesBuildPhase; @@ -100,7 +84,6 @@ 9A5951BE1C1D0AA0009C17AA /* CLOneWindowController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = CLOneWindowController.m; path = Clocker/CLOneWindow/CLOneWindowController.m; sourceTree = ""; }; 9A5951BF1C1D0AA0009C17AA /* CLOneWindowController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CLOneWindowController.h; path = Clocker/CLOneWindow/CLOneWindowController.h; sourceTree = ""; }; 9A5951C11C1D0AAD009C17AA /* CLOneWindow.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; name = CLOneWindow.xib; path = Clocker/CLOneWindow/CLOneWindow.xib; sourceTree = ""; }; - 9A5951C71C1D1B6F009C17AA /* ApptentiveConnect.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = ApptentiveConnect.xcodeproj; path = Clocker/ApptentiveConnect/ApptentiveConnect.xcodeproj; sourceTree = ""; }; 9A5951D11C1D1D94009C17AA /* ApptentiveConnect.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = ApptentiveConnect.framework; path = Clocker/ApptentiveConnect/ApptentiveConnect.framework; sourceTree = ""; }; 9A5951F31C1D3D81009C17AA /* CLTimezoneCellView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CLTimezoneCellView.h; path = "Clocker/Custom Table Cell Views/CLTimezoneCellView.h"; sourceTree = ""; }; 9A5951F41C1D3D81009C17AA /* CLTimezoneCellView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = CLTimezoneCellView.m; path = "Clocker/Custom Table Cell Views/CLTimezoneCellView.m"; sourceTree = ""; }; @@ -136,6 +119,8 @@ 9AB935791C1AD8F7001285A0 /* CLRatingCellView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CLRatingCellView.h; path = Clocker/CLRatingCellView.h; sourceTree = ""; }; 9AB9357A1C1AD8F7001285A0 /* CLRatingCellView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = CLRatingCellView.m; path = Clocker/CLRatingCellView.m; sourceTree = ""; }; 9AC678E31C1ABAB9003B4F6B /* QuartzCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QuartzCore.framework; path = System/Library/Frameworks/QuartzCore.framework; sourceTree = SDKROOT; }; + 9AF9A1691C250AB300EE7C2A /* Reachability.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Reachability.h; path = Clocker/Reachability/Reachability.h; sourceTree = ""; }; + 9AF9A16A1C250AB300EE7C2A /* Reachability.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = Reachability.m; path = Clocker/Reachability/Reachability.m; sourceTree = ""; }; DD4F7C0413C30F9F00825C6E /* Clocker.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Clocker.app; sourceTree = BUILT_PRODUCTS_DIR; }; DD4F7C0813C30F9F00825C6E /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = System/Library/Frameworks/Cocoa.framework; sourceTree = SDKROOT; }; DD4F7C0B13C30F9F00825C6E /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = System/Library/Frameworks/AppKit.framework; sourceTree = SDKROOT; }; @@ -194,15 +179,6 @@ name = "View Controllers"; sourceTree = ""; }; - 9A5951C81C1D1B6F009C17AA /* Products */ = { - isa = PBXGroup; - children = ( - 9A5951CD1C1D1B6F009C17AA /* ApptentiveConnect.framework */, - 9A5951CF1C1D1B6F009C17AA /* ApptentiveUnitTests.octest */, - ); - name = Products; - sourceTree = ""; - }; 9A5951F01C1D3D35009C17AA /* Table Cell Views */ = { isa = PBXGroup; children = ( @@ -292,9 +268,19 @@ name = Parse; sourceTree = ""; }; + 9AF9A1681C250AA300EE7C2A /* Reachability */ = { + isa = PBXGroup; + children = ( + 9AF9A1691C250AB300EE7C2A /* Reachability.h */, + 9AF9A16A1C250AB300EE7C2A /* Reachability.m */, + ); + name = Reachability; + sourceTree = ""; + }; DD4F7BF913C30F9F00825C6E = { isa = PBXGroup; children = ( + 9AF9A1681C250AA300EE7C2A /* Reachability */, 9A9E875B1C1FED1E00A7A2DF /* Parse */, 9A5B1A8D1BECDFB700A77C68 /* Clocker.entitlements */, 9A43792D1BEC256200F4E27F /* Media.xcassets */, @@ -331,7 +317,6 @@ 9A9E87631C1FEDBD00A7A2DF /* CoreGraphics.framework */, 9A9E87611C1FEDB500A7A2DF /* CFNetwork.framework */, 9A5951D11C1D1D94009C17AA /* ApptentiveConnect.framework */, - 9A5951C71C1D1B6F009C17AA /* ApptentiveConnect.xcodeproj */, 9A5951B91C1D0A22009C17AA /* Crashlytics.framework */, 9AC678E31C1ABAB9003B4F6B /* QuartzCore.framework */, 9A4379211BEC223900F4E27F /* Security.framework */, @@ -395,12 +380,6 @@ mainGroup = DD4F7BF913C30F9F00825C6E; productRefGroup = DD4F7C0513C30F9F00825C6E /* Products */; projectDirPath = ""; - projectReferences = ( - { - ProductGroup = 9A5951C81C1D1B6F009C17AA /* Products */; - ProjectRef = 9A5951C71C1D1B6F009C17AA /* ApptentiveConnect.xcodeproj */; - }, - ); projectRoot = ""; targets = ( DD4F7C0313C30F9F00825C6E /* Clocker */, @@ -408,23 +387,6 @@ }; /* End PBXProject section */ -/* Begin PBXReferenceProxy section */ - 9A5951CD1C1D1B6F009C17AA /* ApptentiveConnect.framework */ = { - isa = PBXReferenceProxy; - fileType = wrapper.framework; - path = ApptentiveConnect.framework; - remoteRef = 9A5951CC1C1D1B6F009C17AA /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - 9A5951CF1C1D1B6F009C17AA /* ApptentiveUnitTests.octest */ = { - isa = PBXReferenceProxy; - fileType = wrapper.cfbundle; - path = ApptentiveUnitTests.octest; - remoteRef = 9A5951CE1C1D1B6F009C17AA /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; -/* End PBXReferenceProxy section */ - /* Begin PBXResourcesBuildPhase section */ DD4F7C0213C30F9F00825C6E /* Resources */ = { isa = PBXResourcesBuildPhase; @@ -480,6 +442,7 @@ 9A8605B31BEC14A600A810A4 /* ColoredButton.m in Sources */, 9A8605AE1BEC148400A810A4 /* main.m in Sources */, 9A392EE81C1CDD530072C10A /* CLAboutUsViewController.m in Sources */, + 9AF9A16B1C250AB300EE7C2A /* Reachability.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; diff --git a/Clocker.xcodeproj/project.xcworkspace/xcuserdata/abhishekbanthia.xcuserdatad/UserInterfaceState.xcuserstate b/Clocker.xcodeproj/project.xcworkspace/xcuserdata/abhishekbanthia.xcuserdatad/UserInterfaceState.xcuserstate index 07398af01916b15701ce07eeea647b2eccdf5e97..3131fb6b056f818960eed961f340ab9c27d2c89e 100644 GIT binary patch literal 239182 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 jZC@7+WiUp@T~3V!%?>M8&G@Be=f7mfW7s>+fg literal 228762 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

$}qGeu|a59UP@tJ!^%++ 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 + + + + + + + + + + diff --git a/Clocker/AboutUsWindow/CLAboutUsView.xib b/Clocker/AboutUsWindow/CLAboutUsView.xib index 4dca593..fbb327d 100644 --- a/Clocker/AboutUsWindow/CLAboutUsView.xib +++ b/Clocker/AboutUsWindow/CLAboutUsView.xib @@ -119,7 +119,7 @@ - + diff --git a/Clocker/ApplicationDelegate.m b/Clocker/ApplicationDelegate.m index 1d19e0d..9ffa754 100755 --- a/Clocker/ApplicationDelegate.m +++ b/Clocker/ApplicationDelegate.m @@ -66,6 +66,8 @@ void *kContextActivePanel = &kContextActivePanel; [iVersion sharedInstance].appStoreID = 1056643111; [iRate sharedInstance].useAllAvailableLanguages = NO; [iVersion sharedInstance].useAllAvailableLanguages = NO; + [[iRate sharedInstance] setVerboseLogging:NO]; + [[iVersion sharedInstance] setVerboseLogging:NO]; } #pragma mark - NSApplicationDelegate @@ -76,16 +78,6 @@ void *kContextActivePanel = &kContextActivePanel; NSMutableArray *newDefaults = [[NSMutableArray alloc] init]; - - if (defaultPreference.count == 0) - { - NSDictionary *defaultDictionary = @{CLTimezoneName : [NSTimeZone systemTimeZone].name, CLCustomLabel : CLEmptyString}; - - newDefaults = [[NSMutableArray alloc] initWithObjects:defaultDictionary, nil]; - - [[NSUserDefaults standardUserDefaults] setObject:newDefaults forKey:CLDefaultPreferenceKey]; - } - [defaultPreference enumerateObjectsUsingBlock:^(id _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) { if ([obj isKindOfClass:[NSString class]]) { @@ -116,6 +108,7 @@ void *kContextActivePanel = &kContextActivePanel; [[Crashlytics sharedInstance] setDebugMode:NO]; [Fabric with:@[[Crashlytics class]]]; + //Setting up Parse [Parse setApplicationId:@"F2ahd8J6sfjQMCc5z3xSy9kVK94PmKmH6hV2UsUK" diff --git a/Clocker/Clocker-Info.plist b/Clocker/Clocker-Info.plist index 63aa07f..5b92acb 100755 --- a/Clocker/Clocker-Info.plist +++ b/Clocker/Clocker-Info.plist @@ -46,5 +46,10 @@ NSApplication RequestsOpenAccess YES + NSAppTransportSecurity + + NSAllowsArbitraryLoads + + diff --git a/Clocker/PanelController.m b/Clocker/PanelController.m index e8211f7..ed49584 100755 --- a/Clocker/PanelController.m +++ b/Clocker/PanelController.m @@ -336,9 +336,9 @@ NSString *const CLTimezoneCellViewIdentifier = @"timeZoneCell"; } - cell.relativeDate.stringValue = [self getDateForTimeZone:self.defaultPreferences[row][CLTimezoneName]]; + cell.relativeDate.stringValue = [self getDateForTimeZone:self.defaultPreferences[row][CLTimezoneID]]; - cell.time.stringValue = [self getTimeForTimeZone:self.defaultPreferences[row][CLTimezoneName]]; + cell.time.stringValue = [self getTimeForTimeZone:self.defaultPreferences[row][CLTimezoneID]]; cell.rowNumber = row; @@ -360,27 +360,30 @@ NSString *const CLTimezoneCellViewIdentifier = @"timeZoneCell"; return customLabel; } } - - NSString *timezoneName = timeZoneDictionary[CLTimezoneName]; - - if (value) { - NSRange range = [timezoneName rangeOfString:@"/"]; - NSRange underscoreRange = [timezoneName rangeOfString:@"_"]; + + if ([timeZoneDictionary[@"formattedAddress"] length] > 0) + { + return timeZoneDictionary[@"formattedAddress"]; + } + else if (timeZoneDictionary[@"timezoneID"]) + { + NSString *timezoneID = timeZoneDictionary[@"timezoneID"]; + + NSRange range = [timezoneID rangeOfString:@"/"]; if (range.location != NSNotFound) { - timezoneName = [timezoneName substringFromIndex:range.location+1]; - } - if (underscoreRange.location != NSNotFound) - { - timezoneName = [timezoneName stringByReplacingOccurrencesOfString:@"_" - withString:@" "]; + timezoneID = [timezoneID substringWithRange:NSMakeRange(range.location+1, timezoneID.length-1 - range.location)]; } + return timezoneID; } - - return timezoneName; + else + { + return @"Error"; + } + } -- (NSString *)getTimeForTimeZone:(NSString *)timezoneName +- (NSString *)getTimeForTimeZone:(NSString *)timezoneID { NSDate *currentDate = [NSDate date]; NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; @@ -390,7 +393,7 @@ NSString *const CLTimezoneCellViewIdentifier = @"timeZoneCell"; is24HourFormatSelected.boolValue ? [dateFormatter setDateFormat:@"HH:mm"] : [dateFormatter setDateFormat:@"hh:mm a"]; - dateFormatter.timeZone = [NSTimeZone timeZoneWithName:timezoneName]; + dateFormatter.timeZone = [NSTimeZone timeZoneWithName:timezoneID]; //In the format 22:10 return [dateFormatter stringFromDate:currentDate]; @@ -442,25 +445,19 @@ NSString *const CLTimezoneCellViewIdentifier = @"timeZoneCell"; } } -- (NSString *)getDateForTimeZone:(NSString *)timezoneName +- (NSString *)getDateForTimeZone:(NSString *)timezoneID { NSDate *currentDate = [NSDate date]; NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; dateFormatter.dateStyle = kCFDateFormatterShortStyle; dateFormatter.timeStyle = kCFDateFormatterNoStyle; - dateFormatter.timeZone = [NSTimeZone timeZoneWithName:timezoneName]; + dateFormatter.timeZone = [NSTimeZone timeZoneWithName:timezoneID]; //In the format 22:10 return [self compareSystemDate:[self getLocalCurrentDate] toTimezoneDate:[dateFormatter stringFromDate:currentDate]];; } -#pragma mark - -#pragma mark NSTableview Minor Customization when selecting rows -#pragma mark - - - - #pragma mark - #pragma mark NSTableview Drag and Drop #pragma mark - diff --git a/Clocker/Preferences/CLPreferencesView.xib b/Clocker/Preferences/CLPreferencesView.xib index 9568d28..84351d1 100644 --- a/Clocker/Preferences/CLPreferencesView.xib +++ b/Clocker/Preferences/CLPreferencesView.xib @@ -10,6 +10,7 @@ + @@ -42,6 +43,9 @@ + +CA + @@ -60,7 +64,7 @@ - + @@ -239,7 +243,7 @@ - + @@ -247,8 +251,8 @@ - - + + @@ -260,21 +264,13 @@ - - - - - - - - - - - - - + + + NSNegateBoolean + + addToFavorites: @@ -291,7 +287,7 @@ + + + + + + + + + + + + + + + + + + + NSNegateBoolean + + + + - - - + + - - + + - + + + diff --git a/Clocker/Preferences/CLPreferencesViewController.h b/Clocker/Preferences/CLPreferencesViewController.h index 676dbd3..a8ddd2c 100644 --- a/Clocker/Preferences/CLPreferencesViewController.h +++ b/Clocker/Preferences/CLPreferencesViewController.h @@ -10,11 +10,12 @@ @interface CLPreferencesViewController : NSViewController -@property (strong, nonatomic) NSMutableArray *timeZoneArray; @property (strong, nonatomic) NSMutableArray *selectedTimeZones; -@property (strong, nonatomic) NSArray *filteredArray; +@property (strong, nonatomic) NSMutableArray *filteredArray; @property (atomic, assign) BOOL launchOnLogin; @property (atomic, strong) NSArray *fontFamilies; @property (atomic, strong) NSArray *themes; +@property (nonatomic, strong) NSURLSessionDataTask *dataTask; +@property (nonatomic, strong) NSString *buttonTitle; @end diff --git a/Clocker/Preferences/CLPreferencesViewController.m b/Clocker/Preferences/CLPreferencesViewController.m index 2417b68..2310f93 100644 --- a/Clocker/Preferences/CLPreferencesViewController.m +++ b/Clocker/Preferences/CLPreferencesViewController.m @@ -12,15 +12,19 @@ #import "ApplicationDelegate.h" #import #import "CommonStrings.h" +#import "Reachability.h" + NSString *const CLSearchPredicateKey = @"SELF CONTAINS[cd]%@"; NSString *const CLPreferencesViewNibIdentifier = @"PreferencesWindow"; -NSString *const CLPreferencesTimezoneNameIdentifier = @"timezoneName"; +NSString *const CLPreferencesTimezoneNameIdentifier = @"formattedAddress"; NSString *const CLPreferencesAbbreviationIdentifier = @"abbreviation"; NSString *const CLPreferencesCustomLabelIdentifier = @"label"; NSString *const CLPreferencesAvailableTimezoneIdentifier = @"availableTimezones"; @interface CLPreferencesViewController () +@property (weak) IBOutlet NSTextField *placeholderLabel; +@property (assign) BOOL activityInProgress; @property (weak) IBOutlet NSTableView *timezoneTableView; @property (strong) IBOutlet Panel *timezonePanel; @@ -31,7 +35,6 @@ NSString *const CLPreferencesAvailableTimezoneIdentifier = @"availableTimezones" @property (weak) IBOutlet NSButton *is24HourFormatSelected; @property (weak) IBOutlet NSTextField *messageLabel; -@property (weak) IBOutlet NSSlider *transparencySlider; @end @implementation CLPreferencesViewController @@ -41,19 +44,20 @@ NSString *const CLPreferencesAvailableTimezoneIdentifier = @"availableTimezones" CALayer *viewLayer = [CALayer layer]; [viewLayer setBackgroundColor:CGColorCreateGenericRGB(255.0, 255.0, 255.0, 0.8)]; //RGB plus Alpha Channel - [self.view setWantsLayer:YES]; // view's backing store is using a Core Animation Layer + [self.view setWantsLayer:YES]; [self.view setLayer:viewLayer]; + self.buttonTitle = @"Close"; + [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(refereshTimezoneTableView) name:CLCustomLabelChangedNotification object:nil]; - + self.placeholderLabel.hidden = YES; [self refereshTimezoneTableView]; - if (!self.timeZoneArray) + if (!self.filteredArray) { - self.timeZoneArray = [[NSMutableArray alloc] initWithArray:[NSTimeZone knownTimeZoneNames]]; - self.filteredArray = [[NSArray alloc] init]; + self.filteredArray = [[NSMutableArray alloc] init]; } self.messageLabel.stringValue = CLEmptyString; @@ -75,6 +79,8 @@ NSString *const CLPreferencesAvailableTimezoneIdentifier = @"availableTimezones" } } + + //Certain fonts don't look good with constraints set NSArray *fontsToRemove = [NSArray arrayWithObjects:@"Apple Chancery", @"Zapfino", @@ -114,10 +120,7 @@ NSString *const CLPreferencesAvailableTimezoneIdentifier = @"availableTimezones" } else { - if (self.searchField.stringValue.length > 0) { - return self.filteredArray.count; - } - return self.timeZoneArray.count; + return self.filteredArray.count; } return 0; @@ -127,37 +130,25 @@ NSString *const CLPreferencesAvailableTimezoneIdentifier = @"availableTimezones" { if ([[tableColumn identifier] isEqualToString:CLPreferencesTimezoneNameIdentifier]) { - return self.selectedTimeZones[row][CLTimezoneName]; + if ([self.selectedTimeZones[row][CLTimezoneName] length] > 0) { + return self.selectedTimeZones[row][CLTimezoneName]; + } + return self.selectedTimeZones[row][CLTimezoneID]; } else if([[tableColumn identifier] isEqualToString:CLPreferencesAvailableTimezoneIdentifier]) { - if (self.searchField.stringValue.length > 0) + if (row < self.filteredArray.count) { - if (row < self.filteredArray.count) { - return self.filteredArray[row]; - } + return [self.filteredArray[row] objectForKey:CLTimezoneName]; } - return self.timeZoneArray[row]; + return nil; } else if([[tableColumn identifier] isEqualToString:CLPreferencesCustomLabelIdentifier]) { return self.selectedTimeZones[row][CLCustomLabel]; } - if ([tableColumn.identifier isEqualToString:CLPreferencesAbbreviationIdentifier]) - { - if (self.searchField.stringValue.length > 0) - { - if (row < self.filteredArray.count) - { - return [NSTimeZone timeZoneWithName:self.filteredArray[row]].abbreviation; - } - - } - - return [NSTimeZone timeZoneWithName:self.timeZoneArray[row]].abbreviation; - } - + return nil; } @@ -189,70 +180,60 @@ NSString *const CLPreferencesAvailableTimezoneIdentifier = @"availableTimezones" - (IBAction)addToFavorites:(id)sender { + self.activityInProgress = YES; + + if ([self.buttonTitle isEqualToString:@"Close"]) + { + self.filteredArray = [NSMutableArray array]; + self.placeholderLabel.placeholderString = CLEmptyString; + [self.availableTimezoneTableView reloadData]; + self.searchField.stringValue = CLEmptyString; + [self.timezonePanel close]; + self.activityInProgress = NO; + return; + } + if (self.availableTimezoneTableView.selectedRow == -1) { self.messageLabel.stringValue = @"Please select a timezone!"; [NSTimer scheduledTimerWithTimeInterval:5 target:self selector:@selector(clearLabel) userInfo:nil repeats:NO]; + self.activityInProgress = NO; return; } - + NSString *selectedTimezone; - if (self.selectedTimeZones.count > 10) + if (self.selectedTimeZones.count >= 10) { self.messageLabel.stringValue = @"Maximum 10 timezones allowed!"; [NSTimer scheduledTimerWithTimeInterval:5 target:self selector:@selector(clearLabel) userInfo:nil repeats:NO]; + NSLog(@"Maximum me ghusa"); + self.activityInProgress = NO; return; } for (NSDictionary *timezoneDictionary in self.selectedTimeZones) { - NSString *name = timezoneDictionary[CLTimezoneName]; + NSString *name = timezoneDictionary[@"place_id"]; + NSString *selectedPlaceID = [self.filteredArray[self.availableTimezoneTableView.selectedRow] objectForKey:@"place_id"]; if (self.searchField.stringValue.length > 0) { - if ([name isEqualToString:self.filteredArray[self.availableTimezoneTableView.selectedRow]]) + if ([name isKindOfClass:[NSString class]] && + [name isEqualToString:selectedPlaceID]) { self.messageLabel.stringValue = @"Timezone has already been selected!"; [NSTimer scheduledTimerWithTimeInterval:5 target:self selector:@selector(clearLabel) userInfo:nil repeats:NO]; + self.activityInProgress = NO; return; } } - else if ([name isEqualToString:self.timeZoneArray[self.availableTimezoneTableView.selectedRow]]) - { - self.messageLabel.stringValue = @"Timezone has already been selected!"; - [NSTimer scheduledTimerWithTimeInterval:5 target:self selector:@selector(clearLabel) userInfo:nil repeats:NO]; - return; - } - } - - selectedTimezone = self.searchField.stringValue.length > 0 ? - self.filteredArray[self.availableTimezoneTableView.selectedRow] : - self.timeZoneArray[self.availableTimezoneTableView.selectedRow]; - - NSDictionary *newTimezoneToAdd = @{CLTimezoneName : selectedTimezone, - CLCustomLabel : CLEmptyString}; - - [self.selectedTimeZones addObject:newTimezoneToAdd]; - - NSArray *defaultTimeZones = [[NSUserDefaults standardUserDefaults] objectForKey:CLDefaultPreferenceKey]; - NSMutableArray *newDefaults; - - if (defaultTimeZones == nil) - { - defaultTimeZones = [[NSMutableArray alloc] init]; } - newDefaults = [[NSMutableArray alloc] initWithArray:defaultTimeZones]; + selectedTimezone = self.filteredArray[self.availableTimezoneTableView.selectedRow]; - [newDefaults addObject:newTimezoneToAdd]; + self.searchField.stringValue = CLEmptyString; - [[NSUserDefaults standardUserDefaults] setObject:newDefaults forKey:CLDefaultPreferenceKey]; - - [self.timezoneTableView reloadData]; - - [self refreshMainTableview]; - - [self.timezonePanel close]; + [self getTimeZoneForLatitude:[self.filteredArray[self.availableTimezoneTableView.selectedRow] objectForKey:@"latitude"] andLongitude:[self.filteredArray[self.availableTimezoneTableView.selectedRow] objectForKey:@"longitude"]]; } - (void)clearLabel @@ -260,14 +241,8 @@ NSString *const CLPreferencesAvailableTimezoneIdentifier = @"availableTimezones" self.messageLabel.stringValue = CLEmptyString; } -- (IBAction)closePanel:(id)sender -{ - [self.timezonePanel close]; -} - - (IBAction)removeFromFavourites:(id)sender { - NSMutableArray *itemsToRemove = [NSMutableArray array]; if (self.timezoneTableView.selectedRow == -1) @@ -299,7 +274,6 @@ NSString *const CLPreferencesAvailableTimezoneIdentifier = @"availableTimezones" if (theEvent.keyCode == 53) { [self.timezonePanel close]; } - } -(void)keyUp:(NSEvent *)theEvent @@ -311,15 +285,25 @@ NSString *const CLPreferencesAvailableTimezoneIdentifier = @"availableTimezones" - (IBAction)filterArray:(id)sender { + self.filteredArray = [NSMutableArray array]; - if (self.searchField.stringValue.length > 0) { - NSPredicate *predicate = [NSPredicate predicateWithFormat:CLSearchPredicateKey, self.searchField.stringValue]; + if (self.searchField.stringValue.length > 0) + { + [self callGoogleAPiWithSearchString:self.searchField.stringValue]; + } + else + { + if (self.dataTask.state == NSURLSessionTaskStateRunning) { + [self.dataTask cancel]; + } - self.filteredArray = [self.timeZoneArray filteredArrayUsingPredicate:predicate]; + self.placeholderLabel.placeholderString = CLEmptyString; + self.buttonTitle = @"Close"; } - + [self.availableTimezoneTableView reloadData]; } + - (IBAction)timeFormatSelectionChanged:(id)sender { NSButton *is24HourFormatSelected = (NSButton *)sender; @@ -331,28 +315,35 @@ NSString *const CLPreferencesAvailableTimezoneIdentifier = @"availableTimezones" - (void)refereshTimezoneTableView { - NSMutableArray *defaultTimeZones = [[NSUserDefaults standardUserDefaults] objectForKey:CLDefaultPreferenceKey]; - self.selectedTimeZones = [[NSMutableArray alloc] initWithArray:defaultTimeZones]; - [self.timezoneTableView reloadData]; + dispatch_async(dispatch_get_main_queue(), ^{ + + NSMutableArray *defaultTimeZones = [[NSUserDefaults standardUserDefaults] + objectForKey:CLDefaultPreferenceKey]; + + self.selectedTimeZones = [[NSMutableArray alloc] initWithArray:defaultTimeZones]; + + [self.timezoneTableView reloadData]; + }); } - (void)refreshMainTableview { - ApplicationDelegate *appDelegate = [[NSApplication sharedApplication] delegate]; - - PanelController *panelController = appDelegate.panelController; - - [panelController updateDefaultPreferences]; - - [panelController.mainTableview reloadData]; - + dispatch_async(dispatch_get_main_queue(), ^{ + ApplicationDelegate *appDelegate = [[NSApplication sharedApplication] delegate]; + + PanelController *panelController = appDelegate.panelController; + + [panelController updateDefaultPreferences]; + + [panelController.mainTableview reloadData]; + + }); } #pragma mark Reordering - (BOOL)tableView:(NSTableView *)tableView writeRowsWithIndexes:(NSIndexSet *)rowIndexes toPasteboard:(NSPasteboard *)pboard { - NSData *data = [NSKeyedArchiver archivedDataWithRootObject:rowIndexes]; [pboard declareTypes:[NSArray arrayWithObject:CLDragSessionKey] owner:self]; @@ -391,56 +382,6 @@ NSString *const CLPreferencesAvailableTimezoneIdentifier = @"availableTimezones" return NSDragOperationEvery; } - -- (BOOL)launchOnLogin -{ - LSSharedFileListRef loginItemsListRef = LSSharedFileListCreate(NULL, kLSSharedFileListSessionLoginItems, NULL); - CFArrayRef snapshotRef = LSSharedFileListCopySnapshot(loginItemsListRef, NULL); - NSArray* loginItems = CFBridgingRelease(snapshotRef); - NSURL *bundleURL = [NSURL fileURLWithPath:[[NSBundle mainBundle] bundlePath]]; - for (id item in loginItems) { - LSSharedFileListItemRef itemRef = (__bridge LSSharedFileListItemRef)item; - CFURLRef itemURLRef; - - itemURLRef = LSSharedFileListItemCopyResolvedURL(itemRef, 0, NULL); - NSURL *itemURL = (NSURL *)CFBridgingRelease(itemURLRef); - if ([itemURL isEqual:bundleURL]) { - return YES; - } - - } - return NO; -} - --(void)setLaunchOnLogin:(BOOL)launchOnLogin -{ - NSURL *bundleURL = [NSURL fileURLWithPath:[[NSBundle mainBundle] bundlePath]]; - LSSharedFileListRef loginItemsListRef = LSSharedFileListCreate(NULL, kLSSharedFileListSessionLoginItems, NULL); - - if (launchOnLogin) { - NSDictionary *properties; - properties = [NSDictionary dictionaryWithObject:[NSNumber numberWithBool:YES] forKey:@"com.apple.loginitem.HideOnLaunch"]; - LSSharedFileListItemRef itemRef = LSSharedFileListInsertItemURL(loginItemsListRef, kLSSharedFileListItemLast, NULL, NULL, (__bridge CFURLRef)bundleURL, (__bridge CFDictionaryRef)properties,NULL); - if (itemRef) { - CFRelease(itemRef); - } - } else { - LSSharedFileListRef loginItemsListRef = LSSharedFileListCreate(NULL, kLSSharedFileListSessionLoginItems, NULL); - CFArrayRef snapshotRef = LSSharedFileListCopySnapshot(loginItemsListRef, NULL); - NSArray* loginItems = CFBridgingRelease(snapshotRef); - - for (id item in loginItems) { - LSSharedFileListItemRef itemRef = (__bridge LSSharedFileListItemRef)item; - CFURLRef itemURLRef = LSSharedFileListItemCopyResolvedURL(itemRef, 0, NULL); - - NSURL *itemURL = (NSURL *)CFBridgingRelease(itemURLRef); - if ([itemURL isEqual:bundleURL]) { - LSSharedFileListItemRemove(loginItemsListRef, itemRef); - } - } - } -} - - (IBAction)changeFont:(id)sender { ApplicationDelegate *appDelegate = [[NSApplication sharedApplication] delegate]; @@ -455,7 +396,6 @@ NSString *const CLPreferencesAvailableTimezoneIdentifier = @"availableTimezones" PanelController *panelController = appDelegate.panelController; [panelController.backgroundView setNeedsDisplay:YES]; - if ([[popUpButtonTitle titleOfSelectedItem] isEqualToString:@"Black"]) { panelController.shutdownButton.image = [NSImage imageNamed:@"PowerIcon-White"]; panelController.preferencesButton.image = [NSImage imageNamed:@"Settings-White"]; @@ -467,9 +407,232 @@ NSString *const CLPreferencesAvailableTimezoneIdentifier = @"availableTimezones" } [panelController.mainTableview reloadData]; +} + +- (void)callGoogleAPiWithSearchString:(NSString *)searchString +{ + if (self.dataTask.state == NSURLSessionTaskStateRunning) { + [self.dataTask cancel]; + } + + self.placeholderLabel.hidden = NO; + + Reachability *reachability = [Reachability reachabilityForInternetConnection]; + NetworkStatus networkStatus = [reachability currentReachabilityStatus]; + + if (networkStatus == NotReachable) + { + self.placeholderLabel.placeholderString = @"You're offline, maybe?"; + self.buttonTitle = @"Close"; + return; + } + + self.activityInProgress = YES; + + self.placeholderLabel.placeholderString = [NSString stringWithFormat:@"Searching for '%@'", searchString]; + + NSArray* words = [searchString componentsSeparatedByCharactersInSet :[NSCharacterSet whitespaceAndNewlineCharacterSet]]; + searchString = [words componentsJoinedByString:@""]; + + NSString *urlString = [NSString stringWithFormat:@"https://maps.googleapis.com/maps/api/geocode/json?address=%@&key=AIzaSyCyf2knCi6KiKuDJLYDBD3Odq5dt4c-_KI", searchString]; + + NSURL *url = [NSURL URLWithString:urlString]; + + NSURLSessionConfiguration *config = [NSURLSessionConfiguration defaultSessionConfiguration]; + NSURLSession *session = [NSURLSession sessionWithConfiguration:config]; + NSMutableURLRequest *request = [[NSMutableURLRequest alloc] initWithURL:url]; + request.HTTPMethod = @"GET"; + + [request addValue:@"application/json" forHTTPHeaderField:@"Content-Type"]; + [request addValue:@"application/json" forHTTPHeaderField:@"Accept"]; + + NSError *error = nil; + + if (!error) { + + self.dataTask= [session dataTaskWithRequest:request completionHandler:^(NSData *data, NSURLResponse *response, NSError *error) { + if (!error) { + NSHTTPURLResponse *httpResp = (NSHTTPURLResponse*) response; + NSLog(@"Status Code:%zd", httpResp.statusCode); + if (httpResp.statusCode == 200) { + + dispatch_async(dispatch_get_main_queue(), ^{ + + self.placeholderLabel.placeholderString = CLEmptyString; + + NSDictionary* json = [NSJSONSerialization + JSONObjectWithData:data + options:kNilOptions + error:nil]; + + if ([json[@"status"] isEqualToString:@"ZERO_RESULTS"]) { + self.placeholderLabel.placeholderString = @"No results found!"; + self.activityInProgress = NO; + return; + } + + for (NSDictionary *dictionary in json[@"results"]) + { + NSDictionary *latLang = [[dictionary objectForKey:@"geometry"] objectForKey:@"location"]; + NSString *latitude = latLang[@"lat"]; + NSString *longitude = latLang[@"lng"]; + NSString *formattedAddress = [dictionary objectForKey:@"formatted_address"]; + + NSDictionary *totalPackage = @{@"latitude":latitude, + @"longitude" : longitude, + CLTimezoneName:formattedAddress, + @"customLabel" : @"", + @"timezoneID" : @"", + @"placeID" : dictionary[@"place_id"]}; + [self.filteredArray addObject:totalPackage]; + + } + self.activityInProgress = NO; + + [self.availableTimezoneTableView reloadData]; + + self.buttonTitle = @"Add"; + + }); + + } + else + { + dispatch_async(dispatch_get_main_queue(), ^{ + self.placeholderLabel.placeholderString = [error.localizedDescription isEqualToString:@"The Internet connection appears to be offline."] ? + @"You're offline, maybe?" : @"Try again, maybe?"; + self.activityInProgress = NO; + }); + + } + } + + }]; + [self.dataTask resume]; + + } } +- (void)getTimeZoneForLatitude:(NSString *)latitude andLongitude:(NSString *)longitude +{ + Reachability *reachability = [Reachability reachabilityForInternetConnection]; + NetworkStatus networkStatus = [reachability currentReachabilityStatus]; + + if (networkStatus == NotReachable) + { + dispatch_async(dispatch_get_main_queue(), ^{ + self.placeholderLabel.placeholderString = @"You're offline, maybe?"; + self.activityInProgress = NO; + self.buttonTitle = @"Close"; + self.filteredArray = [NSMutableArray array]; + [self.availableTimezoneTableView reloadData]; + }); + + return; + } + + self.searchField.placeholderString = [NSString stringWithFormat:@"Adding %@", [self.filteredArray[self.availableTimezoneTableView.selectedRow] objectForKey:CLTimezoneName]]; + self.placeholderLabel.placeholderString = @"Retrieving timezone data"; + + self.availableTimezoneTableView.hidden = YES; + + NSString *urlString = [NSString stringWithFormat:@"http://api.geonames.org/timezoneJSON?lat=%@&lng=%@&username=abhishaker17", latitude, longitude]; + + NSURL *url = [NSURL URLWithString:urlString]; + + NSURLSessionConfiguration *config = [NSURLSessionConfiguration defaultSessionConfiguration]; + NSURLSession *session = [NSURLSession sessionWithConfiguration:config]; + + NSMutableURLRequest *request = [[NSMutableURLRequest alloc] initWithURL:url]; + request.HTTPMethod = @"GET"; + + [request addValue:@"application/json" forHTTPHeaderField:@"Content-Type"]; + [request addValue:@"application/json" forHTTPHeaderField:@"Accept"]; + + NSError *error = nil; + + if (!error) { + + self.dataTask = [session dataTaskWithRequest:request completionHandler:^(NSData *data, NSURLResponse *response, NSError *error) { + if (!error) { + NSHTTPURLResponse *httpResp = (NSHTTPURLResponse*) response; + if (httpResp.statusCode == 200) { + + dispatch_async(dispatch_get_main_queue(), ^{ + + NSDictionary* json = [NSJSONSerialization + JSONObjectWithData:data + options:kNilOptions + error:nil]; + + if (json.count == 0) { + self.placeholderLabel.placeholderString = @"No results found"; + return; + } + + + NSString *filteredAddress = [self.filteredArray[self.availableTimezoneTableView.selectedRow] objectForKey:CLTimezoneName]; + NSRange range = [filteredAddress rangeOfString:@","]; + if (range.location != NSNotFound) + { + filteredAddress = [[self.filteredArray[self.availableTimezoneTableView.selectedRow] objectForKey:CLTimezoneName ] substringWithRange:NSMakeRange(0, range.location)]; + } + + NSDictionary *newTimezone = @{CLTimezoneID: json[@"timezoneId"], + @"sunriseTime" : json[@"sunrise"], + @"sunsetTime": json[@"sunset"], + CLCustomLabel : @"", + CLTimezoneName : filteredAddress}; + + NSArray *defaultPreference = [[NSUserDefaults standardUserDefaults] objectForKey:CLDefaultPreferenceKey]; + + if (defaultPreference == nil) + { + defaultPreference = [[NSMutableArray alloc] init]; + } + + NSMutableArray *newArray = [[NSMutableArray alloc] initWithArray:defaultPreference]; + [newArray addObject:newTimezone]; + + [[NSUserDefaults standardUserDefaults] setObject:newArray forKey:CLDefaultPreferenceKey]; + + self.filteredArray = [NSMutableArray array]; + + [self.availableTimezoneTableView reloadData]; + + [self refereshTimezoneTableView]; + + [self refreshMainTableview]; + + [self.timezonePanel close]; + + self.availableTimezoneTableView.hidden = NO; + + self.placeholderLabel.placeholderString = CLEmptyString; + + self.searchField.placeholderString = @"Enter a city, state or country name"; + + self.activityInProgress = NO; + + }); + } + } + else + { + + self.placeholderLabel.placeholderString = [error.localizedDescription isEqualToString:@"The Internet connection appears to be offline."] ? + @"You're offline, maybe?" : @"Try again, maybe?"; + + self.activityInProgress = NO; + } + + }]; + + [self.dataTask resume]; + + } +} @end diff --git a/Clocker/Reachability/Reachability.h b/Clocker/Reachability/Reachability.h new file mode 100644 index 0000000..26e1c79 --- /dev/null +++ b/Clocker/Reachability/Reachability.h @@ -0,0 +1,61 @@ +/* + Copyright (C) 2015 Apple Inc. All Rights Reserved. + See LICENSE.txt for this sample’s licensing information + + Abstract: + Basic demonstration of how to use the SystemConfiguration Reachablity APIs. + */ + +#import +#import +#import + + +typedef enum : NSInteger { + NotReachable = 0, + ReachableViaWiFi, + ReachableViaWWAN +} NetworkStatus; + + +extern NSString *kReachabilityChangedNotification; + + +@interface Reachability : NSObject + +/*! + * Use to check the reachability of a given host name. + */ ++ (instancetype)reachabilityWithHostName:(NSString *)hostName; + +/*! + * Use to check the reachability of a given IP address. + */ ++ (instancetype)reachabilityWithAddress:(const struct sockaddr_in *)hostAddress; + +/*! + * Checks whether the default route is available. Should be used by applications that do not connect to a particular host. + */ ++ (instancetype)reachabilityForInternetConnection; + +/*! + * Checks whether a local WiFi connection is available. + */ ++ (instancetype)reachabilityForLocalWiFi; + +/*! + * Start listening for reachability notifications on the current run loop. + */ +- (BOOL)startNotifier; +- (void)stopNotifier; + +- (NetworkStatus)currentReachabilityStatus; + +/*! + * WWAN may be available, but not active until a connection has been established. WiFi may require a connection for VPN on Demand. + */ +- (BOOL)connectionRequired; + +@end + + diff --git a/Clocker/Reachability/Reachability.m b/Clocker/Reachability/Reachability.m new file mode 100644 index 0000000..fb12207 --- /dev/null +++ b/Clocker/Reachability/Reachability.m @@ -0,0 +1,269 @@ +/* + Copyright (C) 2015 Apple Inc. All Rights Reserved. + See LICENSE.txt for this sample’s licensing information + + Abstract: + Basic demonstration of how to use the SystemConfiguration Reachablity APIs. + */ + +#import +#import +#import +#import + +#import + +#import "Reachability.h" + + +NSString *kReachabilityChangedNotification = @"kNetworkReachabilityChangedNotification"; + + +#pragma mark - Supporting functions + +#define kShouldPrintReachabilityFlags 1 + +static void PrintReachabilityFlags(SCNetworkReachabilityFlags flags, const char* comment) +{ +#if kShouldPrintReachabilityFlags + + NSLog(@"Reachability Flag Status: %c %c%c%c%c%c%c%c %s\n", + (flags & kSCNetworkReachabilityFlagsReachable) ? 'R' : '-', + + (flags & kSCNetworkReachabilityFlagsTransientConnection) ? 't' : '-', + (flags & kSCNetworkReachabilityFlagsConnectionRequired) ? 'c' : '-', + (flags & kSCNetworkReachabilityFlagsConnectionOnTraffic) ? 'C' : '-', + (flags & kSCNetworkReachabilityFlagsInterventionRequired) ? 'i' : '-', + (flags & kSCNetworkReachabilityFlagsConnectionOnDemand) ? 'D' : '-', + (flags & kSCNetworkReachabilityFlagsIsLocalAddress) ? 'l' : '-', + (flags & kSCNetworkReachabilityFlagsIsDirect) ? 'd' : '-', + comment + ); +#endif +} + + +static void ReachabilityCallback(SCNetworkReachabilityRef target, SCNetworkReachabilityFlags flags, void* info) +{ +#pragma unused (target, flags) + NSCAssert(info != NULL, @"info was NULL in ReachabilityCallback"); + NSCAssert([(__bridge NSObject*) info isKindOfClass: [Reachability class]], @"info was wrong class in ReachabilityCallback"); + + Reachability* noteObject = (__bridge Reachability *)info; + // Post a notification to notify the client that the network reachability changed. + [[NSNotificationCenter defaultCenter] postNotificationName: kReachabilityChangedNotification object: noteObject]; +} + + +#pragma mark - Reachability implementation + +@implementation Reachability +{ + BOOL _alwaysReturnLocalWiFiStatus; //default is NO + SCNetworkReachabilityRef _reachabilityRef; +} + ++ (instancetype)reachabilityWithHostName:(NSString *)hostName +{ + Reachability* returnValue = NULL; + SCNetworkReachabilityRef reachability = SCNetworkReachabilityCreateWithName(NULL, [hostName UTF8String]); + if (reachability != NULL) + { + returnValue= [[self alloc] init]; + if (returnValue != NULL) + { + returnValue->_reachabilityRef = reachability; + returnValue->_alwaysReturnLocalWiFiStatus = NO; + } + else { + CFRelease(reachability); + } + } + return returnValue; +} + + ++ (instancetype)reachabilityWithAddress:(const struct sockaddr_in *)hostAddress +{ + SCNetworkReachabilityRef reachability = SCNetworkReachabilityCreateWithAddress(kCFAllocatorDefault, (const struct sockaddr *)hostAddress); + + Reachability* returnValue = NULL; + + if (reachability != NULL) + { + returnValue = [[self alloc] init]; + if (returnValue != NULL) + { + returnValue->_reachabilityRef = reachability; + returnValue->_alwaysReturnLocalWiFiStatus = NO; + } + else { + CFRelease(reachability); + } + } + return returnValue; +} + + + ++ (instancetype)reachabilityForInternetConnection +{ + struct sockaddr_in zeroAddress; + bzero(&zeroAddress, sizeof(zeroAddress)); + zeroAddress.sin_len = sizeof(zeroAddress); + zeroAddress.sin_family = AF_INET; + + return [self reachabilityWithAddress:&zeroAddress]; +} + + ++ (instancetype)reachabilityForLocalWiFi +{ + struct sockaddr_in localWifiAddress; + bzero(&localWifiAddress, sizeof(localWifiAddress)); + localWifiAddress.sin_len = sizeof(localWifiAddress); + localWifiAddress.sin_family = AF_INET; + + // IN_LINKLOCALNETNUM is defined in as 169.254.0.0. + localWifiAddress.sin_addr.s_addr = htonl(IN_LINKLOCALNETNUM); + + Reachability* returnValue = [self reachabilityWithAddress: &localWifiAddress]; + if (returnValue != NULL) + { + returnValue->_alwaysReturnLocalWiFiStatus = YES; + } + + return returnValue; +} + + +#pragma mark - Start and stop notifier + +- (BOOL)startNotifier +{ + BOOL returnValue = NO; + SCNetworkReachabilityContext context = {0, (__bridge void *)(self), NULL, NULL, NULL}; + + if (SCNetworkReachabilitySetCallback(_reachabilityRef, ReachabilityCallback, &context)) + { + if (SCNetworkReachabilityScheduleWithRunLoop(_reachabilityRef, CFRunLoopGetCurrent(), kCFRunLoopDefaultMode)) + { + returnValue = YES; + } + } + + return returnValue; +} + + +- (void)stopNotifier +{ + if (_reachabilityRef != NULL) + { + SCNetworkReachabilityUnscheduleFromRunLoop(_reachabilityRef, CFRunLoopGetCurrent(), kCFRunLoopDefaultMode); + } +} + + +- (void)dealloc +{ + [self stopNotifier]; + if (_reachabilityRef != NULL) + { + CFRelease(_reachabilityRef); + } +} + + +#pragma mark - Network Flag Handling + +- (NetworkStatus)localWiFiStatusForFlags:(SCNetworkReachabilityFlags)flags +{ + PrintReachabilityFlags(flags, "localWiFiStatusForFlags"); + NetworkStatus returnValue = NotReachable; + + if ((flags & kSCNetworkReachabilityFlagsReachable) && (flags & kSCNetworkReachabilityFlagsIsDirect)) + { + returnValue = ReachableViaWiFi; + } + + return returnValue; +} + + +- (NetworkStatus)networkStatusForFlags:(SCNetworkReachabilityFlags)flags +{ + PrintReachabilityFlags(flags, "networkStatusForFlags"); + if ((flags & kSCNetworkReachabilityFlagsReachable) == 0) + { + // The target host is not reachable. + return NotReachable; + } + + NetworkStatus returnValue = NotReachable; + + if ((flags & kSCNetworkReachabilityFlagsConnectionRequired) == 0) + { + /* + If the target host is reachable and no connection is required then we'll assume (for now) that you're on Wi-Fi... + */ + returnValue = ReachableViaWiFi; + } + + if ((((flags & kSCNetworkReachabilityFlagsConnectionOnDemand ) != 0) || + (flags & kSCNetworkReachabilityFlagsConnectionOnTraffic) != 0)) + { + /* + ... and the connection is on-demand (or on-traffic) if the calling application is using the CFSocketStream or higher APIs... + */ + + if ((flags & kSCNetworkReachabilityFlagsInterventionRequired) == 0) + { + /* + ... and no [user] intervention is needed... + */ + returnValue = ReachableViaWiFi; + } + } + + return returnValue; +} + + +- (BOOL)connectionRequired +{ + NSAssert(_reachabilityRef != NULL, @"connectionRequired called with NULL reachabilityRef"); + SCNetworkReachabilityFlags flags; + + if (SCNetworkReachabilityGetFlags(_reachabilityRef, &flags)) + { + return (flags & kSCNetworkReachabilityFlagsConnectionRequired); + } + + return NO; +} + + +- (NetworkStatus)currentReachabilityStatus +{ + NSAssert(_reachabilityRef != NULL, @"currentNetworkStatus called with NULL SCNetworkReachabilityRef"); + NetworkStatus returnValue = NotReachable; + SCNetworkReachabilityFlags flags; + + if (SCNetworkReachabilityGetFlags(_reachabilityRef, &flags)) + { + if (_alwaysReturnLocalWiFiStatus) + { + returnValue = [self localWiFiStatusForFlags:flags]; + } + else + { + returnValue = [self networkStatusForFlags:flags]; + } + } + + return returnValue; +} + + +@end diff --git a/Clocker/Utilities/CommonStrings.h b/Clocker/Utilities/CommonStrings.h index 8499a14..884f2f4 100644 --- a/Clocker/Utilities/CommonStrings.h +++ b/Clocker/Utilities/CommonStrings.h @@ -17,5 +17,6 @@ extern NSString *const CLCustomLabel; extern NSString *const CL24hourFormatSelectedKey; extern NSString *const CLDragSessionKey; extern NSString *const CLCustomLabelChangedNotification; +extern NSString *const CLTimezoneID; @end diff --git a/Clocker/Utilities/CommonStrings.m b/Clocker/Utilities/CommonStrings.m index 4244938..48c084a 100644 --- a/Clocker/Utilities/CommonStrings.m +++ b/Clocker/Utilities/CommonStrings.m @@ -12,7 +12,8 @@ NSString *const CLEmptyString = @""; NSString *const CLDefaultPreferenceKey = @"defaultPreferences"; -NSString *const CLTimezoneName = @"timezoneName"; +NSString *const CLTimezoneName = @"formattedAddress"; +NSString *const CLTimezoneID = @"timezoneID"; NSString *const CLCustomLabel = @"customLabel"; NSString *const CL24hourFormatSelectedKey = @"is24HourFormatSelected"; NSString *const CLDragSessionKey = @"public.text";