[Mailman-Users] Membership Management PHP UI

Lindsay Haisley fmouse at fmp.com
Tue Jun 17 00:45:24 CEST 2014


On Mon, 2014-06-16 at 14:50 -0700, Peter Knowles wrote:
> Mark,
> 
> Preferably I'd like to transparently issue a command to Mailman backend
> script(s). That is, my PHP UI would make localized changes to queue (for
> scheduled changes) or directly via the "exec" (or similar) command (for
> real-time changes).

The ~mailman/bin/export.py script outputs full list information in XML
format.  PHP has XML parsing capabilities which can probably pull the
information you want from the output.  Alternatively, running
~mailman/bin/dumpdb on the config.pck file for the list will provide you
with much the same information, albeit parsing the information may be
somewhat more difficult.

This gives you read capabilities.  Write capabilities are another
matter.

> Essentially, we want to be in a position eventually to completely cripple
> the admin UI shipped with Mailman.

Might this also disallow the use of the Services_Mailman PEAR module?

> One of the problems that I face is, I'm not a Python developer, so if
> existing Mailman python scripts can manage the "read/write" functions in
> order to extract things and update things that'd be great.

Peter, given the complexity of parsing the necessary information from
the output of existing scripts, and the limited options with the
existing scripts for inputting per-subscriber information, OR the
complexity of interacting with the membership web-UI, any time you spend
learning basic python scripting might well be a more effective use of
your development efforts.  Python is perhaps the most syntactically
logical and easy to use of all the interpreted languages I've worked
with, which includes a good number of them, and scripting of list
membership management functions and I/O into a workable PHP-generated
web UI would be almost trivial given decent PHP and related web
development skills, once you have a basic understanding of the python
code required to read and write the atoms of information which make up
the subscriber database.  It's not really all that complex, and you
don't have to become a python expert to do it.  If you understand PHP
scripting and OO programming you're 2/3 of the way there.

I know that Mark is the go-to guy on all things having to do with
Mailman code, but as far as integrating system administrative functions
into a web UI, I've had a lot of experience on my own hosting service,
so I'm not exactly shooting in the dark here.  Been there, done that,
bought the T-shirt :)

> *** I'm already familiar with the "config_list" script which my "audit"
> script uses to maintain user/global config options we do not allow our
> users to maintain themselves. (that is, technically a user can override a
> setting we maintain currently, but within minutes the settings are reverted
> via our automated audit process. ***

config_list doesn't handle per_subscriber settings.

> On Mon, Jun 16, 2014 at 2:38 PM, Mark Sapiro <mark at msapiro.net> wrote:
> 
> > On 06/16/2014 02:01 PM, Peter Knowles wrote:
> > > Hi,
> > >
> > > I'm attempting to re-create the "Membership Management" using PHP. More
> > > specifically, I want to be able to view, and modify all column data
> > > associated with each subscriber in the same way the default Mailman UI
> > does
> > > (ex. Name, Email, MOD, Hide, Nomail, Ack, Not Metoo, NoDupes, Digest,
> > > Plain, Language)
> >
> >
> > Do you want to implement this capability with your own PHP pages or do
> > you want your PHP pages to GET the admin/listname/members page, parse it
> > and display the results in its own way, and POST changes back to the
> > Mailman web UI?
> >
> > I.e. do you want to work through the existing Mailman web UI or bypass it?
> >
> > If you want to work through the existing UI, see the FAQ at
> > <http://wiki.list.org/x/uIA9> which I'm sure will raise more questions.
> >
> > If you want to bypass it, you'll probably need to implement some helper
> > scripts (Python scripts using Mailman methods do do the work) to do the
> > actual data retrieval and updates, and invoke those from your PHP pages.
> >
> > --
> > Mark Sapiro <mark at msapiro.net>        The highway is for gamblers,
> > San Francisco Bay Area, California    better use your sense - B. Dylan
> > ------------------------------------------------------
> > Mailman-Users mailing list Mailman-Users at python.org
> > https://mail.python.org/mailman/listinfo/mailman-users
> > Mailman FAQ: http://wiki.list.org/x/AgA3
> > Security Policy: http://wiki.list.org/x/QIA9
> > Searchable Archives:
> > http://www.mail-archive.com/mailman-users%40python.org/
> > Unsubscribe:
> > https://mail.python.org/mailman/options/mailman-users/pknowles%40tpnsolutions.com
> >
> ------------------------------------------------------
> Mailman-Users mailing list Mailman-Users at python.org
> https://mail.python.org/mailman/listinfo/mailman-users
> Mailman FAQ: http://wiki.list.org/x/AgA3
> Security Policy: http://wiki.list.org/x/QIA9
> Searchable Archives: http://www.mail-archive.com/mailman-users%40python.org/
> Unsubscribe: https://mail.python.org/mailman/options/mailman-users/fmouse%40fmp.com

-- 
Lindsay Haisley       | "Everything works if you let it"
FMP Computer Services |
512-259-1190          |          --- The Roadie
http://www.fmp.com    |



More information about the Mailman-Users mailing list