Explorar o código

Lookup users by email hostname using new field

hugh-obrien %!s(int64=8) %!d(string=hai) anos
pai
achega
af3cc01496

+ 6 - 1
services/web/app/coffee/Features/Institutions/InstitutionsController.coffee

@@ -1,2 +1,7 @@
+UserGetter = require("../User/UserGetter")
+
 module.exports = InstitutionsController =
-	confirmDomain: (req, res, next = (error) ->) ->
+	confirmDomain: (req, res, next) ->
+		hostname = req.body.hostname
+		UserGetter.getUsersByHostname hostname, {_id:1, emails:1}, (error, users) ->
+			res.json {hostname: hostname, wub: users}

+ 5 - 0
services/web/app/coffee/Features/User/UserGetter.coffee

@@ -58,6 +58,11 @@ module.exports = UserGetter =
 			# well
 			@getUserByMainEmail email, projection, callback
 
+	getUsersByHostname: (hostname, projection, callback = (error, users) ->) ->
+		hostname = hostname.trim()
+		query = emails: { $exists: true }, 'emails.hostname': hostname
+		db.users.find query, projection, callback
+
 	getUsers: (user_ids, projection, callback = (error, users) ->) ->
 		try
 			user_ids = user_ids.map (u) -> ObjectId(u.toString())