small optimizations

user.isOnline works with an array of uids
do not make 2 trips to db to get main post and first 10 posts