public void CompileLoginInformation(UserViewModel user) { if (user == null) { string errorMessage = "Invalid login"; MethodBase.GetCurrentMethod().Fatal(errorMessage); View.ShowMessage(EnumViewMessage.Error, errorMessage); return; } try { // get role for user UserRoleViewModel userRole = Model.GetUserRolesByUserId(user.Id); // get allowed modules for current user's role List <RoleAccessViewModel> listAllowedModules = Model.GetRoleAccessByRoleId(userRole.RoleId); LoginInformation.SetLoggedInInformation(user.Id, user.UserName, userRole.RoleId, userRole.Role.Name); listAllowedModules.ForEach(item => { LoginInformation.AddModulInfo(new ModulInfo { ModulId = item.ApplicationModulId, ModulName = item.ApplicationModul.ModulName, AccessCode = item.AccessCode }); }); } catch (Exception ex) { string errorMessage = "An error occured while trying to compile login information"; MethodBase.GetCurrentMethod().Error(errorMessage, ex); View.ShowMessage(EnumViewMessage.Error, errorMessage); } }