It would be nice to have a @mention feature, akin to what Twitter, Github, Facebook et al. have. The behaviour I had in mind is this: you start typing @someusername and a small window pops up showing possible usernames (maybe up to 10). When you submit the post, the username is linked to the user's profile.
For example, if I typed @naderman, it would turn into a link to his user profile (like this: @naderman) and he would get a PM or email (if enabled in his profile settings) alerting him about the topic. The extra JS-based functionality would be nice if JS is enabled, but would not be necessary for the feature to work - with JS disabled, no window would pop up, but mentioning a user would still link to their profile.
- Open to abuse - what if I posted a hundred times and mentioned @naderman every single time, resulting in a hundred notifications for naderman? How can this be avoided?
Implementation details - to be discussed
- Editing posts - deleting @mentions should probably not do anything. What about adding a mention? What if you delete then subsequently add a mention?
- How should the mention data be stored? Or should it just not be stored at all? (In which case, how would it work in conjunction with the ability to add/delete mention?) Should it be stored on a per-post basis, with mentions that have been deleted from the post not deleted from the table to avoid users being notified about one post multiple times? Should it be on a per-topic basis?