public BsonDocument GenerateNewUser(string uname, string pw, string email) { uname = uname.ToLowerInvariant(); BsonDocument bd = CreateEmptyUserDocument(); bd[Account.USERNAME] = uname; bd[Account.PASSWORD] = ForumUtilities.Hash(pw, uname); bd[Account.EMAIL] = email; bd[Account.UID] = getIDFor(TF_USERS); bd[Account.ACTIVATION_CODE] = ForumUtilities.GetRandomHex(32); return(bd); }
public void InstallDefaultUser(string pw) { IMongoCollection <BsonDocument> userbase = Database.GetCollection <BsonDocument>(TF_USERS); BsonDocument user = CreateEmptyUserDocument(); user[Account.UID] = (long)0; user[Account.USERNAME] = "admin"; user[Account.DISPLAY_NAME] = "Administrator"; user[Account.PASSWORD] = ForumUtilities.Hash(pw, "admin"); user[Account.ACTIVE] = true; user[Account.ACCOUNT_TYPE] = Account.AT_VALID; FilterDefinition <BsonDocument> fd = Builders <BsonDocument> .Filter.Eq(Account.UID, (long)0); UpdateOptions uo = new UpdateOptions() { IsUpsert = true }; userbase.ReplaceOneAsync(fd, user, uo).Wait(); }