Powermail 7.3 receiver attachment from hidden input field - typo3

i need a multiple file upload with drag&drop in a powermail form. I made it with jQuery that added the files to a hidden iput field. Does anyone know how i can attach these files to the receiver email. i tried with typoscript ..addAttachment and ...data = GP:tx_powermail... but it seems to work only with a static file.

I would first try to use the Powermail default https://docs.typo3.org/typo3cms/extensions/powermail/stable/ForEditors/AddANewForm/FieldFile/Index.html - then extend the frontend from there.

Related

Typo3 8.7: set/modify delete link in powermail (7.1.0)

I'm using the powermail 7.1.0 extension for Typo3. When a customer now sends a powermail form, I send him an Email back with a specific response. At the end of my answer email appears a link and a text, which says
"Was this email a mistake and you want to delete your request?
Delete all email data."
and a Link to delete all the email data.
Now I can't remember setting this text nor the link and I'm having trouble finding the place where I can modify the text. I checked the Mail to User Section in the Plugin Options but the text is not there.
My goal is to change the text to german.
Is this auto-generated by powermail?
Thanks in advance.
This is a new feature with powermail >= 7.0.0. You can deactivate it with plugin.tx_powermail.settings.setup.sender.addDisclaimerLink = 0. To change the text you could do it for example in this partial /Resources/Private/Partials/Mail/DisclaimerLink.html or in your own language-file.

Email ext plugin to send HTML Junit reports in mail

I have used this below code in default content to generate text Junit test reports.
${JELLY_SCRIPT,template="text"}
But now I wanted same in HTML format. I have changed content type to HTML and placed below code in default content -
${FILE,path="index.html"}
But I am getting html code in my email. Where did I miss ? Any Suggestions..
If you are seeing HTML code in you email, maybe you need to set the content type of the email to HTML(text/html).
You can change the Default Content Type to HTML(text/html) in the Jenkins System Configuration in the Extended E-mail Notification section.
Alternatively you can change the content type in the Job configuration.
If you are using Email ext plugin, then go to your workspace, there should be an 'emailable-report.html' generated. So set the correct path in default content like this:
${FILE,path="path/to/your/emailable-report.html"}
Instead of index.html , given path for those HTML files which are generated like all-tests.html. It worked fine. There may be a issue with frames.

Typo3 - powermail - no emails are sent and no confirmation page

I have the Typo3 powermail extension v2.0.6 and a form on this site: http://www.fg-energysolutions.de/kontakt.html
When sending the form, nothing happens at all. Neither Emails are sent to the receiver nor a confirmation to the sender. Also, no confirmation page is shown but it just loads the site with the form again.
I tried re-installing the powermail extension and re-created the form, but no effect. I also made sure that the PHP mail() function works. Thanks for any suggestions.
I'd check first, if the submitted fields are stored to the configured storage pid. If there aren't any entries in module powermail, something is wrong with storing to the database.
Did you install powermail via the extension mananger or programmatically in localconf.php?
If you did programmatically, maybe you forgot to make the database updates in extension manager which creates the needed tables.
If there are entries, there's a problem with sending mails.
Try to send a testmail with TYPO3s Install Tool, maybe php mail works fine, but TYPO3 isn't allowed to do so (permissions?).
Maybe the typoscript configuration disables sending to sender like this?
plugin.tx_powermail.settings.setup.sender.enable = 0 #change to 1 to enable!
Same for receiver.
I had the same issue. I created the contact form on an invisible copy of the actual contact page for testing purposes and the default "action" parameter was set to the URL of the original contact page, not the "index.php?id=xx" URL of the copy. Manually changing the "action" parameter to the URL of the correct (copy) page solved the problem for me.

How can I render a link on a Powermail confirmation/submit page?

I'm trying to place a link on the submit page of my powermail setup.
You'd think this is a simple task, but bear with me.
My Powermail form has 2 hidden fields which are prefilled with a page ID and a page title.
These belong to the page I later want to return to, after having sent the mail. By putting these values in the form, I hoped to have access to them whenever I need them in the process.
I prefill these hidden fields from TypoScript like so:
plugin.tx_powermail {
settings {
setup {
prefill {
// Hidden "back to" page ID. This is the page you may want to return to after sending a mail.
backto = TEXT
backto.data = GP:backTo
backto.if.isTrue.data = GP:backTo
backtotext = TEXT
backtotext.noTrimWrap = |Back to ||
backtotext.data = GP:title
backtotext.if.isTrue.data = GP:title
backtotext.htmlSpecialChars = 1
}
}
}
}
1. Approach
Given that Powermail claims you can now use Fluid ViewHelpers in your content sections, I though, great, let's use the PageViewHelper, like so:
{f:link.page(pageUid:'{backto}')}
But where does my link text go? More inline notation to the rescue!
{backtotext -> f:link.page(pageUid:'{backto}')}
Rendered Result
Seems like the inline notation is not fully supported. I thought I was smart by simply using:
{f:link.page(pageUid:'{backto}')}{backtotext}
But this leaves the <a> tag open, which has very undesirable effects...
So - No link for me!
2. Approach
So I thought I would simply construct the link in TypoScript and render it on the page via
{f:cObject(typoscriptObjectPath:'lib.myBackLink')}
But I can't see any way to access the variables from the (sent) Powermail form in TS. So I don't have access to the page ID or title.
3. Approach
So I thought, if the default PageViewHelper only wants to render its children as its content, maybe I can roll my own ViewHelper that accepts the content as a parameter!
But how would I make that ViewHelper known to the system so that I can use it in my customized Powermail templates?
I've only used Fluid inside of my extensions before. It was obvious how Fluid would look up the correct ViewHelper by name, by what if I want to use a ViewHelper in my fileadmin folder hierarchy?
4. Approach
So, why not just use a normal link by using {backtotext} in the RTE?
TYPO3 realizes, that that is an illegal reference, and quickly turns the link into:
And the resulting output will simply not be a link.
So, that doesn't work either.
OK, so I change the target to {backtotext} (removed a slash). Now the URL is no longer recognized as internal and is marked with data-htmlarea-external="1". This causes my link to actually be fully evaluated and rendered (yay).
But it is now treated like an external link, RealURL no longer affects it and it is subject to external link _target behavior.
Why is this so difficult? What am I not understanding?
In RTE you have to use <link ###pageid###> instead of <a href="...">.
Have a look into the RTE DB field contents (or hit the no RTE checkbox) on how to use the link elements.
As it turned out, none of the previously attempted solution actually worked.
To get things over with, I just replaced the web section in the PowermailAll template, like so:
Section for Web view
<f:section name="web">
</a>
</f:section>
And then I used the following in my Submit Page content:
{f:link.page(pageUid:'{backto}')}{backtotext}{powermail_all}
Problem solved. I guess...

Multiple Contact Forms on Magento

I'm looking to create a new contact form for enquiries on Magento. Creating a module from scratch for this seems like a bit of a waste of time. Does anyone know the most sensible and quickest way for this to happen?
Thanks!
In CMS>Manage Pages create and enable a new page (or you could use a static block) e.g. call the page My Contact Form with a url ID of my-contact-form and a layout that matches your theme. For the content of the new page add
{{block type='core/template' template='contacts/mycontactform.phtml'}}
Now in your template folder (app/design/frontend/default/default/template/contacts for default theme in Magento 1.3.x) copy the existing form.phtml file, rename it to mycontactform.phtml and copy it back to the contacts folder. Edit the new mycontactform.phtml code and html as you wish to create your new contact form.
Load the new form by going to http://www.example.com/my-contact-form
Hope that helps...
In adendum to paj answer: You also have to edit the email template to include whatever new fields you just added.
Keep in mind that both your new contact form and Magento original contact form (an whatever future contact forms you may add in the future with in this way) will all use the same email template.
So in order to have meaningful emails sent, you need to "program" the template using the {{depend}} directive