This is an effort to integrate issues #26422, #26597 and #26492 into one battle plan. I'll set these 3 issues to "duplicate", so please post any further comments in this issue.

After a lot of considerations, I think the best solution is, as Boris suggests, to provide a separate, configurable block for each newsletter. This block can show 1) a link to the term's overview page and/or 2) a link to the associated rss-feed and/or 3) the latest x issues of that newsletter.

Furthermore, instead of managing subscription to the different newsletters through the blocks, I would suggest that each block just displays a link "manage subscriptions", which leads to a central spot for managing your current subscriptions (when logged in), or for (un)subscription to various newsletters as an anonymous user. I think that if each block would show a separate subscription form, the blocks would take a lot of space and would look rather ugly. On the other hand, if there is a real need for subscription through blocks, I could make this a configurable feature.

The subscription lists to the different terms will be managable by an admin. This means that an admin can add (import), export and delete email addresses to/from the different lists. As is already implemented, an admin will also be able to inactivate an email address (global, i.e. for all newsletters) without deleting the address from the database. I think this would meet Nathan's needs.

Finally, an API will be provided to generate the subscription form, and the blocks' content. This will enable the use of custom subscription pages, information pages, blocks,... as was discussed in this issue.

Since I'll try to do a lot of this coding during my holidays, and since I'm leaving for 2 weeks to a place without access to the internet (will I survive?) this Friday (22/07), please submit any comments or thoughts before then.

Comments

boris mann’s picture

Great to see all the hard work and thought you are putting into this.

I believe that each block *should* actually show the subscription...remember, we are not going to likely be showing multiple blocks in one area -- that is what the overview subscription pages are for. The goal with multiple blocks is that, using block display rules, different newsletter blocks can be shown on different pages -- e.g. the doc list next to the documentation, the developer list on the CVS account page, the newsletter on the front page, and so on.

dries’s picture

The proposed changes look OK to me.

michelle’s picture

I just wanted to add my voice to requesting the ability to subscribe to each newsletter seperately. I set the module up on my site and added three newsletters and then couldn't figure out how to subscribe to just one of them. Searching brought me here. :) I think adding this feature would really make this module rock!

Thanks for writing it,

Michelle

moebis’s picture

Any news yet on the multiple subscribes using taxonomy/categories?

So far this is a great module, good work!

DriesK’s picture

I've been busy doing some other (unexpected) things as well lately, so there is a small delay in my planning. Just a few more days of patience... It'll be worth the waiting, I promise :)

moebis’s picture

Cool, I can hardly wait. I think your module is one of the main features missing from Drupal... apart from some other multimedia features that will eventually find their way to the core.

DriesK’s picture

Status: Active » Fixed
osherl’s picture

ica’s picture

Category: feature » bug

I have setup a newsletter called 'newsletter1'
than changed the name to 'newsletter2'

And I get on
dp/newsletter/newsletter2
Parse error: parse error, unexpected '(', expecting T_STRING in /home/public_html/dp/includes/common.inc(1857) : eval()'d code on line 3

any idea why is this -unexpected '(' occurs?

~thanks

Anonymous’s picture

DriesK’s picture

Status: Fixed » Closed (fixed)

Closed because the automatic close feature in project module is broken, and the issue list is becoming cluttered.

@ica: seems to me that you edited some code somewhere. If the problem persists, post a new issue for your problem and provide more information.