On Apr 07, 2016, at 02:46 AM, Simon Hanna wrote: >I don't mind the core being able to handle verfications. But I'm pretty sure >everyone that offers a web interface for managing mailman will want the >ability to confirm emails using http links.
Absolutely. This is the focus of my "templates" branch. In MM2 we had the advantage that the web ui and the core were tightly integrated, but because they're separated in MM3, the core can't assume anything about the web front-end. At a high level, it will be possible to define a custom template for all confirmation messages, and those templates can be filled with whatever clickable confirmation link makes sense for whatever web ui is in place. I imagine that for a typical Postorius-fronted installation, we'll have some standard templates and a simple config file that will provide a minimal effort click-through-Postorius functionality. >I don't see a reason why we should implement that in mailman, if it can >easily be added in the front-end. Right, the core will *not* provide such a clickable confirmation link. >Doing this has one downside in my opinion. Storing the same addresses in >several places (which isn't bad perse, as a matter of fact microservices >encourage duplicating data and synchronizing it) would need >synchronization. Ideally mailman would offer signals for various events that >front-ends can hook in to. They would probably be similar to the hyperkitty >archiver plugin I guess. Yes. While orthogonal to the templates work, the core has a fairly rich ability to link internal events to external notifications. We simply need to define the API for calling back into Postorius (or whatever web front-end needs notification), and then we can dispatch internal events to that API. E.g. a webhook or similar. Alternatively, Postorius can make queries of the core's REST API at whatever decision point makes sense. >Sorry but I have to disagree with that. Postorius _has_ to be able to send >out mails. In case any server errors occur, django tries to send out emails >to administrators defined in the settings. That's different though. What I mean is that any list traffic, including to list members, owners, and moderators, should only be sent by the core. It's different if a Django error occurs and it wants to send an email notification to the Django administrator (although do also think about the Mailman site owners). >There is one more issue that needs to be discussed which is relevant to all >templates: Translation. Django has builtin methods to translate and through >the browser's preferred language can choose one. The core would require >associating a language with each user in the settings. We already do that. Members, users, and addresses have preferences, and those preferences have a preferred language. When sending notifications, the core will use the preferred language of the appropriate preference. The core will use gettext based translations, but when using a template, we have a mechanism for looking up a template in a particular language. If one is available, we'll use that, if not we always fall back to the site language (which is usually English) or the system language (i.e. shipped templates, always English). Whatever translation service we end up using should support translating both gettext and templates, but ultimately it's up to the site administrator and system administrators of whatever front-end is used, to provide the appropriate translated templates. >From a usability point of view I would like Postorius to be able to set all >templates and not just link to files in mailman. There are a couple of >businesses that manage thousands of lists and I guess they would appreciate >it if list owners could do this without direct access to the mailman server. The template system I'm working on does not require file system access to the Mailman server machine. It will work on any URL (my intention is to use requests for the underlying fetch machinery, with a mailman: extension for file system access for those sites that do want to use that). The templates don't even need to reside in Postorius. Cheers, -Barry _______________________________________________ Mailman-Developers mailing list Mailman-Developers@python.org https://mail.python.org/mailman/listinfo/mailman-developers Mailman FAQ: http://wiki.list.org/x/AgA3 Searchable Archives: http://www.mail-archive.com/mailman-developers%40python.org/ Unsubscribe: https://mail.python.org/mailman/options/mailman-developers/archive%40jab.org Security Policy: http://wiki.list.org/x/QIA9