Thread: [ezmlm-www] MySQL Integration
Brought to you by:
alexrj
From: Mike J. <lo...@gm...> - 2006-02-08 15:34:32
|
Mike from ACTD Again We still need heklp with the vpopmail iniegration but another thought here. Are are likely to code a php page to allow us to sort the lists by alpha numerics and post count and what not... Something tabled .. It's been requested. If you could port it to MySQL for us what can I say WOW COOL!! Please do. Basing this info off of.... On 16-11-2005 at 4:43, Glen Stewart wrote: >Since the flat file is unsafe, it seems that a database is the faster >and more scalable way to go. I don't think performance from building >the list dynamically from the filesystem would be adequate, unless >all the values were static, except the group name/path. One possibility is to dynamically load the group list from a database by doing something like this in your config.pm: use DBI; use DBD::mysql; my $dbh =3D DBI->connect(...); my $sth =3D $dbh->prepare("SELECT * FROM groups"); $sth->execute; while (my $group =3D $sth->fetchrow_hashref) { push @$lists, { name =3D> $group->{name}, ... }; } This is the main reason I chose to leave configuration in a Perl script and not to move it to a text file. Another more complicated but very efficient way would be to tie (see perltie) the @$lists array, so that you just query your database for information about the current request, without the need for loading the full group list into memory: package MyEzmlmConfig; use DBI; use DBD::mysql; sub TIEARRAY { my $class =3D shift; my $dbh =3D> DBI->connect(...); return bless { STH =3D> $dbh->prepare("SELECT * FROM groups WHERE id =3D ?") }, $class; } sub FETCH { my $self =3D shift; $self->{STH}->execute(shift); my $group =3D $self->{STH}->fetchrow_hashref; return { name =3D> $group->{name}, ... }; } and then, in config.pm: use MyEzmlmConfig; tie @$lists, 'MyEzmlmConfig'; You could also do something similiar by writing a custom module named 'vpopmail' providing a vgetdomaindir() function which maps list name to archive dir. There are other thought about scaling ezmlm-www, but I'll leave them for the future. Is all this of any interest? - alessandro ranellucci. =09=09=09 -- Mike Johnson Arcadia Station XO Network Operations Member http://www.acalltoduty.com/ http://www.goosite.net/ |
From: Alessandro R. <al...@pr...> - 2006-02-08 16:25:38
|
On 8-02-2006 at 16:27, Mike Johnson wrote: >Are are likely to code a php page to allow us to sort the lists by >alpha numerics and post count and what not... Something tabled .. >It's been requested. If you could port it to MySQL for us what can I >say WOW COOL!! Please do. Basing this info off of.... I actually don't understand your request. You can build your own MySQL table to handle mailing list data and then you can also take advantage of those code snippets to dynamically retrieve configuration for ezmlm-www instead of manually write everything to config.pm. - alessandro. |
From: Mike J. <me...@go...> - 2006-02-09 13:45:43
|
Okay, I think I know a much better way to ask this question. So, here goes. What in your thoughts would be the most effecant method of importing a tota= l list of archived mailing lists into a MySQl Database? Writting code wither it be in perl or or php, to read a MySQl Db, is no problem for me at all. I'm real good with MySQL. But I'm sstill learniong on shell scripts. WE HAVE a lot of lists .. I'd like to have a script updated twise a day tha= t wouldd scan the /home/vpopmail desocver all the archive active ezmlm mail lists in vpopmail, and either add them to my DB or update them as needed. Importing thier path to archive too. I'm not sure where to start. The reason for this is to automate, the web based ezmlm-www, archives. We also need a retricted data field .. 1 its retricted 2 its not ... Reason is we have some lists that atre in fact content rated and with the old ezmlm-www, we managed a second copy of the ezmlm-www, edited the config.pmby hand, then setup .htaccess password directory. An easy method of automating the web lists and still protecting them is wha= t we would like to accomplish. Now I have no doubt you are very busy, and you don't require me any alliegance here LOL. But if you might have a way to at least stear me in the correct direction, that is if you have the time. Thanks so nuch. On 2/8/06, Alessandro Ranellucci <al...@pr...> wrote: > > On 8-02-2006 at 16:27, Mike Johnson wrote: > > >Are are likely to code a php page to allow us to sort the lists by > >alpha numerics and post count and what not... Something tabled .. > >It's been requested. If you could port it to MySQL for us what can I > >say WOW COOL!! Please do. Basing this info off of.... > > I actually don't understand your request. You can build your own MySQL > table to handle mailing list data and then you can also take advantage > of those code snippets to dynamically retrieve configuration for > ezmlm-www instead of manually write everything to config.pm. > > - alessandro. > > > ------------------------------------------------------- > This SF.net email is sponsored by: Splunk Inc. Do you grep through log > files > for problems? Stop! Download the new AJAX search engine that makes > searching your log files as easy as surfing the web. DOWNLOAD SPLUNK! > http://sel.as-us.falkag.net/sel?cmdlnk&kid=103432&bid#0486&dat=121642 > _______________________________________________ > Ezmlm-www-discuss mailing list > Ezm...@li... > https://lists.sourceforge.net/lists/listinfo/ezmlm-www-discuss > -- Mike Johnson Arcadia Station XO Network Operations Member http://www.acalltoduty.com/ http://www.goosite.net/ |
From: Alessandro R. <al...@pr...> - 2006-02-09 18:59:13
|
On 9-02-2006 at 14:38, Mike Johnson wrote: >What in your thoughts would be the most effecant method of >importing a total list of archived mailing lists into a MySQl >Database? Writting code wither it be in perl or or php, to read a >MySQl Db, is no problem for me at all. I'm real good with MySQL. That's quite an easy task. You can do that using your favourite language: Perl, PHP, Ruby, Python. You could even do it in Bash. >The reason for this is to automate, the web based ezmlm-www, >archives. Every complex setup requires customization. ezmlm-www uses a Perl configuration file because you can write code in it to dynamically read things from a database or other backends. For example, I wrote custom code for an ISP that needed integration between ezmlm-www and their own control panel. This is free software: you either learn how to do things yourself or you hire a consultant. :) - alessandro ranellucci. |