Search

Sadly, not great. I'm a hacker, not a writer. So as a result, I'd be very grateful for a bit more help.

Sure, no problem!

What I think is going on here right now is that the event XML is not added to the template itself. There are a few ways of doing this, but the easiest would be to create the $etm-entry-id parameter yourself, then filter a datasource using it.

Adding the parameter could be done like this: $template->addParams(array("etm-entry-id"=>$entry_id));

You could then use the output of that datasource as your XML (for both the recipient and the content).

Does that help?

True, it's not that difficult though to replicate. EventPreSaveFilter, EventPostSaveFilter and EventFinalSaveFilter. You'd be surprised how much code in the event __doit function is actually delegate based :)

I know it's not difficult, but it still requires the extension developer (or me, for that matter) to make a change to the event to make it work. Since there are a lot of custom events out there that could use emailing, this is a tough job..

Hmm. Doesn't sound easy to a hacker like me.

@brendo, does that mean the event has to be part of an extension and work in the same way the Members extension does? Subscribe to the delegates. Add a method to process event filters. Use methods to test conditions for filtering.

I'm still trying to figure out where the filter gets triggered.

@creativedutchmen, thanks for that code snippet. I did try what you suggested, but the code fails at $template->parseProperties(). I try to run a print_r($template); exit; after this line and it silently fails without printing anything. It doesn't exit either. It just fails and displays the front end page.

@bauhouse: can you post your code somewhere?

With default events, delegates are triggered while processing the event (have a look at event.section.php), so custom events is no different. If you have removed the include to that file, you'll have to recreate the delegates, if you haven't removed the include, the delegates will fire as usual.

If you just want to fire a delegate for an email to send, you only need to replicate the EventFinalSaveFilter delegate, which is what Members does. You don't have to do the subscription, as it is actually the ETM that is subscribing to the delegate to send an email using a template.

Hi i´m getting a error after installing an trying to access my events:

ksort() expects parameter 1 to be array, null given

Any ideia of what it could be?

Well i got rid of the error, i guess i have to have at least one template created.

@duhpc: thanks for letting me know, putting it on my list!

Sorry, I haven't had a chance to revisit my issues to provide you with some code.

On another note, I ran up against an issue where I was parsing through about 40+ recipient XML data entries to build the list of recipients. But it seems that the text input might have truncated the input value, causing the filter to fail on an invalid email address when attempting to send the email messages.

Is there a limit to the number of recipients, whether it is the limit on the number of characters that can be posted with a text input, or a limit set within the Email Template Manager?

Is there a limit to the number of recipients, whether it is the limit on the number of characters that can be posted with a text input, or a limit set within the Email Template Manager?

Not that I know.. I will take a look at this after wednesday.

Please keep in mind this is not a mass mailer, though! Sending 40+ emails might get you into several other problems (timeouts, spam reportings, etc). Michael and I are developing the Email Newsletter Extension for this.

Thanks, Huib. I am getting around the issue by supplying an alias that is able to forward to the team.

I'm looking forward to the release of the Email Newsletter Extension. :-)

I have tested for a while now version 3.0, and it works very well with members beta extension.

And tutorial is yummy to follow.

Very nice work ;)

Thanks, Aliminium, that is good to hear!

Bauhouse, at this moment I am terribly busy (and so is Michael), so the Email Newsletter extension might take a bit longer than expected. Still, we are working on it!

Thanks, Huib. I'm sure it will be worth the wait :-)

Huib, a Big thank you for taking the time to write an actual example/tutorial on how the extension works. Unexperienced Symphony users like me love examples, not just explanations!

Thanks Ellie, really appreciated!

Can someone help me? I'm trying to use this extension with the Members extension to send out an "Activate Account" email.

In the recipients field within an email template how can I send an email to the member that just completed the registration form?

I'm trying this in there, but I'm getting an error that no email address is sent:

{/events/members-new/post-values/email}

The ETM only "knows" the ID of the member. So you will have to attach a Members datasource (to the email template) which is filtered by {$etm-entry-id}. This will output the member's data, so you can grab them in your "Recipients" field using XSLT:

{/data/member/entry/name} <{/data/member/entry/e-mail}>

[EDIT]: In the datasource the param should be required, just to ensure that emails are not sent to the wrong member... Alternatively you can use something like {$etm-entry-id:0}.

Awesome, got it working now. Thanks.

Hello - I followed the tutorial for this extension, and when I try to submit the form on the front end, I get the error: "Specification mandate value for attribute Response in Entity, line: 1"

Does anyone have any idea why that is? I'm sure I missed a step or didn't do something that others know to do instinctively.... Any help would be great!

{edit} Figured it out. It was erroring on an attribute called "response", and the only place I had "response" (single, not plural) was in the name of the event - Handle Response. As has already been said, when running Symphony 2.2, the name of the event cannot have spaces in it. I got rid of the space, and it no longer errors out.

From what I can find on google, that error has something to do with XML being invalid. However, with the information you gave me I can not tell you where the error is.

Can you post more information on when the error happened, and the exact error message (normally the error will also contain a file and line number)?

Create an account or sign in to comment.

Symphony • Open Source XSLT CMS

Server Requirements

  • PHP 5.3-5.6 or 7.0-7.3
  • PHP's LibXML module, with the XSLT extension enabled (--with-xsl)
  • MySQL 5.5 or above
  • An Apache or Litespeed webserver
  • Apache's mod_rewrite module or equivalent

Compatible Hosts

Sign in

Login details