I just released a webinar management extra called Webinex (
http://modx.com/extras/package/webinex) and I have been looking at ways to integrate it with other extras to provide email sending, login management and other functionality. I've run into a problem, and I think we need to deal with it in general as a community before it gets worse:
There is no unified standard for handling email subscribers, event registrants, front-end users etc. -- basically, for handling people who come to your website.
In particular, we have some extras that store people such as newsletter subscribers in a custom db table. And then we have other extras that store people in the modx_users table.
The problem with this is that it means these extras can't work together to provide integrated functionality for the same database of people. Or at least, it will make integration very difficult. For example, if I want to use the Subscribe extra to register people as users of my site, but I also want to send them a newsletter using DitsNews, I would have to store two records for each person - one as a user, the other as a DitsNews subscriber. The more such extras I use, the more records I will have to maintain for each person, which will quickly become unmanageable.
So I propose the following standard be adopted universally as a coding standard for Revo:
Users, visitors, registrants and subscribers to the site should always be handled as users, either by using the modUser class or your own custom extension of the modUser class.
This would allow all such extras to interact and be used in combination easily, since they would all be storing people in the modx_users table. That will make it much easier to build a unified system for interacting with your site visitors.
[ed. note: esnyder last edited this post 14 years, 3 months ago.]