public static string tryCreate(string token, string hubName) { User user = User.getAutentification(token); if (user == null) { return(new ErrorResponse(300, Constants.NetMsg.FORBIDDEN).ToJson()); } var hubs = DbHolder.getDb().GetDatabase(Constants.HUBBL_DB_NAME).GetCollection <Hub>(Constants.HUBS_TABLE_NAME); long count = hubs.Find(Builders <Hub> .Filter.Eq <String>(e => e.name, hubName)).Count(); if (count > 0) { return(new ErrorResponse(220, Constants.NetMsg.HUB_ALREADY_EXISTS).ToJson()); } Hub hub = new Hub(hubName, user); hubs.InsertOne(hub); //Player player = new Player(hub.id.ToString()); return(new IdResponse(hub.id.ToString()).ToJson()); }
public static Hub get(string id) { try { return(DbHolder.getDb().GetDatabase(Constants.HUBBL_DB_NAME).GetCollection <Hub>(Constants.HUBS_TABLE_NAME) .Find(Builders <Hub> .Filter.Eq <ObjectId>(hub => hub.id, new ObjectId(id))).First()); } catch { return(null); } }
public static User getAutentification(string token) { try { return(DbHolder.getDb().GetDatabase(Constants.HUBBL_DB_NAME).GetCollection <User>(Constants.USERS_TABLE_NAME) .Find(Builders <User> .Filter.Eq <String>(e => e.token, token)).First()); } catch { return(null); } }
public static User get(string id) { try { var collection = DbHolder.getDb().GetDatabase(Constants.HUBBL_DB_NAME).GetCollection <User>(Constants.USERS_TABLE_NAME); User user = collection.Find(Builders <User> .Filter.Eq <String>(u => u.id.ToString(), id)).First(); return(user); } catch { return(null); } }
public static User trySignUp(string name, string login, string password) { IMongoCollection <User> users = DbHolder.getDb().GetDatabase(Constants.HUBBL_DB_NAME).GetCollection <User>(Constants.USERS_TABLE_NAME); long count = users.Find(Builders <User> .Filter.Eq <String>(u => u.login, login)).Count(); if (count > 0) { return(null); } string salt = Utility.randomSalt(); User user = new User(login, Utility.sha256(password + salt + Settings.getServerKey()), salt, name, null); users.InsertOne(user); return(user); }
public static User tryLogin(string login, string password) { try { var collection = DbHolder.getDb().GetDatabase(Constants.HUBBL_DB_NAME).GetCollection <User>(Constants.USERS_TABLE_NAME); User user = collection.Find(Builders <User> .Filter.Eq <String>(u => u.login, login)).First(); if (user.password != Utility.sha256(password + user.salt + Settings.getServerKey())) { return(null); } user.token = Guid.NewGuid().ToString(); collection.FindOneAndUpdate( Builders <User> .Filter.Eq <ObjectId>(e => e.id, user.id), Builders <User> .Update.Set(e => e.token, user.token) ); return(user); } catch { return(null); } }
public static List <HubInfo> find(string query) { return(DbHolder.getDb().GetDatabase(Constants.HUBBL_DB_NAME).GetCollection <Hub>(Constants.HUBS_TABLE_NAME) .Find(Builders <Hub> .Filter.Regex(Constants.HUB_NAME, query)).ToList().ConvertAll(el => new HubInfo(el.id.ToString(), el.name, el.owner.name))); }
public static List <HubInfo> getAll() { return(DbHolder.getDb().GetDatabase(Constants.HUBBL_DB_NAME).GetCollection <Hub>(Constants.HUBS_TABLE_NAME) .Find(_ => true).ToList().ConvertAll(el => new HubInfo(el.id.ToString(), el.name, el.owner.name))); }