Guest User

Untitled

a guest
Nov 19th, 2018
119
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.25 KB | None | 0 0
  1. public MemberData GetFullUser(string login)
  2. {
  3. MemberData userFromAD = authenticator.GetFullUser(login);
  4.  
  5. if (userFromAD != null)
  6. {
  7. MemberData userFromDB = dbDataAccess.GetFullUser(userFromAD.Login);
  8.  
  9. foreach (var group in userFromAD.FullGroups)
  10. {
  11. if (dbDataAccess.GetFullUser(group.Login) == null)
  12. {
  13. try
  14. {
  15. dbDataAccess.AddGroup(group);
  16. }
  17. catch(Exception ex)
  18. {
  19. throw new Exception(string.Format("Erro {0} ao adicionar o grupo {1}", ex.Message, group.Login));
  20. }
  21. }
  22. }
  23.  
  24. userFromAD.Password = "ThePasswordIsInAd";
  25.  
  26. if(userFromDB == null )
  27. {
  28. if (userFromAD.AreaData == null) userFromAD.AreaData = new AreaData { ID = 1 };
  29. try
  30. {
  31. switch (userFromAD.MemberType)
  32. {
  33. case MemberType.User:
  34. dbDataAccess.AddUser(userFromAD);
  35. break;
  36. case MemberType.Group:
  37. dbDataAccess.AddGroup(userFromAD);
  38. break;
  39. }
  40. }
  41. catch (Exception ex)
  42. {
  43. throw new Exception(string.Format("Erro {0} ao adicionar o membro {1}", ex.Message, userFromAD.Login));
  44. }
  45. }
  46. else
  47. {
  48. userFromAD.LoginAttempts = userFromDB.LoginAttempts;
  49. userFromAD.AccessRules = userFromDB.AccessRules;
  50. userFromAD.AreaData = userFromDB.AreaData;
  51. userFromAD.ChangingPolicyInterval = userFromDB.ChangingPolicyInterval;
  52. userFromAD.IsPrivilegedManager = userFromDB.IsPrivilegedManager;
  53. userFromAD.Manager = userFromDB.Manager;
  54. userFromAD.RegistrationDate = userFromDB.RegistrationDate;
  55. if (userFromAD.AreaData == null) userFromAD.AreaData = new AreaData {ID = 1};
  56. try
  57. {
  58. switch (userFromAD.MemberType)
  59. {
  60. case MemberType.User:
  61. dbDataAccess.SaveUser(userFromAD);
  62. break;
  63. case MemberType.Group:
  64. dbDataAccess.SaveGroup(userFromAD, true);
  65. break;
  66. }
  67. }
  68. catch (Exception ex)
  69. {
  70. throw new Exception(string.Format("Erro {0} ao salvar o membro {1}", ex.Message, userFromAD.Login));
  71. }
  72.  
  73. }
  74. }
  75. return userFromAD;
  76. }
Add Comment
Please, Sign In to add comment