public Role Save(Role role) { oxite_Role roleToSave = null; if (role.ID != Guid.Empty) { roleToSave = context.oxite_Roles.FirstOrDefault(r => r.RoleID == role.ID); } if (roleToSave == null) { roleToSave = new oxite_Role(); roleToSave.RoleID = role.ID != Guid.Empty ? role.ID : Guid.NewGuid(); context.oxite_Roles.InsertOnSubmit(roleToSave); } roleToSave.GroupRoleID = role.Group != null && role.Group.ID != Guid.Empty ? role.Group.ID : roleToSave.RoleID; roleToSave.RoleName = role.Name; roleToSave.RoleType = (byte)role.Type; context.SubmitChanges(); return(GetRole(roleToSave.RoleName)); }
public UserAuthenticated Save(UserAuthenticated user, Guid siteID) { oxite_User userToSave = null; if (user.ID != Guid.Empty) { userToSave = context.oxite_Users.FirstOrDefault(u => u.UserID == user.ID); } if (userToSave == null) { userToSave = new oxite_User(); userToSave.UserID = user.ID != Guid.Empty ? user.ID : Guid.NewGuid(); context.oxite_Users.InsertOnSubmit(userToSave); } //TODO: (erikpo) Move these fields into a profile table (except maybe username?) if (user.LanguageDefault != null && user.LanguageDefault.ID != Guid.Empty) { userToSave.DefaultLanguageID = user.LanguageDefault.ID; } else { userToSave.DefaultLanguageID = context.oxite_Languages.Where(l => l.LanguageName == "en").First().LanguageID; } userToSave.Username = user.Name; userToSave.DisplayName = user.DisplayName; userToSave.Email = user.Email; userToSave.HashedEmail = user.EmailHash; userToSave.Status = (byte)user.Status; //TODO: (erikpo) Add url fields context.SubmitChanges(); return(GetUser(siteID, userToSave.UserID)); }