Re: [Radiant] How can I use Mailer form on every page?

2009-05-27 Thread Mohit Sindhwani

N. Turnage wrote:

Hey guys,

I have built a contact form with Mailer and I would like to use it in 
my template so that it is at the bottom of every page. It is working 
on the contact page itself, but on any other page I get the Mailer 
config is not valid error. The ReadMe for Mailer says that you can 
use it in a snippet, but doesn't mention the syntax to do that. Right 
now I have this set up in a snippet that is at the bottom of my template:


div id=contact
r:find url=/contact/
r:content /
/r:find
/div
not sure how the extension works, but can't you use it in a snippet and 
then use the snippet from the layout?


I just looked at its readme and it says:
You configure the recipients and other Mailer settings in a mailer part

Just a suggestion:
1. You may be able to use:

 from_field: my_form_field_that_contains_the_from_email_address
with a snippet that has the mailer form.

2. It seems that you mailer may be failing because you don't have a mailer 
part.  It may be that with your current code, you also need the mailer part on 
your pages.

Good luck.

On a side note, I noticed this:


Caveats

Relative urls will almost certainly not work if the mailer fails validation. 
Solution? Only use absolute urls.


I wonder if my suggestion for comments might work with this also.  I'll post 
that separately in a bit.

Cheers,
Mohit.
5/27/2009 | 10:18 PM.



___
Radiant mailing list
Post:   Radiant@radiantcms.org
Search: http://radiantcms.org/mailing-list/search/
Site:   http://lists.radiantcms.org/mailman/listinfo/radiant


Re: [Radiant] How can I use Mailer form on every page?

2009-05-27 Thread N. Turnage

Mohit Sindhwani wrote:

N. Turnage wrote:

Hey guys,

I have built a contact form with Mailer and I would like to use it in 
my template so that it is at the bottom of every page. It is working 
on the contact page itself, but on any other page I get the Mailer 
config is not valid error. The ReadMe for Mailer says that you can 
use it in a snippet, but doesn't mention the syntax to do that. Right 
now I have this set up in a snippet that is at the bottom of my 
template:


div id=contact
r:find url=/contact/
r:content /
/r:find
/div
not sure how the extension works, but can't you use it in a snippet 
and then use the snippet from the layout?



I though so, and I'm curious how to make that happen.


I just looked at its readme and it says:
You configure the recipients and other Mailer settings in a mailer part
The form and it's config are set up properly. On the /contact page 
everything works perfectly. But on other pages it doesn't.


Just a suggestion:
1. You may be able to use:

 from_field: my_form_field_that_contains_the_from_email_address
with a snippet that has the mailer form.
This won't help. This is just to set the From field to the address of 
the user submitting the form.


2. It seems that you mailer may be failing because you don't have a 
mailer part.  It may be that with your current code, you also need the 
mailer part on your pages.

Yeah, it's set up properly. This isn't the issue...

Wait a minute, does this mean that even if the form is in a snippet, 
each page (every page for me) needs a mailer and an email part to allow 
for processing the form? If so, is there a way of creating a  page 
part in my template so that I don't have to add mailer and email parts 
to every page? So I can do something like this:


r:part:new name=mailer
   r:find url=/contact
  r:content part=mailer /
   /r:find
/r:part:new


Good luck.

On a side note, I noticed this:


Caveats

Relative urls will almost certainly not work if the mailer fails 
validation. Solution? Only use absolute urls.

How would that affect me here?



~Nate
___
Radiant mailing list
Post:   Radiant@radiantcms.org
Search: http://radiantcms.org/mailing-list/search/
Site:   http://lists.radiantcms.org/mailman/listinfo/radiant


Re: [Radiant] How can I use Mailer form on every page?

2009-05-27 Thread Mohit Sindhwani

N. Turnage wrote:

I just looked at its readme and it says:
You configure the recipients and other Mailer settings in a mailer 
part
The form and it's config are set up properly. On the /contact page 
everything works perfectly. But on other pages it doesn't.


I'm guessing that's because you have a mailer part on the contact page.



Just a suggestion:
1. You may be able to use:

 from_field: my_form_field_that_contains_the_from_email_address
with a snippet that has the mailer form.
This won't help. This is just to set the From field to the address 
of the user submitting the form.


Hmm, I see.. I think I misread that part of the document.

2. It seems that you mailer may be failing because you don't have a 
mailer part.  It may be that with your current code, you also need 
the mailer part on your pages.

Yeah, it's set up properly. This isn't the issue...

Wait a minute, does this mean that even if the form is in a snippet, 
each page (every page for me) needs a mailer and an email part to 
allow for processing the form? If so, is there a way of creating a  
page part in my template so that I don't have to add mailer and email 
parts to every page? So I can do something like this:


r:part:new name=mailer
   r:find url=/contact
  r:content part=mailer /
   /r:find
/r:part:new


I don't think you can create page parts in a template.  You may have to 
create that on each page, but once you create that you could do 
something like:

r:snippet name=mailer_config / in that part on every page.

You could go one step further and set the mailer part to be a default 
created part on each page.



Caveats

Relative urls will almost certainly not work if the mailer fails 
validation. Solution? Only use absolute urls.

How would that affect me here?


Sorry, it won't affect you.  I meant that I have a solution that might 
fit this problem.  That's why I shall send it out separately with a 
subject of its own, in case it helps someone else.


Hope this helps.

Cheers,
Mohit.
5/27/2009 | 11:52 PM.

___
Radiant mailing list
Post:   Radiant@radiantcms.org
Search: http://radiantcms.org/mailing-list/search/
Site:   http://lists.radiantcms.org/mailman/listinfo/radiant


Re: [Radiant] How can I use Mailer form on every page?

2009-05-27 Thread Mohit Sindhwani

Nate,

I looked at the code of the mailer extension and found this:
 def config
   @config ||= begin
 page = self
 until page.part(:mailer) or (not page.parent)
   page = page.parent
 end
 string = page.render_part(:mailer)
 (string.empty? ? {} : YAML::load(string))
   end
 end

It tends to suggest that if the parent has a mailer part, it should be 
fine.  Can you try to create a mailer part in the top page and try?


Cheers,
Mohit.
5/28/2009 | 12:02 AM.


Mohit Sindhwani wrote:

N. Turnage wrote:

I just looked at its readme and it says:
You configure the recipients and other Mailer settings in a mailer 
part
The form and it's config are set up properly. On the /contact page 
everything works perfectly. But on other pages it doesn't.


I'm guessing that's because you have a mailer part on the contact page.



Just a suggestion:
1. You may be able to use:

 from_field: my_form_field_that_contains_the_from_email_address
with a snippet that has the mailer form.
This won't help. This is just to set the From field to the address 
of the user submitting the form.


Hmm, I see.. I think I misread that part of the document.

2. It seems that you mailer may be failing because you don't have a 
mailer part.  It may be that with your current code, you also need 
the mailer part on your pages.

Yeah, it's set up properly. This isn't the issue...

Wait a minute, does this mean that even if the form is in a snippet, 
each page (every page for me) needs a mailer and an email part to 
allow for processing the form? If so, is there a way of creating a  
page part in my template so that I don't have to add mailer and email 
parts to every page? So I can do something like this:


r:part:new name=mailer
   r:find url=/contact
  r:content part=mailer /
   /r:find
/r:part:new


I don't think you can create page parts in a template.  You may have 
to create that on each page, but once you create that you could do 
something like:

r:snippet name=mailer_config / in that part on every page.

You could go one step further and set the mailer part to be a default 
created part on each page.



Caveats

Relative urls will almost certainly not work if the mailer fails 
validation. Solution? Only use absolute urls.

How would that affect me here?


Sorry, it won't affect you.  I meant that I have a solution that might 
fit this problem.  That's why I shall send it out separately with a 
subject of its own, in case it helps someone else.


Hope this helps.

Cheers,
Mohit.
5/27/2009 | 11:52 PM.

___
Radiant mailing list
Post:   Radiant@radiantcms.org
Search: http://radiantcms.org/mailing-list/search/
Site:   http://lists.radiantcms.org/mailman/listinfo/radiant




___
Radiant mailing list
Post:   Radiant@radiantcms.org
Search: http://radiantcms.org/mailing-list/search/
Site:   http://lists.radiantcms.org/mailman/listinfo/radiant


Re: [Radiant] How can I use Mailer form on every page?

2009-05-27 Thread Cristi Duma
I did this on a site some time ago. It was an older version of radiant 
and mailer extension but it should work for you.


I created a snippet which I used then on every page. The trick is to 
post the contact form to a page that has mailer part. Like this


form class=mailer-form method=post action=/newsletter/
div
input type=hidden value=newsletter name=mailer_name/
/div
label for=emailEmail:/label
input type=text name=mailer[email] class=required validate-email 
id=email /

input type=submit value=Trimitere/
/form

The newsletter page has the mailer part and it works just fine.

Contact me if id doesn't work, we'll find a solution :)

Cristi

PS: or did it work allready? I'm too tired right now to read all the posts..

On 5/27/09 3:20 PM, N. Turnage wrote:

Hey guys,

I have built a contact form with Mailer and I would like to use it in 
my template so that it is at the bottom of every page. It is working 
on the contact page itself, but on any other page I get the Mailer 
config is not valid error. The ReadMe for Mailer says that you can 
use it in a snippet, but doesn't mention the syntax to do that. Right 
now I have this set up in a snippet that is at the bottom of my template:


div id=contact
r:find url=/contact/
r:content /
/r:find
/div

The form is defined in the body of the /contact page (obviously). How 
can I use this in my template on pages other than /contact? Thanks.




~Nate
___
Radiant mailing list
Post:   Radiant@radiantcms.org
Search: http://radiantcms.org/mailing-list/search/
Site:   http://lists.radiantcms.org/mailman/listinfo/radiant


___
Radiant mailing list
Post:   Radiant@radiantcms.org
Search: http://radiantcms.org/mailing-list/search/
Site:   http://lists.radiantcms.org/mailman/listinfo/radiant


Re: [Radiant] How can I use Mailer form on every page?

2009-05-27 Thread N. Turnage

Cristi Duma wrote:
I did this on a site some time ago. It was an older version of radiant 
and mailer extension but it should work for you.


I created a snippet which I used then on every page. The trick is to 
post the contact form to a page that has mailer part. Like this


form class=mailer-form method=post action=/newsletter/
div
input type=hidden value=newsletter name=mailer_name/
/div
label for=emailEmail:/label
input type=text name=mailer[email] class=required 
validate-email id=email /

input type=submit value=Trimitere/
/form

The newsletter page has the mailer part and it works just fine.

Contact me if id doesn't work, we'll find a solution :)

Cristi

PS: or did it work allready? I'm too tired right now to read all the 
posts..


That looks like it's going to work. I am trying this on a side project, 
so I can't play with it until this evening though. I'll let ya know.



~Nate
___
Radiant mailing list
Post:   Radiant@radiantcms.org
Search: http://radiantcms.org/mailing-list/search/
Site:   http://lists.radiantcms.org/mailman/listinfo/radiant


Re: [Radiant] How can I use Mailer form on every page?

2009-05-27 Thread Cristi Duma

On 5/27/09 8:44 PM, N. Turnage wrote:

Cristi Duma wrote:
I did this on a site some time ago. It was an older version of 
radiant and mailer extension but it should work for you.


I created a snippet which I used then on every page. The trick is to 
post the contact form to a page that has mailer part. Like this


form class=mailer-form method=post action=/newsletter/
div
input type=hidden value=newsletter name=mailer_name/
/div
label for=emailEmail:/label
input type=text name=mailer[email] class=required 
validate-email id=email /

input type=submit value=Trimitere/
/form

The newsletter page has the mailer part and it works just fine.

Contact me if id doesn't work, we'll find a solution :)

Cristi

PS: or did it work allready? I'm too tired right now to read all the 
posts..


That looks like it's going to work. I am trying this on a side 
project, so I can't play with it until this evening though. I'll let 
ya know.



~Nate


i think for radiant 0.7 a few things changed and you will need to post 
to page like this


form id=mailer class=mailer-form method=post 
action=/pages/232/mail#mailer


basically what you need to do is copy the form from that contact page's 
source code into the snippet

___
Radiant mailing list
Post:   Radiant@radiantcms.org
Search: http://radiantcms.org/mailing-list/search/
Site:   http://lists.radiantcms.org/mailman/listinfo/radiant