Advertisement
thieumao

StoreData

Jun 9th, 2016
100
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. //
  2. //  StoreData.m
  3. //  Elearning
  4. //
  5.  
  6. #import "StoreData.h"
  7.  
  8. @implementation StoreData
  9.  
  10. + (UICKeyChainStore *)initTheKeyChain {
  11.     UICKeyChainStore *keychain = [UICKeyChainStore keyChainStoreWithService:KEYCHAIN_KEY_SERVICE];
  12.     return keychain;
  13. }
  14.  
  15. + (User *)getUser {
  16.     UICKeyChainStore *chain = [StoreData initTheKeyChain];
  17.     User *user = [[User alloc] init];
  18.     user.userId = chain[@"user_id"].intValue;
  19.     user.name = chain[@"name"];
  20.     user.email = chain[@"email"];
  21.     user.avatar = chain[@"avatar"];
  22.     user.authToken = chain[@"auth_token"];
  23.     return user;
  24. }
  25.  
  26. + (void)setUser:(User *)user {
  27.     UICKeyChainStore *chain = [StoreData initTheKeyChain];
  28.     [chain setString:[NSString stringWithFormat:@"%d", user.userId] forKey:@"user_id"];
  29.     [chain setString:user.name forKey:@"name"];
  30.     [chain setString:user.email forKey:@"email"];
  31.     [chain setString:user.avatar forKey:@"avatar"];
  32.     [chain setString:user.authToken forKey:@"auth_token"];
  33. }
  34.  
  35. + (void)clearUser {
  36.     UICKeyChainStore *chain = [StoreData initTheKeyChain];
  37.     [chain removeItemForKey:@"user_id"];
  38.     [chain removeItemForKey:@"name"];
  39.     [chain removeItemForKey:@"email"];
  40.     [chain removeItemForKey:@"avatar"];
  41.     [chain removeItemForKey:@"auth_token"];
  42. }
  43.  
  44. + (UserInput *)getInput {
  45.     UICKeyChainStore *chain = [StoreData initTheKeyChain];
  46.     UserInput *input = [[UserInput alloc] init];
  47.     input.rememberMe = chain[@"remember_me"].boolValue;
  48.     input.emailInput = chain[@"email_input"];
  49.     input.passwordInput = chain[@"password_input"];
  50.     return input;
  51. }
  52.  
  53. + (void)setInput:(UserInput *)input {
  54.     UICKeyChainStore *chain = [StoreData initTheKeyChain];
  55.     [chain setString:(input.rememberMe  ? @"YES" : @"NO") forKey:@"remember_me"];
  56.     [chain setString:input.emailInput forKey:@"email_input"];
  57.     [chain setString:input.passwordInput forKey:@"password_input"];
  58. }
  59.  
  60. + (void)clearInput {
  61.     UICKeyChainStore *chain = [StoreData initTheKeyChain];
  62.     [chain removeItemForKey:@"remember_me"];
  63.     [chain removeItemForKey:@"email_input"];
  64.     [chain removeItemForKey:@"password_input"];
  65. }
  66.  
  67. + (BOOL) getLogin {
  68.     UICKeyChainStore *chain = [StoreData initTheKeyChain];
  69.     return chain[@"is_login"].boolValue;
  70. }
  71.  
  72. + (void) setLogin:(BOOL)isLogin {
  73.     UICKeyChainStore *chain = [StoreData initTheKeyChain];
  74.     [chain setString:(isLogin ? @"YES" : @"NO") forKey:@"is_login"];
  75. }
  76.  
  77. + (void)clearLogin {
  78.     UICKeyChainStore *chain = [StoreData initTheKeyChain];
  79.     [chain removeItemForKey:@"is_login"];
  80. }
  81.  
  82. @end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement