From 8c7859dbb1056b0c85fc49affeeeba84d8c9ad44 Mon Sep 17 00:00:00 2001 From: Gabriel Brown Date: Fri, 14 Sep 2018 17:53:59 -0500 Subject: [PATCH 01/15] Added GoogleServiceInfo file --- The Mac Weekly.xcodeproj/project.pbxproj | 8 ----- The Mac Weekly/GoogleService-Info.plist | 40 ++++++++++++++++++++++++ 2 files changed, 40 insertions(+), 8 deletions(-) create mode 100644 The Mac Weekly/GoogleService-Info.plist diff --git a/The Mac Weekly.xcodeproj/project.pbxproj b/The Mac Weekly.xcodeproj/project.pbxproj index 813c4ae..9a6ea9e 100644 --- a/The Mac Weekly.xcodeproj/project.pbxproj +++ b/The Mac Weekly.xcodeproj/project.pbxproj @@ -8,9 +8,6 @@ /* Begin PBXBuildFile section */ 003CB0EC20DDAF18001A790B /* LoginViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 003CB0EB20DDAF18001A790B /* LoginViewController.swift */; }; - 00A0CAD920C87C6D0040216A /* GoogleService-Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = 00A0CAD820C87C6D0040216A /* GoogleService-Info.plist */; }; - 00A0CADA20C87C6D0040216A /* GoogleService-Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = 00A0CAD820C87C6D0040216A /* GoogleService-Info.plist */; }; - 00A0CADB20C87C6D0040216A /* GoogleService-Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = 00A0CAD820C87C6D0040216A /* GoogleService-Info.plist */; }; 2441FE8720717F4700FFF7D4 /* LandingViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2441FE8620717F4700FFF7D4 /* LandingViewController.swift */; }; 2441FE8920719FE300FFF7D4 /* NavbarExtensionView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2441FE8820719FE300FFF7D4 /* NavbarExtensionView.swift */; }; 24D46E5520704D0600457038 /* PostTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 24D46E5420704D0600457038 /* PostTableViewCell.xib */; }; @@ -54,7 +51,6 @@ /* Begin PBXFileReference section */ 003CB0EB20DDAF18001A790B /* LoginViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LoginViewController.swift; sourceTree = ""; }; - 00A0CAD820C87C6D0040216A /* GoogleService-Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = "GoogleService-Info.plist"; path = "../../../../Downloads/GoogleService-Info.plist"; sourceTree = ""; }; 1BAAC00BD8C48F155EEFCA94 /* Pods_The_Mac_Weekly.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_The_Mac_Weekly.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 2045A2157C41EF5C39A058D3 /* Pods-The Mac WeeklyTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-The Mac WeeklyTests.release.xcconfig"; path = "Pods/Target Support Files/Pods-The Mac WeeklyTests/Pods-The Mac WeeklyTests.release.xcconfig"; sourceTree = ""; }; 2441FE8620717F4700FFF7D4 /* LandingViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LandingViewController.swift; sourceTree = ""; }; @@ -154,7 +150,6 @@ 6716CA022026BE3300F008C0 /* The Mac Weekly */ = { isa = PBXGroup; children = ( - 00A0CAD820C87C6D0040216A /* GoogleService-Info.plist */, 67E2FC2220303277000FD5BE /* InfiniteTableView.swift */, 6716CA032026BE3300F008C0 /* AppDelegate.swift */, 678868312026C734006FCF93 /* api.swift */, @@ -326,7 +321,6 @@ 6716CA0B2026BE3400F008C0 /* Assets.xcassets in Resources */, 67E2FC262030E423000FD5BE /* PostTableViewController.storyboard in Resources */, 6716CA092026BE3400F008C0 /* Main.storyboard in Resources */, - 00A0CAD920C87C6D0040216A /* GoogleService-Info.plist in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -334,7 +328,6 @@ isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( - 00A0CADA20C87C6D0040216A /* GoogleService-Info.plist in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -342,7 +335,6 @@ isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( - 00A0CADB20C87C6D0040216A /* GoogleService-Info.plist in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; diff --git a/The Mac Weekly/GoogleService-Info.plist b/The Mac Weekly/GoogleService-Info.plist new file mode 100644 index 0000000..2556870 --- /dev/null +++ b/The Mac Weekly/GoogleService-Info.plist @@ -0,0 +1,40 @@ + + + + + AD_UNIT_ID_FOR_BANNER_TEST + ca-app-pub-3940256099942544/2934735716 + AD_UNIT_ID_FOR_INTERSTITIAL_TEST + ca-app-pub-3940256099942544/4411468910 + CLIENT_ID + 762024499034-5e6ijo62hdqp4qkib91brkrn8g7kdgma.apps.googleusercontent.com + REVERSED_CLIENT_ID + com.googleusercontent.apps.762024499034-5e6ijo62hdqp4qkib91brkrn8g7kdgma + API_KEY + AIzaSyBLCg0hUVs9rvMhTOcI4J3INP1tYKWJWd8 + GCM_SENDER_ID + 762024499034 + PLIST_VERSION + 1 + BUNDLE_ID + org.tmw.The-Mac-Weekly + PROJECT_ID + themacweekly-1525124850388 + STORAGE_BUCKET + themacweekly-1525124850388.appspot.com + IS_ADS_ENABLED + + IS_ANALYTICS_ENABLED + + IS_APPINVITE_ENABLED + + IS_GCM_ENABLED + + IS_SIGNIN_ENABLED + + GOOGLE_APP_ID + 1:762024499034:ios:291614528b3666d0 + DATABASE_URL + https://themacweekly-1525124850388.firebaseio.com + + \ No newline at end of file From 366c5c06ff3ccfb0caeff3e2c7a79eb96dd0aced Mon Sep 17 00:00:00 2001 From: Gabriel Brown Date: Sat, 15 Sep 2018 19:28:55 -0500 Subject: [PATCH 02/15] Adding GoogleService-Info to xcode project --- The Mac Weekly.xcodeproj/project.pbxproj | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/The Mac Weekly.xcodeproj/project.pbxproj b/The Mac Weekly.xcodeproj/project.pbxproj index 9a6ea9e..9dc2595 100644 --- a/The Mac Weekly.xcodeproj/project.pbxproj +++ b/The Mac Weekly.xcodeproj/project.pbxproj @@ -8,6 +8,7 @@ /* Begin PBXBuildFile section */ 003CB0EC20DDAF18001A790B /* LoginViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 003CB0EB20DDAF18001A790B /* LoginViewController.swift */; }; + 00C971A9214DDB26000864BC /* GoogleService-Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = 00C971A8214DDB26000864BC /* GoogleService-Info.plist */; }; 2441FE8720717F4700FFF7D4 /* LandingViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2441FE8620717F4700FFF7D4 /* LandingViewController.swift */; }; 2441FE8920719FE300FFF7D4 /* NavbarExtensionView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2441FE8820719FE300FFF7D4 /* NavbarExtensionView.swift */; }; 24D46E5520704D0600457038 /* PostTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 24D46E5420704D0600457038 /* PostTableViewCell.xib */; }; @@ -51,6 +52,7 @@ /* Begin PBXFileReference section */ 003CB0EB20DDAF18001A790B /* LoginViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LoginViewController.swift; sourceTree = ""; }; + 00C971A8214DDB26000864BC /* GoogleService-Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "GoogleService-Info.plist"; sourceTree = ""; }; 1BAAC00BD8C48F155EEFCA94 /* Pods_The_Mac_Weekly.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_The_Mac_Weekly.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 2045A2157C41EF5C39A058D3 /* Pods-The Mac WeeklyTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-The Mac WeeklyTests.release.xcconfig"; path = "Pods/Target Support Files/Pods-The Mac WeeklyTests/Pods-The Mac WeeklyTests.release.xcconfig"; sourceTree = ""; }; 2441FE8620717F4700FFF7D4 /* LandingViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LandingViewController.swift; sourceTree = ""; }; @@ -151,6 +153,7 @@ isa = PBXGroup; children = ( 67E2FC2220303277000FD5BE /* InfiniteTableView.swift */, + 00C971A8214DDB26000864BC /* GoogleService-Info.plist */, 6716CA032026BE3300F008C0 /* AppDelegate.swift */, 678868312026C734006FCF93 /* api.swift */, 67E2FC242030E422000FD5BE /* PostTableViewController.storyboard */, @@ -321,6 +324,7 @@ 6716CA0B2026BE3400F008C0 /* Assets.xcassets in Resources */, 67E2FC262030E423000FD5BE /* PostTableViewController.storyboard in Resources */, 6716CA092026BE3400F008C0 /* Main.storyboard in Resources */, + 00C971A9214DDB26000864BC /* GoogleService-Info.plist in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; From 11c628f32f5fc3bc7c1024fb27f80d89f25ab411 Mon Sep 17 00:00:00 2001 From: spencermg3 Date: Sun, 16 Sep 2018 15:36:13 -0500 Subject: [PATCH 03/15] Here I am --- The Mac Weekly/LoginViewController.swift | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/The Mac Weekly/LoginViewController.swift b/The Mac Weekly/LoginViewController.swift index d285fb3..2708cb8 100644 --- a/The Mac Weekly/LoginViewController.swift +++ b/The Mac Weekly/LoginViewController.swift @@ -45,3 +45,7 @@ class LoginViewController: UIViewController, GIDSignInUIDelegate { } } + + + +//I made it From ea657c7f2bfc16e50f78d7f5e81d959e322df381 Mon Sep 17 00:00:00 2001 From: bjelke Date: Sun, 30 Sep 2018 16:35:42 -0500 Subject: [PATCH 04/15] redesign login page --- The Mac Weekly.xcodeproj/project.pbxproj | 8 +- The Mac Weekly/Base.lproj/Main.storyboard | 105 ++++++++++++---------- The Mac Weekly/Info.plist | 4 +- 3 files changed, 62 insertions(+), 55 deletions(-) diff --git a/The Mac Weekly.xcodeproj/project.pbxproj b/The Mac Weekly.xcodeproj/project.pbxproj index 9dc2595..3db6dbe 100644 --- a/The Mac Weekly.xcodeproj/project.pbxproj +++ b/The Mac Weekly.xcodeproj/project.pbxproj @@ -654,11 +654,11 @@ buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; CODE_SIGN_STYLE = Automatic; - DEVELOPMENT_TEAM = BEGJPU5RG6; + DEVELOPMENT_TEAM = KQ2D936C95; INFOPLIST_FILE = "The Mac Weekly/Info.plist"; IPHONEOS_DEPLOYMENT_TARGET = 11.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "org.tmw.The-Mac-Weekly"; + PRODUCT_BUNDLE_IDENTIFIER = "org.tmw.The-Mac-Weekly-brighten"; PRODUCT_NAME = "$(TARGET_NAME)"; SWIFT_VERSION = 4.0; TARGETED_DEVICE_FAMILY = "1,2"; @@ -671,11 +671,11 @@ buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; CODE_SIGN_STYLE = Automatic; - DEVELOPMENT_TEAM = BEGJPU5RG6; + DEVELOPMENT_TEAM = KQ2D936C95; INFOPLIST_FILE = "The Mac Weekly/Info.plist"; IPHONEOS_DEPLOYMENT_TARGET = 11.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "org.tmw.The-Mac-Weekly"; + PRODUCT_BUNDLE_IDENTIFIER = "org.tmw.The-Mac-Weekly-brighten"; PRODUCT_NAME = "$(TARGET_NAME)"; SWIFT_VERSION = 4.0; TARGETED_DEVICE_FAMILY = "1,2"; diff --git a/The Mac Weekly/Base.lproj/Main.storyboard b/The Mac Weekly/Base.lproj/Main.storyboard index d46a472..083becf 100644 --- a/The Mac Weekly/Base.lproj/Main.storyboard +++ b/The Mac Weekly/Base.lproj/Main.storyboard @@ -1,10 +1,11 @@ - + - + + @@ -204,67 +205,72 @@ - - - + + + + + + - - - + + + + + + - + - - - + + - + + + + + - - - - - - - - + + + + + + + + + + + + + @@ -482,6 +488,7 @@ + diff --git a/The Mac Weekly/Info.plist b/The Mac Weekly/Info.plist index 2e72bd0..1c87513 100644 --- a/The Mac Weekly/Info.plist +++ b/The Mac Weekly/Info.plist @@ -38,6 +38,8 @@ NSAllowsArbitraryLoads + NSPhotoLibraryAddUsageDescription + UILaunchStoryboardName LaunchScreen UIMainStoryboardFile @@ -59,7 +61,5 @@ UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight - NSPhotoLibraryAddUsageDescription - From 8055fba813abe483a5bcf599e0f814c4d7871a1c Mon Sep 17 00:00:00 2001 From: bjelke Date: Tue, 9 Oct 2018 16:05:14 -0500 Subject: [PATCH 05/15] working on login layout constraints --- The Mac Weekly/Base.lproj/Main.storyboard | 212 ++++++++++++---------- 1 file changed, 119 insertions(+), 93 deletions(-) diff --git a/The Mac Weekly/Base.lproj/Main.storyboard b/The Mac Weekly/Base.lproj/Main.storyboard index a6477df..27924b0 100644 --- a/The Mac Weekly/Base.lproj/Main.storyboard +++ b/The Mac Weekly/Base.lproj/Main.storyboard @@ -1,6 +1,6 @@ - + @@ -186,7 +186,7 @@ - + @@ -202,78 +202,103 @@ - + - - - - - - + + - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + + + + + + + + + + - - + - - - - - - - - - - - + + + + + @@ -284,18 +309,18 @@ - + - + - + @@ -325,7 +350,7 @@ - + @@ -346,7 +371,7 @@ - + @@ -403,11 +428,11 @@ - + - - + + @@ -415,10 +440,10 @@ - + - + - + - + - + - + - + - + - + - + @@ -543,7 +568,7 @@ - + @@ -559,7 +584,7 @@ - + @@ -576,14 +601,14 @@ - + - + - + @@ -593,16 +618,16 @@ - + - + @@ -674,11 +699,11 @@ - + - - + + @@ -686,10 +711,10 @@ - + - + - + - + diff --git a/The Mac Weekly/LoginViewController.swift b/The Mac Weekly/LoginViewController.swift index 2708cb8..14f4047 100644 --- a/The Mac Weekly/LoginViewController.swift +++ b/The Mac Weekly/LoginViewController.swift @@ -43,9 +43,39 @@ class LoginViewController: UIViewController, GIDSignInUIDelegate { super.didReceiveMemoryWarning() // Dispose of any resources that can be recreated. } + + // Handle ScrollView + keyboard interactions + // code from https://stackoverflow.com/a/45122844/239816 + @IBOutlet weak var scrollView: UIScrollView! + + override func viewWillAppear(_ animated: Bool) { + super.viewWillAppear(animated) + registerNotifications() + } + + override func viewWillDisappear(_ animated: Bool) { + super.viewWillDisappear(animated) + unregisterNotifications() + } + + func registerNotifications() { + NotificationCenter.default.addObserver(self, selector: #selector(keyboardWillShow), name: .UIKeyboardWillShow, object: nil) + NotificationCenter.default.addObserver(self, selector: #selector(keyboardWillHide), name: .UIKeyboardWillHide, object: nil) + } + + func unregisterNotifications() { + NotificationCenter.default.removeObserver(self, name: .UIKeyboardWillShow, object: nil) + NotificationCenter.default.removeObserver(self, name: .UIKeyboardWillHide, object: nil) + } + + @objc func keyboardWillShow(notification: NSNotification){ + guard let keyboardFrame = notification.userInfo![UIKeyboardFrameEndUserInfoKey] as? NSValue else { return } + scrollView.contentInset.bottom = view.convert(keyboardFrame.cgRectValue, from: nil).size.height + 20 + } + + @objc func keyboardWillHide(notification: NSNotification){ + scrollView.contentInset.bottom = 0 + } } - - -//I made it From 0a8211dd68d4782b62d04c5c70c4a6bd6bd4c9b1 Mon Sep 17 00:00:00 2001 From: bjelke Date: Wed, 10 Oct 2018 16:46:29 -0500 Subject: [PATCH 07/15] minor layout change --- The Mac Weekly/Base.lproj/Main.storyboard | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/The Mac Weekly/Base.lproj/Main.storyboard b/The Mac Weekly/Base.lproj/Main.storyboard index 7144c16..815e139 100644 --- a/The Mac Weekly/Base.lproj/Main.storyboard +++ b/The Mac Weekly/Base.lproj/Main.storyboard @@ -256,14 +256,14 @@ From 96745e77817aca1b862fd4ccee0607f6bdb858c7 Mon Sep 17 00:00:00 2001 From: bjelke Date: Sun, 14 Oct 2018 14:09:36 -0500 Subject: [PATCH 08/15] accept any correctly formatted email, not just macalester addresses --- The Mac Weekly/utils.swift | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/The Mac Weekly/utils.swift b/The Mac Weekly/utils.swift index 63805d6..d67cef1 100644 --- a/The Mac Weekly/utils.swift +++ b/The Mac Weekly/utils.swift @@ -114,6 +114,18 @@ public class TestableUtils { } + // verify that input is a valid email format (not specifically macalester) + // the text box expects email input, but as far as I can tell it only uses that to set the keyboard + // code from: https://stackoverflow.com/a/35789191 + static func isEmail(email:String) -> Bool { + + let emailFormat = "[A-Z0-9a-z._%+-]+@[A-Za-z0-9.-]+\\.[A-Za-z]{2,64}" + let emailPredicate = NSPredicate(format:"SELF MATCHES %@", emailFormat) + // guide to filtering with predicate: https://nshipster.com/nspredicate/ + return emailPredicate.evaluate(with: email) + + } + // Log in a user through Firebase static func login(email: String, password: String) { @@ -134,7 +146,7 @@ public class TestableUtils { // TODO: Replace all print statements with logs once we have that set up - if isMacalesterEmail(email: email) { + if isEmail(email: email) { // NOTE: this automatically signs in this new user Auth.auth().createUser(withEmail: email, password: password) { (authResult, error) in From e25dc1aedcc46574f707823db66fd3e8a049f7b9 Mon Sep 17 00:00:00 2001 From: bjelke Date: Thu, 18 Oct 2018 20:53:09 -0500 Subject: [PATCH 09/15] fixed google button image error and test compile error --- The Mac Weekly.xcodeproj/project.pbxproj | 8 +++--- .../google.imageset/Contents.json | 23 ++++++++++++++++++ .../google.imageset/google.png | Bin 0 -> 572 bytes .../google.imageset/google@2x.png | Bin 0 -> 987 bytes .../google.imageset/google@3x.png | Bin 0 -> 1622 bytes The Mac Weekly/Base.lproj/Main.storyboard | 7 ++++-- The Mac Weekly/LoginViewController.swift | 5 +++- The Mac WeeklyTests/The_Mac_WeeklyTests.swift | 5 ++++ 8 files changed, 41 insertions(+), 7 deletions(-) create mode 100644 The Mac Weekly/Assets.xcassets/google.imageset/Contents.json create mode 100644 The Mac Weekly/Assets.xcassets/google.imageset/google.png create mode 100644 The Mac Weekly/Assets.xcassets/google.imageset/google@2x.png create mode 100644 The Mac Weekly/Assets.xcassets/google.imageset/google@3x.png diff --git a/The Mac Weekly.xcodeproj/project.pbxproj b/The Mac Weekly.xcodeproj/project.pbxproj index ce8dac7..e44083d 100644 --- a/The Mac Weekly.xcodeproj/project.pbxproj +++ b/The Mac Weekly.xcodeproj/project.pbxproj @@ -9,7 +9,6 @@ /* Begin PBXBuildFile section */ 0014B205211271C1005B410E /* UILabel+HTML.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0014B204211271C1005B410E /* UILabel+HTML.swift */; }; 0014B206211271C1005B410E /* UILabel+HTML.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0014B204211271C1005B410E /* UILabel+HTML.swift */; }; - 0024649A21508FF100DF0038 /* GoogleService-Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = 0024649921508FF100DF0038 /* GoogleService-Info.plist */; }; 00341DB7215DC85300D07762 /* SettingsTableViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 00341DB6215DC85300D07762 /* SettingsTableViewController.swift */; }; 00341DB8215DC85300D07762 /* SettingsTableViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 00341DB6215DC85300D07762 /* SettingsTableViewController.swift */; }; 0039066F215E81E80001A88A /* AccountSettingsTableViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0039066E215E81E80001A88A /* AccountSettingsTableViewController.swift */; }; @@ -39,6 +38,8 @@ 67E2FC262030E423000FD5BE /* PostTableViewController.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 67E2FC242030E422000FD5BE /* PostTableViewController.storyboard */; }; AE7E53254523D4266FBF195F /* Pods_The_Mac_Weekly.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1BAAC00BD8C48F155EEFCA94 /* Pods_The_Mac_Weekly.framework */; }; CBFB36ABF45CD017F26735B5 /* Pods_The_Mac_WeeklyUITests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = CEC1B70C2E1F13089716348D /* Pods_The_Mac_WeeklyUITests.framework */; }; + DF1537F22179256800EC048B /* utils.swift in Sources */ = {isa = PBXBuildFile; fileRef = 67039EC3202AD158009357FF /* utils.swift */; }; + DF1537F32179257A00EC048B /* LoginViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 003CB0EB20DDAF18001A790B /* LoginViewController.swift */; }; FC129842C382CCC0B5715925 /* Pods_The_Mac_WeeklyTests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F064AFB1504B1B2B0F0DA185 /* Pods_The_Mac_WeeklyTests.framework */; }; /* End PBXBuildFile section */ @@ -505,9 +506,11 @@ isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( + DF1537F32179257A00EC048B /* LoginViewController.swift in Sources */, 00390670215E81E80001A88A /* AccountSettingsTableViewController.swift in Sources */, 6716CA192026BE3400F008C0 /* The_Mac_WeeklyTests.swift in Sources */, 0014B206211271C1005B410E /* UILabel+HTML.swift in Sources */, + DF1537F22179256800EC048B /* utils.swift in Sources */, 00393585216D461D00464D95 /* AboutViewController.swift in Sources */, 00341DB8215DC85300D07762 /* SettingsTableViewController.swift in Sources */, ); @@ -686,7 +689,6 @@ IPHONEOS_DEPLOYMENT_TARGET = 11.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; PRODUCT_BUNDLE_IDENTIFIER = "org.tmw.The-Mac-Weekly-brighten"; - PRODUCT_NAME = "$(TARGET_NAME)"; SWIFT_VERSION = 4.0; TARGETED_DEVICE_FAMILY = "1,2"; @@ -699,13 +701,11 @@ buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; CODE_SIGN_STYLE = Automatic; - DEVELOPMENT_TEAM = KQ2D936C95; INFOPLIST_FILE = "The Mac Weekly/Info.plist"; IPHONEOS_DEPLOYMENT_TARGET = 11.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; PRODUCT_BUNDLE_IDENTIFIER = "org.tmw.The-Mac-Weekly-brighten"; - PRODUCT_NAME = "$(TARGET_NAME)"; SWIFT_VERSION = 4.0; TARGETED_DEVICE_FAMILY = "1,2"; diff --git a/The Mac Weekly/Assets.xcassets/google.imageset/Contents.json b/The Mac Weekly/Assets.xcassets/google.imageset/Contents.json new file mode 100644 index 0000000..3eb79b3 --- /dev/null +++ b/The Mac Weekly/Assets.xcassets/google.imageset/Contents.json @@ -0,0 +1,23 @@ +{ + "images" : [ + { + "idiom" : "universal", + "filename" : "google.png", + "scale" : "1x" + }, + { + "idiom" : "universal", + "filename" : "google@2x.png", + "scale" : "2x" + }, + { + "idiom" : "universal", + "filename" : "google@3x.png", + "scale" : "3x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + } +} \ No newline at end of file diff --git a/The Mac Weekly/Assets.xcassets/google.imageset/google.png b/The Mac Weekly/Assets.xcassets/google.imageset/google.png new file mode 100644 index 0000000000000000000000000000000000000000..26f15cb31a8b411bd085bbbc3f787aff6955989b GIT binary patch literal 572 zcmV-C0>k}@P)8~`Ph-lT~r3WuUC?1mC^kT9_vs)Zz6B;_(b;LgS7(W}jKyD^U_^JVTi|Nb2eJ@_{X%#)y; zZEYP&;+f_F6%TikbczqIPkk3xv}*#Mfe@NBMP@FBC)*@iSNTCq6+&}OyM7o%ltY2NclZe89l)HeY)GO9xv`3VCB)%;!)yQCmzoxU*cxpbhSw@?v!rg1~BN zl8DL}?M<3i4;G2b+zd-Hl-`A92WM{Fgv2Manj`v0WNN`KdKQEg`s=RmucG(RDPuZ=x#zh(NKMd5IKOK@$P;pF=183m{RotfS1Yy~F0*P;H97OC zM#2SM|Ht_}TzKG!O8l{R#|q>g{;{J;%MBllx|!4Ov3HR&&|}|_dn4BG_$vQW zG#=8pAoSnf_)@>it!-O?8K@MF@4bRZVe0SoeJxy(*b%Hi$HxX;cja3K7kzoHf5s+| zEjYdj_@J+Imhn3h*!45$6$82A342P|kn144i{7%_k)Z2$JdKy`_1MAdK_RFKxwqqj z?vwG@KZ@=DgbBD-;4R+6_#M4mz_pro6D6Ld5?DYTy^p{G{{m#=y?x`@A720f002ov JPDHLkV1h!Z?2`Zh literal 0 HcmV?d00001 diff --git a/The Mac Weekly/Assets.xcassets/google.imageset/google@3x.png b/The Mac Weekly/Assets.xcassets/google.imageset/google@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..d978ed26a231ef362d6897ebf208f3f1f4f1c7da GIT binary patch literal 1622 zcmV-c2C4apP)0n7a+ByQ8!ahvZ4Bun~Qz)$OQXm;|AK-T;yJkwe z5lB|-2hb?eu^!N_zrfEgVCIW(%}c{J?Gjx7CO(zGCwvl-oT+PonEn~#mX1?^fxYJw z%=Xzqv$hLRB7d5d9l|!{41P_5HFX(Ksy6wBJ0M#7YdYKUcVVkK4M-1e<+#o-o6eMa z0gxV>{DQWAqP|6~-v6`N+#Se>@Q4w8xC{T=*3SmgYoji>YtO&On*L609Vtygd%^KQ z>GZe7G!)2)_8%I{^3RXnyORiyS7dL!X1pP8plsB>XEl}Q{nS+6MXdGq5mki)Wp2L< zfwC2GX{yK@$D!IZF6l1n&N?X3p0W@qn{lDW^8DvG&?d^dh)B^MBIHoF_&^wT4A~7R zn~|7FdF#r%RCAbE);zVHsG2&sJs5AcK-rEOSLUl6Adz+RdWxFk`{EW22%xOL`H%YMPC8pf4E9&##ZKi2xLSif>}$VUjc%x?9wU|49}|s zG9oj<8h(TST`*|)3y5#Us9f{N`v}O0jLw*J^C;_517t*on#b2bSkztKlx_E-tovR- zdS$5HzX=FdmiLVG23^+Wcp$wpG-G}s;t!ZIq1KdjZFzJ-|5-qKnQxEoqKCCKIxdA7 zD+L6r?4l$K_2-H{;>6iDq57PS+RVdt0m>u{^c>k>_M*r!K*XP(`BV`v)Z5E;6Jz~T z5XueUb>9Y*Nf>a2Y%s^o^#=kGO3ZcE2v08TCklKn4%E)%ajsTo9<~=yCSXtMYb$DK zl?i1jZuk?3apB{RedACyWj)1(b4PKIm=vFT8BiuzN+NTm*H>}mX&}ahgrJ-?EAoHg zP+zUsK}?%9kpm>8c->b3btG)GF1b)`GZvi;#JDi}Vfi-KFIc>v80nwE15eK5Zq&^8CW3aW-p^Bmb^9>>&h!Gc7=pWWY^*Dc(3ANFBYgWCk(}B{-Tv~SkAB|Ev zN)<@6Thk~4+8CEj6!;7GHTj(NF$2i?TJg9q zQoYmn1WKgu%)`2>K9@uFI-kXwUE6jItT8e2;g|RnA$6J`dq-<8pp9|ag5oPYjQ@dQ z9_RNM_)Ol^;cD)r_wF4t-kZE9CVKtwr;CL3)=>Ol*x&4>(Fs7C;}R1O07Pdi zc;QT8zT?Z-vsDzm6DSrgG4WbaJg%oZKOA_E6r&$ly7?#N<%i7_c|fsniHmNyAs0>I znXCv0!yms-*h*`8?Y(WjA=n!z9xh2?ZIot9xM9y+^V*2p!hL`e;Ua}wIhsMFlY>3U zofIe;F4A}_P<_sqGrz{%wS0I0lEo!ud`2|++`o5xC})f6aXrVIH&80L=yJf)3EfOy z*I8&T-*rHsMtpzCNaJkCGx`+JJl>Bq_B20Ul-pn21`0ZNyD04`wR UaJO?$Q2+n{07*qoM6N<$f*zI^s{jB1 literal 0 HcmV?d00001 diff --git a/The Mac Weekly/Base.lproj/Main.storyboard b/The Mac Weekly/Base.lproj/Main.storyboard index 85173d5..a5f123c 100644 --- a/The Mac Weekly/Base.lproj/Main.storyboard +++ b/The Mac Weekly/Base.lproj/Main.storyboard @@ -263,9 +263,12 @@ - + + + +