|
Contents
- Contents
- Description/Features
- Developer Rippable Features
- Developer Instructions
- Screenshots
- Screenshots
- Usage
- {mail-form}
- {mail-input}
- {mail-label}
- {mail-select}
- {mail-option}
- {mail-textarea}
- {mail-submit}
- {mail-success}
- Examples
- Documentation
- Frequently Asked Questions
- Version History
- Outstanding Issues
Description/Features
A completely re-engineered version of the Form Mail Plugin. Hold no preconceptions; this is one small step for plugins, one giant leap for Confluence mailing.
For a quite sometime now I've wanted to overhaul the existing Form Mail plugin as it wasn't flexible enough and, in some cases, simply didn't work. So what better time to write another than when you're wife is in very slow labor (kid ain't out yet and is already demanding) and you can't get on with any real work.
So here is the feature hit list:
- Admin console
There is now an Administration console action where you can define multiple sets of configuration settings. This has the advantage of the end user having no way to gain your email address or even your username. You can also keep your public key out of sight if you like, and the success HTML that is shown – CODEGEIST:more details ...
- Improved Security
In addition to the implicit security issues that the Admin console above adds, the complete overhaul of the code base has resolved a few potential exploitable flaws (although the cases where they could be exploited are admittedly rare).
- Flexible Configuration
You can either define the configuration in the new Admin console action, or you can specify all the settings in the macros in the markup, or you can base your settings off a configuration and override certain fields in the markup; it's up to you!
- Macro-Orientated Design
You now define a wrapping form, and lay out the form elements intermingled with standard wiki notation in a manner familiar to those who use the Scaffolding Plugin or the Advanced Search Plugin. This allows you to be far more creative in how you layout your fields, and gives you much more control of their configuration – CODEGEIST:more details ...
- Special Field Names
With the new dynamically defined layout, comes a new way of passing through data for the special fields, such as from email address and subject. These all have defaults and none are required to be entered. All you have to do is name your field as "from", "from-name" or "subject" and it will get through. Special fields do not make it into the body, and in the case of multiple fields with the same special name, the last one wins out.
- Validation
You can now specify a validator for each field as well as required flag to make sure that the field contains at least something – CODEGEIST:more details ...
- Velocity Values
On most of the macros which take a value, you can now render it using Velocity in the vtlValue parameter (or using the render=velocity param on the {mail-textarea} macro). This allows you access to the standard context that Confluence provides, as well as adding a some extra variables, so that you can display sensible defaults for things like the user email address or pass the user's name as a hidden field – CODEGEIST:more details ...
- PGP Encrypted Emails
Ever wanted to take credit card information or other sensitive details on your Confluence site, and have them securely transmitted back to their destination? Now you can, using OpenPGP's PKI infrastucture – CODEGEIST:more details ...
- Data Handlers
Ever wanted to take the form data, and put it in a pseudo database instead of having it emailed to you? Now you can, using the Bandana Collector (it even supports data types for future expansion!) – CODEGEIST:more details ...
- Multiple Forms
The original Form Mail plugin could only be used once on a page due to it's design, this limitation is no longer applicable as Form Mail NG has been written extensible from the ground up. It is no longer considered a throw away, quick-fire code base.
Developer Rippable Features
All developers rip other developers code as a quick way to learn new APIs and improve their own code. Here are some of the implementations you might find useful that I believe are unique to this plugin (to the best of my knowledge):
- Usage of ExtJS for the dialogs in the Admin console action.
- Serialisation of Java Object to JSON using XStream.
The Admin console action uses a "direct load, AJAX command" system, which loads the Java Objects directly from the action's HTML output as it's injected as JSON. The table is dynamically created, and changes (add/update/delete) are then serialized back using DWR.
There is also an example of using Confluence's cluster-safe cacheManager to store TempFormMail objects (hardly rocket science, but hey – I didn't know it was cluster-safe!).
Developer Instructions
Build
You will need Maven 2 installed:
- Subversion checkout http://svn.atlassian.com/svn/public/contrib/confluence/form-mail-ng/trunk/
- Enter the "lib" directory
- Run install.bat / install.sh to add the libraries to your local repository
- Run mvn package to create your Confluence plugin in the "target" directory
Edit
If you run mvn idea:idea instead you'll get an IDEA project you can use to edit with.
Screenshots
Usage
See the Examples if you want a quick start in to getting something up and running. This section serves as the macro usage documentation.
{mail-form}
This is the encompassing form within which all the other macros must be placed. The other macros will have undocumented behaviour in cases where they are placed outside of a {mail-form} macro. The form can either be linked to a configuration by id, have it's settings provided in parameters and encapsulated macros, or indeed both where the settings override that of the configuration.
| Parameter | Description | Type | Default | Required |
|---|---|---|---|---|
| id | The Form Mail configuration ID | string | none | |
| collector | The collector to use | string (email / bandana) | |
|
| destination | The destination to use, either the email address or bandana store, depending on collector used | string | none | |
{mail-input}
This provides an input field synonymous to a HTML input field and has no body.
| Parameter | Description | Value | Default | Required |
|---|---|---|---|---|
| name | Name of Field (also used as HTML node name) | string | none | |
| id | HTML ID of Field (unused by FormMailNG) | string | none | |
| cssClass | HTML CSS Class value | string | none | |
| cssStyle | HTML CSS Style value | string | none | |
| dataType | reserved for future use | string (String/int/long/boolean/Boolean/Date) | String | |
| validation | Validation mode, see Validation | string | none | |
| required | Is this field require a value? | boolean | false | |
| disabled | Is this field disabled from user interaction? | boolean | false | |
| type | Type of Field | string (text / checkbox / radio / hidden) | none | |
| value | Initial value of the Field | string | none | |
| vtlValue | Velocity value (overrides the above), see Available Velocity Context | velocity template string | none | |
| checked | Inital State (only valid for type=checkbox/radio) | boolean | false | |
{mail-label}
This provides a label element synonymous to a HTML label element, its body is wiki rendered and is used as the label element's contents.
| Parameter | Description | Value | Default | Required |
|---|---|---|---|---|
| for | Field ID this label is for | string | empty | |
{mail-select}
This provides a select field (drop-down list) synonymous to a HTML select field, with options defined in it's body by the {mail-option} macro.
| Parameter | Description | Value | Default | Required |
|---|---|---|---|---|
| name | Name of Field (also used as HTML node name) | string | none | |
| id | HTML ID of Field (unused by FormMailNG) | string | none | |
| cssClass | HTML CSS Class value | string | none | |
| cssStyle | HTML CSS Style value | string | none | |
| dataType | reserved for future use | string (String/int/long/boolean/Boolean/Date) | String | |
| validation | Validation mode, see Validation | string | none | |
| required | Is this field require a value? | boolean | false | |
| disabled | Is this field disabled from user interaction? | boolean | false | |
| nullLabel | The label for the empty option at the head of the select list | string | none | |
{mail-option}
This provides an option field synonymous to a HTML option field, its body is wiki rendered and is the outputted label for the option.
| Parameter | Description | Value | Default | Required |
|---|---|---|---|---|
| value | Value of the Field | string | empty | |
| selected | Is this Option Selected | boolean | false | |
{mail-textarea}
This provides an textarea field synonymous to a HTML textarea field, with the unrendered body being it's value.
| Parameter | Description | Value | Default | Required |
|---|---|---|---|---|
| name | Name of Field (also used as HTML node name) | string | none | |
| id | HTML ID of Field (unused by FormMailNG) | string | none | |
| cssClass | HTML CSS Class value | string | none | |
| cssStyle | HTML CSS Style value | string | none | |
| dataType | reserved for future use | string (String/int/long/boolean/Boolean/Date) | String | |
| validation | Validation mode, see Validation | string | none | |
| required | Is this field require a value? | boolean | false | |
| disabled | Is this field disabled from user interaction? | boolean | false | |
{mail-submit}
This provides an submit button synonymous to a HTML submit button. While there is no requirement for a button to exist, there wouldn't be any other way for the user to submit the form.
| Parameter | Description | Value | Default | Required |
|---|---|---|---|---|
| default | Label for the Button | string | Submit | |
{mail-success}
This macro sets or overrides what is on successful submission. The body is rendered according to the render parameter, if there is no renderer specified then it is outputted as raw HTML.
| Parameter | Description | Value | Default | Required |
|---|---|---|---|---|
| render | method to use for rendering | string (wiki/velocity) | none | |
Examples
Here are 3 examples, which should get you whet your appetites for what is possible. Now that you can fit it into any design it is really only limited by your imagination.
The simplest valid usage would be:
{mail-form:destination=email@example.com} {mail-submit} {mail-form}
This is rather useless and I doubt there is any practical use for this. Technically you don't even need the submit macro, although without that the form would be utterly useless. Have a look through some of the example for starting points for a real world use of this plugin.
Basic Example

This is about as basic as it comes, it's just a message box with a submit button! The subject and the from details will be left to Confluence to decide.
h2. Send us a Message
{mail-form:destination=email@example.com}
*Message*
{mail-textarea:name=message|cssStyle=width: 500px; height: 100px}{mail-textarea}
{mail-submit}
{mail-form}
Once sent the default success HTML will be spat out, which is really just a thank you message.
Call Back Example
"OK – this looks a bit more practical."

You want to offer the user a form where they can ask your sales team for a callback. This time you don't want to show the email address in the wiki markup (as it's visible by anyone who can view the rendered page after all). Instead you want to use the email address of a confluence username, specifically salesUsername.
You also want to set the subject, ensure you get a phone number and default their name to the logged in user's full name (anonymous users should see the field empty). The form should contain a select box with 5 options ranging from "now" to "1 hour", with the latter being the default.
The submit button's text should read "Call me!", and on success it should display a "Callback Accepted" Confluence {tip} message box telling them that their request has been accepted and to expect the call.
{mail-form:destination=~salesUsername}
{mail-input:type=hidden|name=subject|value=Call Request}
{info:title=Call Request}
Your Phone Number
{mail-input:type=text|name=phoneNum|cssStyle=width: 200px|required=true}
Your Name
{mail-input:type=text|name=fullName|cssStyle=width: 200px|vtlValue=$!user.fullName}
Time
{mail-select:name=eta}
{mail-option:value=0|selected=true}Now!{mail-option}
{mail-option:value=5|selected=true}5 minutes{mail-option}
{mail-option:value=15|selected=true}5 minutes{mail-option}
{mail-option:value=30|selected=true}30 minutes{mail-option}
{mail-option:value=60|selected=true}1 hour{mail-option}
{mail-select}
{mail-submit:Call me!}
{info}
{mail-success:render=wiki}
{tip:title=Callback Accepted}Thank you for requesting a callback, please expect our call.{tip}
{mail-success}
{mail-form}
... and the plugin isn't breaking a sweat!
Credit Card Example
"Jeez! You're not suggesting I get customers to email me their credit card details?"
Why not? This plugin supports OpenPGP cryptography (CODEGEIST:as described here), and for this we'll be setting things up a little different. This time, we'll be setting up a FormMail configuration.
Note: You will need Confluence and your mail reader to be set up for PGP encryption, see the above link for more details.
Step 1: Create the Configuration
- Go through to the Administration console
- Select Form Mails
- Select Create Form Mail
- Set ID: orders
- Set Encryption Public Key: your public key
- Set Email: your email address
- Save by clicking OK
-----BEGIN PGP PUBLIC KEY BLOCK----- Version: GnuPG v1.4.7 (MingW32) VB4KDqdTck8Wq9SgwgDroqI+OMXRH8K0Cts2++OK7YL9Jp4U5LQnRGFuIEhhcmRp mQGiBEYl1+URBACV3EkbOtkyhYEj9O1j2Uk08D/0KW1aWE/Qp48qmSu/GLq1rm8a ct4pKxiAsQX3tzKYTBFn67osBuIPutmHKMfzoof/hsR4f+TFjyJSOrRi9T4x4+AK RiXX5QIbDAUJA8JnAAAKCRDe5SG+6dd2ZjjCAJ9BBY47A0P8sk521ZUaE0JKrHlK 4DzMNr9Di9wCRxfUwJ4QWYEpJumsjl6ODMTrVXIIsBuIPu5yYj+HF0skp+BiNoCK sBuIPu5yYj+HF0skpSaRykrdzkAiPtdXnnw+bF+QmWtwbCP4QfNhyIXEfzAm+Rwr wxJmMsCY68cMEUCgd7/bZSvCKz9evRApjpsIavC5IZGjoCcABhTJeHX4jUa2qSAW VB4KDqdTck8Wq9SgwgDroqI+OMXRH8K0Cts2++OK7YL9Jp4U5LQnRGFuIEhhcmRp a2VyIDxkaGFyZGlrZXJAYWRhcHRhdmlzdC5jb20+iGYEExECACYFAkYl1+UCGwMF 9r8pamwaL8vvq1OFArbckF/6+acZF8yGEyIal8tB20oKDv2rGpblJnD2azPPoyEW kwM3XrM7LvY2bryDuAt+3hmF5JHxQc5HmGCvVpCK2WoH1mj/bd52fDUu7u8Z8jRj CQPCZwAGCwBx8B++dnXiZdf0iziZmMPuyb89fSWqGWFO+BiNoCKbDAUJA8JnAAAB 9r8pamwaL8vvq1OFArbckF/6+acZF8yGEyIal8tB20oKDv2rGpblJnD2azPPoyEW sIavC5IZGjoCcABhTJeHX4jUa2qSAWwxJmMsCY68cMEUCgd7/bZSvCKz9evRApjp tvbVGd+7JMg2xh7CGG6aZ1Br3UAn/cFchfkhh51F/yyCgP0DbR6ITwQYEQIADwUC agCcCRTioz3r59J5faQlTLE/MwBZgbU= =IlyQ -----END PGP PUBLIC KEY BLOCK-----
Step 2: Add the Wiki Notation
- Link the {mail-form} to the orders configuration by id.
- Add a hidden subject field, which will include the user's full name if logged in.
- Add a hidden confUser field containing the username if logged in.
- Add a hidden URL field containing the URL including query string if present.
- Add a required product select field, which has 2 options, and neither is selected initially with a message instead reading "--- Select a Product --".
- Add a required contactName text field, defaulting to the user's full name if logged in.
- Add a required contactEmail text field, defaulting to the user's email address if logged in, and is validated to be an email address.
- Add a required contactAddress text area.
- Add a required creditCard text field validated to be entirely numeric.
- All fields should appear in a standard confluence table, with CSS width settings set appropriately.
{mail-form:id=orders}
{mail-input:type=hidden|name=subject|vtlValue=Order#if($user) for $!user.fullName#end}
{mail-input:type=hidden|name=confUser|vtlValue=$!user.name}
{mail-input:type=hidden|name=URL|vtlValue=$req.requestURL#if($req.queryString)?$req.queryString#end}
|| Product | {mail-select:name=product|nullValue=--- Select a Product ---|required=true}
{mail-option:value=prodA}Option A{mail-option}
{mail-option:value=prodB}Option B{mail-option}
{mail-select} |
|| Contact Name | {mail-input:type=text|name=contactName|cssStyle=width: 170px|vtlValue=$!user.fullName|required=true} |
|| Contact Email | {mail-input:type=text|name=contactEmail|cssStyle=width: 100%|validation=email|vtlValue=$!user.email|required=true} |
|| Contact Address | {mail-textarea:name=contactAddress|cssStyle=width: 300px; height: 120px|required=true}{mail-textarea} |
|| Credit Card Number | {mail-input:type=text|name=creditCard|cssStyle=width: 100%|validation=num|required=true} |
{mail-submit:Purchase}
{mail-success:render=wiki}
{tip:title=Order Accepted}Thank you -- we will be in touch once we have processed your order.{tip}
{mail-success}
{mail-form}
Step 3: Sit back and Wait
Neat huh!
Documentation
If you are looking for more in depth documentation about the concepts and APIs that power this plugin, then here is the documentation which should set you off in the right direction.
Validation
| JavaScript Only The validation is all performed client side as if someone wants to hack their way around the interface and hook onto the API to circumvent validation they will. It's just not worth it, so if you have any automatic processing picking up the form data, then you will need to make sure you implement your own validation. You should be doing that anyway as you can never trust the input ... right? |
Most of the macros support validation, the most basic of which is the required=true parameter. This isn't technically a validator, it's just a flag to tell the validation subsystem that the field is only valid if there is a value (any value) in there. If this flag fails, then the validation for that field halts until there is a value.
The validation parameter for the {form-input}, {form-select} and {form-textarea} macros take the following values:
| Validator | Requirement | Invalid Message |
|---|---|---|
| alpha | a-z / A-Z | This field can only contain letters. |
| num | 0-9 | This field can only contain numbers. |
| alphanum | a-z / A-Z / 0-9 | This field can only contain letters and numbers. |
| Email Address | Invalid Email Address. |
If validation fails, the invalid CSS class is added to the offending field and, if attempting to submit, then a message box listing the errors and their corresponding field names is shown.
Please add issues for any validators that you need – if you can include JS code then that's even better.
Available Velocity Context
When rendering a VTL value (via the vtlValue parameter or when using render=velocity) you will want to know what context variables are available:
| Variable | Injected By | Value |
|---|---|---|
| $user | Form Mail NG | AuthenticatedUserThreadLocal.getUser() |
| $ceo | Form Mail NG | ((PageContext) renderContext).getEntity() |
| $req | Confluence | HTTPServletRequest |
There may be more, as the context is initialised with MacroUtils.getDefaultVelocityContext(), so please see the Confluence documentation for more information.
Data Handlers
These are called Collector Types in the code, and refer to the process that is applied when data is submitted.
Email Relay
This is what Form Mail is all about, and is the only collector which supports encryption at the moment. This will take the submission, convert it into a Mail object and hand it to Confluence to mail off to the recipient.
This handler has 3 special fields, and if multiple fields share the same special field name then the value from the last one is used. None of these special fields are required or validated on the server.
| Field Name | Description |
|---|---|
| subject | This becomes the Email's subject |
| from | This becomes the Email's from address |
| from-name | This becomes the Email's from name |
All remaining fields will go into the Email body in a "fieldName: fieldValue\n" layout.
Bandana Store
| In Progress This is new to Form Mail NG, and places the data (held in a MailShuttle) into a BandanaCollector store. The access for the Bandana Stores is somewhat primitive at the moment, but that is a work in progress. As such please treat this option as experimental. |
The idea is that instead of collecting information and sending to a mailbox, you can keep it on the server inside of Confluence. This has the advantages of being easy to access as well as potentially being accessible to extensions to the plugin for automatic processes.
One such extension might be to take details of evaluators of a product / service, the information for which is in the success HTML. You could write a nightly job to poke through the collector to email out a follow up message 1 month after registering for the evaluation.
PGP Cryptography
Java Cryptographic Extensions
| Limited Liability The following instructions are required by the Cryptix JCE provider and you follow them at your own risk. I hold no responsibility for the accuracy or reliability of these instructions. It should be strongly noted that the communication between the web browser and the server stands to be the weakest link, and in this case should always use SSL as if the data is worth encrypting on the server, it's worth encrypting on it's way there. Having said that, they've worked fine for me! |
There may be cases where you wish to store the data in an encrypted form using standard Public Key Infrastructure (PKI). This may be because you are asking the user to transmit credit card details, this may be because you are storing sensitive data which may be covered under a NDA. Whatever the reason, you are in need of an industry standard level of encryption.
In order to use the cryptographic functions of this plugin, you will need to do two things:
- Install the 4 cryptix jar files into confluence/WEB-INF/lib (1, 2, 3, 4)
- Install the "Unlimited Strength Jurisdiction Policy Files" from Sun (involves modifying the JRE)
When these have been performed you can place your public key into the form mail configuration. How this works depends on the collector you have chosen:
- Email Collector
This will cause all emails to be encrypted using that key. The whole email body is encrypted in this manner.
- Bandana Collector
Encryption with this collector is not yet supported, if there is demand a technical solution for it may be sought.
Email Decryption
Well this is a little outside of the scope of this documentation. I would suggest installing OpenPGP and Enigmail for Thunderbird. There is a good article here.
Your OpenPGP public key is what you should be pasting in to this plugin, and you will be using your private key to decrypt it. Keep your private key safe and secure!
Frequently Asked Questions
Here is a list of the most frequently asked questions covering all aspects of the plugin.
I am getting a RuntimeException with the highly descriptive message: NYI
If you are seeing the following error in the logs, then it this typically means you haven't successfully installed the Unlimited Strength Jurisdiction Policy Files in your JRE (CODEGEIST:see above). If you believe you have, make sure that if you have multiple JREs on your system that Confluence is using the right one.
java.lang.RuntimeException: NYI
at cryptix.jce.provider.elgamal.ElGamalCipher.engineGetParameters(ElGamalCipher.java:120)
at javax.crypto.Cipher.a(DashoA12275)
at javax.crypto.Cipher.init(DashoA12275)
at cryptix.openpgp.algorithm.PGPElGamal.encrypt(PGPElGamal.java:550)
at cryptix.openpgp.packet.PGPPubl
Is the baby here yet?
No ... my daughter-to-be is as stuborn as my wife! She seems to want to make an appearance on her own terms. I'll let you all know when she arrives.
Update
She was born a healthy 9lbs 3oz at Warrington General (UK) around 3pm on 11th May 2007. See photos.
Version History
| Version | Date | State | License | Price |
|
|
25 May 2009 | Stable | Freeware / Open Source (BSD) | Free |
|
|
16 Dec 2008 | Stable | Freeware / Open Source (BSD) | Free |
|
|
16 Dec 2008 | Stable | Freeware / Open Source (BSD) | Free |
|
|
08 May 2008 | Stable | Freeware / Open Source (BSD) | Free |
|
|
20 May 2008 | Stable | Freeware / Open Source (BSD) | Free |
|
|
02 Feb 2008 | Stable | Freeware / Open Source (BSD) | Free |
|
|
21 Aug 2007 | Stable | Freeware / Open Source (BSD) | Free |
|
|
14 May 2007 | Stable | Freeware / Open Source (BSD) | Free |
|
|
08 May 2007 | Stable | Freeware / Open Source (BSD) | Free |
|
|
07 May 2007 | Stable | Freeware / Open Source (BSD) | Free |


Comments (121)
May 12, 2007
Robert Castaneda[CustomWare] says:
This one gets my vote. thumbs up for functionality.This one gets my vote. thumbs up for functionality.
May 28, 2007
Brian Darragh says:
Great piece of work. Gets my vote.Great piece of work. Gets my vote.
May 31, 2007
MartinMitry says:
i am getting this error when using Form-Mail NG. is this because Confluence 2.2....i am getting this error when using Form-Mail NG.
is this because Confluence 2.2.10 is unsupported ?
Error formatting macro: mail-form: java.lang.NoSuchMethodError: net.sf.cglib.proxy.Enhancer.isEnhanced(Ljava/lang/Class;)Z
May 31, 2007
Dan Hardiker says:
For supported Confluence compatibility please see the "Availability" section of ...For supported Confluence compatibility please see the "Availability" section of the table at the top of this page. It currently reads Confluence v2.3-dr1 to v2.5.3.
Jul 16, 2007
Thomas Foster says:
Are there any plans to incorporate an attachments section to form mail NG?Are there any plans to incorporate an attachments section to form mail NG?
Jul 16, 2007
Dan Hardiker says:
As the data is sent to the server using AJAX (i.e. it's not your typical form po...As the data is sent to the server using AJAX (i.e. it's not your typical form post, and therefore there's no multi-part aspect to it, ignoring the JS security that prevents the manipulation of file controls), it's not something that is easily doable.
To directly answer your question; no.
Jul 18, 2007
chris m says:
Hi, I am trying to use the mail-input macro with type=checkbox. However, the em...Hi,
I am trying to use the mail-input macro with type=checkbox. However, the email I receive contains the names of all checkboxes but no values.
Am I missing something?
Btw: How do radiobuttons work?
Chris
Jan 26, 2009
Colin Ng says:
Here's how I got radio buttons to work: || Office Location: | {mail-input:name=...Here's how I got radio buttons to work:
|| Office Location: | {mail-input:name=Office Location|type=radio|checked=false|value=Vancouver, British Columbia}Vancouver, British Columbia{mail-input:name=Office Location|type=radio|checked=false|value=Calgary, Alberta}Calgary, Alberta{mail-input:name=Office Location|type=radio|checked=false|value=Toronto, Ontario}Toronto, Ontario{mail-input:name=Office Location|type=radio|checked=false|value=Montreal, Quebec}Montreal, Quebec|Aug 08, 2007
Peter R. says:
Is it possible to set the email "From" address to the one entered by the user or...Is it possible to set the email "From" address to the one entered by the user or is it hardcoded to use the one that Confluence is set for in the SMTP settings? On a basic form, not the fancy stuff.
Aug 10, 2007
Dan Hardiker says:
I think you just need a field called 'from'. See the information on Email Relay ...I think you just need a field called 'from'. See the information on Email Relay above.
Aug 16, 2007
Peter R. says:
I tried this but no go: window.SyntaxHighlighter.config.clipboardSwf = '/s/17...I tried this but no go:
{mail-form:destination=address@somewhere.com|from=Email}Captcha: working - this piece isn't working for me
Aug 17, 2007
Dan Hardiker says:
Sorry if you misinterpreted, but when I said it needs to be a field - I meant fi...Sorry if you misinterpreted, but when I said it needs to be a field - I meant field and not macro parameter. Try this:
{mail-form:destination=address@somewhere.com} {mail-input:type=hidden|name=from|value=Email} ... {mail-form}Captcha: working - when you use it right. Feel free to pay for development to make it more usable.
Aug 17, 2007
Peter R. says:
Ouch! A double slam and using my own attempt at humor as part of it at that! I f...Ouch! A double slam and using my own attempt at humor as part of it at that! I feel very small at the moment.
Yes, when I went into a form, which already asks the user for their email address and pre-populates the field if they're logged in, and changed the name of the field from "email" to "from" it works as described. Thank you for clarifying it for me.
Captcha: roughs - Dan roughs Peter up, Peter reels and withdraws
Aug 17, 2007
Guy Fraser says:
I'm sure the captcha system has ESP. Just "airing" my views (spot the captcha)I'm sure the captcha system has ESP.
Just "airing" my views (spot the captcha)
Jun 09, 2009
Marco Carturan says:
Hi Dan, I tried this solution in our environments. I have an SMTP server configu...Hi Dan,
I tried this solution in our environments.
I have an SMTP server configured in my confluence: if I use a different email address, when I try to send email, the configuration of mail server was automatically update.
Thanks a lot, regards
M. Carturan
Aug 16, 2007
Andy Brook says:
What's missing in Confluence generally, that could be provided through this plug...What's missing in Confluence generally, that could be provided through this plugin, is the ability to send the mail to a GROUP. For example, there are ~1000 employees at my company. Not all of them yet use confluence, I want to be able to send a targetted mailshot to confluence-users, literally. Currently there is no way to do this. a leetle extra 'mailtogroup=confluence-users' support would be just what the doctor ordered...
Aug 16, 2007
Mathew Lam says:
This plugin is awesome! Thanks! However, it seems that this loads...This plugin is awesome! Thanks!
However, it seems that this loads the CSS for Ext JS, which overrides my stylesheets with this one line:
html,body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,p,blockquote,th,td{margin:0;padding:0;}img,body,html{border:0;}address,caption,cite,code,dfn,em,strong,th,var{font-style:normal;font-weight:normal;}ol,ul {list-style:none;}caption,th {text-align:left;}h1,h2,h3,h4,h5,h6{font-size:100%;}q:before,q:after{content:'';}Is there any workaround for this?
Aug 16, 2007
Dan Hardiker says:
Quite possibly ... I dont know if that line is needed – extract the plugin...Quite possibly ... I dont know if that line is needed – extract the plugin, edit the CSS to remove it, zip it up again and try!
Let me know if it has any adverse effects (ExtJS may work quite well without that line).
Aug 16, 2007
Peter R. says:
I'd actually opened a case for this, FMNG-19, just a couple of days ago. I tried...I'd actually opened a case for this, FMNG-19, just a couple of days ago. I tried your suggestion but it didn't seem to work. Perhaps I went about it incorrectly?
Suggestions?
Captcha: tester - at the moment, I feel like a tester
Aug 17, 2007
Dan Hardiker says:
As you would expect, we are a commercial company and as such paying work takes p...As you would expect, we are a commercial company and as such paying work takes precedence. We will eventually get around to this under our own steam, however if this is of use to you commercially and you need some modifications - we recommend considering our bespoke development services.
As for why this didn't work, I don't know off the top of my head – time to respond to issue is limited due to current work load. Please don't forget that this is developed and released as open source, and the usual caveat of 'take it or leave it' applies, although we go one step further and offer paid development to fix areas you have issue with.
Aug 17, 2007
Peter R. says:
Thank you for the response. As you've perhaps seen, my company has opted to deve...Thank you for the response. As you've perhaps seen, my company has opted to develop plugins that we need internally and then release them to the community as open source as a way to contribute. I know that's helpful to the community at large but not so much to individual developers but my hands are tied.
What I can do, though, is ask our developers to look at this issue and resolve it for the benefit of all. I'll place it into their queue.
Also, in the interest of personal karma, I'll pack my lunch for all of next week and donate the savings to this plugin. Please update the Adaptavist donate form to show the FormNG plugin as right now it only lists the old Form plugin and I want to make sure the money is properly credited. Thank you.
Aug 17, 2007
Guy Fraser says:
I've dusted the cobwebs from that page and added the new button Captcha: posti...I've dusted the cobwebs from that page and added the new button
Captcha: posting
Aug 17, 2007
Peter R. says:
Thanks! (and yes, captcha does seem to have ESP.) Catpcha: weights - the weight...Thanks! (and yes, captcha does seem to have ESP.)
Catpcha: weights - the weights been lifted from my shoulders
Aug 17, 2007
Peter R. says:
Turns out another step is needed. I got the fix to work as follows: Open JAR, ...Turns out another step is needed. I got the fix to work as follows:
As mentioned, I've dropped this into our developers queue and asked them to modify the source in the SVN and push it out as v1.03.
Thank you.
Captcha: lipping - the resolution was so simple if it'd been a lipping i'd have tripped over it
Aug 17, 2007
Dan Hardiker says:
Make sure they comment on the FMNG-19 issue before they commit (as will I) in ca...Make sure they comment on the FMNG-19 issue before they commit (as will I) in case I get around to it first ... I feel a weekend of coding coming my way.
Aug 21, 2007
Peter R. says:
One of our developers went ahead and made the change and upped the jar to v1.03....One of our developers went ahead and made the change and upped the jar to v1.03. He also commented in FMNG-19.
However, he's not familiar with the Confluence Repository stuff so it's not showing up there just yet. He's looking into it. I've also activated my own SVN account and will be looking at it as well, as that should be something I can do. Coding no, meta data yes.
Aug 21, 2007
Dan Hardiker says:
I've just added the tag for v1.0.3 – please don't forget to do the 'svn cp...I've just added the tag for v1.0.3 – please don't forget to do the 'svn cp' to tag the trunk.
Aug 16, 2007
Guy Fraser says:
Ah, the dreaded ExtJS reset CSS. Yeah, that should really be binned - it's very ...Ah, the dreaded ExtJS reset CSS. Yeah, that should really be binned - it's very poorly written reset CSS that comes with the default ExtJS style sheets (they assume, wrongly, that if you're using ExtJS it's the only thing you're using - they never seemed to consider that it might be used within an existing framework, which is kind of odd).
Aug 19, 2007
John Satta says:
Hi Dan First off - the baby is beautiful - congratulations! Second - I'm a...Hi Dan
First off - the baby is beautiful - congratulations!
Second - I'm a complete Confluence newbie - it was just installed Friday and I'm spending Sunday getting familiar, so please forgive the stupid questions
Form Mail NG looks like its perfect for what we want to do. But...
How does one get the data OUT of bandana once the form puts it in? When I go to the Form Mail NG - Management page I see the table with an entry for the ID / Collector / Destination I created, but the Total(Unread) column contains only a dash
I presume there is supposed to be a link in that column which brings up a table of the submitted values - Am I correct?
btw, We are running Confluence 2.5.6 Build:#812 Aug 06, 2007
Aug 20, 2007
Dan Hardiker says:
The only data handler that you should be using in production is the email relay ...The only data handler that you should be using in production is the email relay one as the bandana one is experimental and never managed to get finished. The use case we had in mind has subsided and another hasn't sprung up yet.
Feel free to file bugs in the FMNG Jira project
Aug 20, 2007
John Satta says:
thanks for the quick reply I understand - since this is provided as open source...thanks for the quick reply
I understand - since this is provided as open source, I'll see if we can put some resources toward it - not sure if that would be manpower or cash
thanks again
Aug 21, 2007
Andy Brook says:
For anyone building this (1.0.2 tag) with maven2, you'll need to manually instal...For anyone building this (1.0.2 tag) with maven2, you'll need to manually install this into your local repository:
http://mesh.dl.sourceforge.net/sourceforge/jqr/jqr-json-1.0-SNAPSHOT.jar and OpenPGP and JCE cryptix jars from http://www.cryptix.org/
I haven't found the 20050418-snap cryptix-jce-provider, the latest availabe from cryptix is 20050328...
I also couldn't resolve the dwr dependencies, it doesn't appear needed for compile dependency and can seemingly be removed without issue.
It would be great if Atlassian could host these somehow on their mirror? - save time chasing dependencies down...
Aug 21, 2007
Dan Hardiker says:
Actually the dependencies are already with the plugin, check the trunk/lib direc...Actually the dependencies are already with the plugin, check the trunk/lib directory. There's even an install.bat file
The DWR dependency is critical to the plugin as the mail form wont work without it – at least it shouldn't!
You are quite right about the DWR dependency being missed though – I'll see if I can get it put onto a public repository, I though it was – but maybe it's just in my local cache.
Aug 21, 2007
Andy Brook says:
gah, missed that, just got the 102 tag. Yes, now you mention it, compile d...gah, missed that, just got the 102 tag. Yes, now you mention it, compile dependencies do get bundled. I tried pulling dwr out of this sites plugin and loading into my repo but, despite deploying and rendering, when I hit submit, the form goes gray and I get a stack, during rendering - before submit:
Ever see this? clues? Im working on a patch that should allows mailing to groups, as I mentioned further up. Any idea when necessary dependencies will be available on the repo?
Also, the deployed jar here has a 'dwr-version.properties' but the 1.0.2 label doesnt have such a file in src/main/resources...
Aug 21, 2007
Andy Brook says:
One difference I noticed is the compile dependencies of the plugin available her...One difference I noticed is the compile dependencies of the plugin available here has those dependencies exploded inside the plugin jar. If I build it here, I get the dependant jars in META-INF/lib , I dont know why this happes, or if could be an issue.
Aug 21, 2007
Dan Hardiker says:
You want to be using mvn -DextractDependencies=true package to build your jar. S...You want to be using mvn -DextractDependencies=true package to build your jar. See the atlassian-pdk Maven 2 plugin for more details.
Aug 23, 2007
Brett Francis says:
I can't seem to figure out how to get checkbox inputs to work in the following w...I can't seem to figure out how to get checkbox inputs to work in the following wiki markup.
{mail-form:destination=~brett.francis} {mail-input:type=hidden|name=subject|value=New Hire Form} {mail-success:render=wiki} {tip:title=New Hire Submitted}Thank you for sending the new hire info, please expect a reply shortly.{tip} {mail-success} {section:width=550px} {column:width=250px} {panel:title=System Requirements|borderStyle=dotted|width=200px|bgColor=FFFeee|borderColor=ccc} | {mail-input:type=checkbox|name=pc-LaptopStandard} Standard Laptop | {mail-input:type=checkbox|name=pc-DesktopStandard} Standard Desktop | | {mail-input:type=checkbox|name=pc-LaptopEngineering} Engineering Laptop | {mail-input:type=checkbox|name=pc-DesktopEngineering} Engineering Desktop | {panel} {mail-submit:Send} {column} {column:width=325px} {panel:title=Additional Needs|borderStyle=dotted|width=200px|bgColor=FFFeee|borderColor=ccc} {mail-textarea:name=additional|cssStyle=width: 325px} {panel} {column} {section} {mail-form}Regardless of what I check I never get any values show in the resulting email.
I have also tried changing the wiki markup of the checkboxes as:
{panel:title=System Requirements|borderStyle=dotted|width=200px|bgColor=FFFeee|borderColor=ccc} | {mail-input:type=checkbox|value=false|name=pc-LaptopStandard} Standard Laptop | {mail-input:type=checkbox|value=false|name=pc-DesktopStandard} Standard Desktop | | {mail-input:type=checkbox|value=false|name=pc-LaptopEngineering} Engineering Laptop | {mail-input:type=checkbox|value=false|name=pc-DesktopEngineering} Engineering Desktop | {panel}...with no luck. Regardless of my selection, I then receive:
Any suggestions or guidance will be appreciated.
Aug 31, 2007
Brian M. Thomas says:
This is quite nice. I've got a form that I'd like to pre-populate with a list o...This is quite nice.
I've got a form that I'd like to pre-populate with a list of spaces to which the user has admin access, in order to request custom groups for access control. Is using the Velocity-rendered option my only choice here, or would a Scaffolding list-option work?
Sep 19, 2007
David Dembo says:
I haven't had time to test this, and probably won't for a couple of weeks - but ...I haven't had time to test this, and probably won't for a couple of weeks - but two questions that someone might be able to answer quickly off the top of their head:
The use case I have in mind is adding a hidden Form Mail NG form to includes/common-signup.vm via $helper.renderConfluenceMacro(), so that when a user creates an account an e-mail notification is simultaneously sent to an administrator.
This plug-in would be ideal since the forms are submitted via AJAX and don't cause a page reload - otherwise, I'll probably need to do some extremely messy hacking involving javascript, iframes, form2mail scripts, velocity macros and other decorator files, which is about as appealing a prospect as jumping out of a window.
Thanks in advance!
Sep 20, 2007
Guy Fraser says:
I've not tried it personally on something other than page context - it should in...I've not tried it personally on something other than page context - it should in theory work, if not please add a request to the issue tracker.
As for the auto-submit, you could probably include jQuery 1.2 (use Custom HTML setting in Admin Console to pull it in) and then create a user macro (again in admin console) to store a chunk of your JS that does whatever it is you need to do. Simply include that user macro on the same page as your mail form and it should kick in to action. Remember to wait until the document has finished loading (all the jQuery examples show how to do this) before triggering your script.
Sep 21, 2007
Henk Steenwijk says:
Hi Guys, I've got a small question regarding the mailform, i'm creating a compl...Hi Guys,
I've got a small question regarding the mailform, i'm creating a complaint form which on click is sent to our ticketing system. The issue at hand that I have is that the subject is something generic. Is it possible to use the input from one of the fields as the subject and if so how?
Any help would be much appreciated.
Gr
Henk
Sep 21, 2007
Peter R. says:
Try: window.SyntaxHighlighter.config.clipboardSwf = '/s/1724/13/2/_/download/...Try:
{mail-input:type=hidden|name=subject|value=Complaint}Sep 25, 2007
Henk Steenwijk says:
Thanks Peter, I ended up using ( mail-input:type=text|name=subject|cssStyle=wid...Thanks Peter,
I ended up using
( mail-input:type=text|name=subject|cssStyle=width:163px|validation=num|required=true )
| for what I needed.
Now I have a new issue, Something i've been playing with for a few hours already. I would like to make a dropdown menu via the {mail-select:name statement, but In this drop down menu I would like to give people the option for selecting a department to which the form should be sent, do you know if this is possible?
So far i've already tried using the {mail-form:destination in the {mail-select: but that won't work.
Any ideas?
Gr
Henk
Sep 25, 2007
Peter R. says:
We tried various ways to get that to work. Gave up and went with separate forms.We tried various ways to get that to work. Gave up and went with separate forms.
Nov 01, 2007
Andrei Smolko says:
It is an interesting and useful plugin, but we cannot really use it We have a p...It is an interesting and useful plugin, but we cannot really use it
We have a problem with this plugin on IE6 (there is a JIra item already open since May, 2007). After submitting a very simple form it would show a popup to the sender but send an email anyway.
Feb 17, 2008
Dan Hardiker says:
This should be fixed in v1.1 – a fair few workarounds for IE were added in...This should be fixed in v1.1 – a fair few workarounds for IE were added in there.
Nov 28, 2007
Ki Alam says:
I'd like to pass the results of the form mail to a bean shell script for validat...I'd like to pass the results of the form mail to a bean shell script for validation and handling. Is there a way to dynamically register a new Data Handler that I've written without changing the Form Mail plugin?
Thanks!
Ki
Feb 17, 2008
Dan Hardiker says:
This would require modifying the plugin unfortunately as it can't pass off the d...This would require modifying the plugin unfortunately as it can't pass off the data to another plugin for processing ... neat idea though.
Dec 18, 2007
Shaji Khan says:
Is there a way to generate a waning message before the mail is turned in? &...Is there a way to generate a waning message before the mail is turned in?
Dec 21, 2007
Ki Alam says:
Hi Dan, I finally got around to upgrading to JDK6 and am finally able to use scr...Hi Dan, I finally got around to upgrading to JDK6 and am finally able to use scriptix ... it'd be unbelievably powerful to be able to submit FM to a scriptix script ... looks like there might be some work on both sides. I'm looking at Confluence/FM/Scriptix/Scaffolding etc as a rapid app prototyping environment and scriptix support in formmail seems like one of the keys.
Or are there any plans to make FM's Collectors pluggable?
Great job on all of these plugins!
Feb 17, 2008
Dan Hardiker says:
Hrm ... nice idea, but the work required to do this would be prohibitive at the ...Hrm ... nice idea, but the work required to do this would be prohibitive at the moment.
Jan 07, 2008
Maggie Soffer says:
Hi, is there a way to add the user's email in the mail-form:destination se...Hi, is there a way to add the user's email in the mail-form:destination section of the plug-in.
Tx
Jan 22, 2008
Harry Timons says:
Hi Maggie, give this a try: {mail-input:type=text\|name=E-Mail\|cssStyle=widt...Hi Maggie, give this a try:
{mail-input:type=text\|name=E-Mail\|cssStyle=width: 200px\|vtlValue=$\!user.email}Jan 23, 2008
Kim D Geiger says:
Would there be a way to have a drop down allowing the user to select who the ema...Would there be a way to have a drop down allowing the user to select who the email should go to and change the destination based on what the user chooses?
Jan 28, 2008
ria ninan says:
Is there any way to have a form with a few text boxes, with a submit button on c...Is there any way to have a form with a few text boxes, with a submit button on clicking which these details should be mailed to a particular a destination email id...
Or can we customize an email to meet the above requirement?
Looking forward for any suggestions to solve this...
Jan 28, 2008
ria ninan says:
I tried working with mail-form macro... I could send the required mail to the de...I tried working with mail-form macro...
I could send the required mail to the destination...but a window showing an IE error saying "An error occured please contact an administrator [Object Error]" pops up.
Looking forward for any suggestions to solve this problem...
Feb 17, 2008
Dan Hardiker says:
Try version 1.1, as this fixes many IE bugs.Try version 1.1, as this fixes many IE bugs.
Jan 29, 2008
ria ninan says:
Is there any way to send a CC to the logged in user's mail-id of the the mail be...Is there any way to send a CC to the logged in user's mail-id of the the mail being sent to a particular destination.
I am using the mail-form macro....and it has a parameter "destination"....But I am not getting how to use it for this purpose.
Can anyone please suggest a way out?
Jan 29, 2008
Dan Hardiker says:
Form Mail NG doesn't currently support this functionality.Form Mail NG doesn't currently support this functionality.
Jan 06, 2009
Neil Arrowsmith says:
We were after the same thing, and found a way to include the current user's mail...We were after the same thing, and found a way to include the current user's mail address in the "To" line. Not strictly speaking a CC, but works for us.
We did it by including a $curruser variable in the destination parameter of the mail form, and then enclosing the whole mailform in a "run" macro (see Run Plugin), set up to autorun when the page loads and replace $curruser with the logged in user's mail address, like so:
{run:replace=curruser:$current_user_email|hideRun=true|hideParameters=true|autoRun=true} {mail-form:destination=real_destination@somewhere.com,$curruser} ... {mail-form} {run}Feb 21, 2008
Britt Treece says:
Anyone seen this... Error formatting macro: mail-form: com.thoughtworks.xstrea...Anyone seen this...
and have any idea how to resolve it. The Form Mail Management page also dumps...
These functions were working before.
Feb 26, 2008
Liam Jones says:
I love this for quick and simple feedback forms! But...is it just me or do che...I love this for quick and simple feedback forms!
But...is it just me or do checkboxes not work properly? I'm getting the value for the checkbox submitted whether it's ticked or not...
Apr 16, 2008
Liam Jones says:
Is no-one else having issues with checkboxes and radio buttons then? No matter h...Is no-one else having issues with checkboxes and radio buttons then? No matter how I play with the formatting I always seem to get all checkbox/radio button values submitted (whether the control is checked/selected or not).
Jan 26, 2009
Colin Ng says:
Hi Liam, Do you have checked=false for all the radio choices? || Office...Hi Liam,
Do you have
for all the radio choices?
|| Office Location: | {mail-input:name=Office Location|type=radio|checked=false|value=Vancouver}Vancouver {mail-input:name=Office Location|type=radio|checked=false|value=Calgary}Calgary {mail-input:name=Office Location|type=radio|checked=false|value=Toronto}Toronto {mail-input:name=Office Location|type=radio|checked=false|value=Montreal}Montreal |Mar 05, 2008
Ki Alam says:
Britt, it appears I'm having the same problem, have you found a solution yet?&nb...Britt, it appears I'm having the same problem, have you found a solution yet? I have created an issue here: http://jira.adaptavist.com/browse/FMNG-29
Mar 05, 2008
Andy Brook says:
Any ideas on 1.1.1 dates? I'm keen to try out the ever-so-useful group email fu...Any ideas on 1.1.1 dates? I'm keen to try out the ever-so-useful group email functionality!
Mar 05, 2008
Ki Alam says:
I've performed minor surgery on the Form Mail NG 1.1 source to fix -er- ...I've performed minor surgery on the Form Mail NG 1.1 source to fix -er- hack a working 1.1 plugin. feel free to email me for my "fixed" copy.
Summary of changes:
Apr 07, 2009
camelia Alavi says:
Hi, How can i get the fixed copy of the plugin?Hi,
How can i get the fixed copy of the plugin?
May 25, 2009
camelia Alavi says:
Hi Ki, I am not sure if you are still active in this site, i need your fixed co...Hi Ki,
I am not sure if you are still active in this site, i need your fixed copy of this plugin.
Thanks
Apr 10, 2008
Mark Osborne says:
Hi, this plugin looks excellent, but I haven't been able to use it yet.&nbs...Hi, this plugin looks excellent, but I haven't been able to use it yet. I'm using confluence 2.7.1 and installed Form Mail NG 1.1 from the plugin repository.
I'm getting the following error when trying to put the basic example in a wiki page.
Error formatting macro: mail-form: java.lang.IllegalArgumentException: Resource is not serializable: Key=Ph6BxNskXKiDr9dDlubh, Value=com.adaptavist.confluence.formMailNG.model.TempFormMail@1eb60be
Any thoughts on what could be causing that?
Thanks!
Apr 11, 2008
Neil Arrowsmith says:
Is there a good way to guarantee new-lines between fields in the output emails f...Is there a good way to guarantee new-lines between fields in the output emails from this plug-in? I haven't nailed down the problem yet, but sometimes I get nice emails with each field and its value on a separate line, and other times, with different field input, I get everything output on one long line.
I've got round it by inserting a load of dummy, hidden mail-input fields stuck between each real field, but this means that the hidden field names come out in the output too.
Thanks in advance
Neil Arrowsmith
Apr 14, 2008
Greg M. Smith says:
I did an upgrade to 2.8 this evening, but I am getting the following on my form-...I did an upgrade to 2.8 this evening, but I am getting the following on my form-mail forms: Error formatting macro: mail-form: java.lang.NullPointerException
Running, jdk1.5.0_08
Any thoughts?
Apr 23, 2008
Martin Anderberg says:
I have the exact same problem. Updated from 2.7.1 to 2.8.0. Anyone else seen th...I have the exact same problem. Updated from 2.7.1 to 2.8.0.
Anyone else seen this problem and care to share how they solved it?
Thanks.
Martin
Jun 19, 2008
Liam Jones says:
I had this happening when testing our upgrade to 2.8.1 from 2.6.0. An uninstall ...I had this happening when testing our upgrade to 2.8.1 from 2.6.0. An uninstall and reinstall of the plugin seemed to fix it.
Apr 29, 2008
Peter R. says:
(silly firefox plugin, put in my old data from months ago into this form and I s...(silly firefox plugin, put in my old data from months ago into this form and I submitted without noticing. Too many interruptions! Here's what I meant to say.)
Has anyone had any issues running this under a cluster? We just moved from a single machine host to a dual node cluster and now our forms are giving us this:
Thanks in advance!
Peter
Apr 30, 2008
Peter R. says:
http://jira.adaptavist.com/browse/FMNG-32 has been opened for this.http://jira.adaptavist.com/browse/FMNG-32 has been opened for this.
Jun 19, 2008
Andy Brook says:
A fresh 2.8.1 install with V1.2.1 seems to disable the javascript dropdown menu...I can't register a bug on the Adaptavist site, its jira is foobared, just giving me 'Error occurred while storing issue.' ....
FYI:
A mail form which works fine on 2.7.2 was just tried with 2.8.1, with unexpected side effects.
For info, here's the form used:
{mail-form:destination=server@domain} {mail-input:type=hidden|name=userName|vtlValue=$!user.name} {mail-input:type=hidden|name=from|vtlValue=$!user.email} {mail-input:type=hidden|name=subject|vtlValue=New Confluence Space Created} || Space Name | {mail-input:type=text|name=spaceName|cssStyle=width: 500px; |required=true} | || Space Key | {mail-input:type=text|name=spaceKey|cssStyle=width: 500px; |required=true} | || Space Admin | {mail-input:type=text|name=spaceAdmin|cssStyle=width: 500px; |required=true} | || Notes | {mail-textarea:name=notes|cssStyle=width: 500px; height: 100px}{mail-textarea}| {mail-submit} {mail-success:render=wiki} {tip:title=Ta for the mail.}Follow on work should be completed soon.{tip} {mail-success} {mail-form}Under IE, the page (containing no other wiki content) indicated there was a javascript error- initializelphone was undefined
Cheers,
andy
Jun 26, 2008
Dan Hardiker says:
I'm pretty sure this will boil down to the JS changes made in the default theme ...I'm pretty sure this will boil down to the JS changes made in the default theme and a change may not be backwardly compatible. I am working on commissioned development for Confluence v2.7.3, after which I'll see what I can do about making this work.
Currently I think FMNG uses YUI-Ext, and if there are incompatibilities there the JS stuff may need rewriting to use a lighter-weight JQuery library that Confluence is standardising upon. So far there aren't any commissioners for such development, nor is time presenting itself for probono development.
Jul 02, 2008
Andy Brook says:
OK Dan, thanks for the update, will watch with interest.OK Dan, thanks for the update, will watch with interest.
Jun 19, 2008
Pam Cole says:
Is there a way to have multiple destinations to send emails to multiple users? I...Is there a way to have multiple destinations to send emails to multiple users? I would like to send a form mail to all registered userson our Confluence platform.
Any ideas? Thanks!!!
Jun 19, 2008
Andy Brook says:
This was asked for under FMNG-21. There are spamming issues around such use tho...This was asked for under FMNG-21. There are spamming issues around such use though, just thing, email all users and anyone can do it.
Jun 19, 2008
Peter R. says:
We do a DB query to pull out a list of registered users and then use a mail merg...We do a DB query to pull out a list of registered users and then use a mail merge process to send the emails. Makes them all look personal, thus more likely to be opened. Works well for us. YMMV.
Jul 28, 2008
Jamie says:
when I try to upload this plugin I get: org.apache.velocity.exception.MethodInv...when I try to upload this plugin I get:
org.apache.velocity.exception.MethodInvocationException: Invocation of method 'isModuleEnabled' in class com.atlassian.confluence.admin.actions.plugins.ManagePluginsAction threw exception java.lang.IllegalArgumentException: Invalid complete key specified: null @ /admin/plugins.vm[109,42]
at org.apache.velocity.runtime.parser.node.ASTMethod.execute(ASTMethod.java:286)
...
Caused by: java.lang.IllegalArgumentException: Invalid complete key specified: null
at com.atlassian.plugin.ModuleCompleteKey.(ModuleCompleteKey.java:17)
at com.atlassian.plugin.DefaultPluginManager.isPluginModuleEnabled(DefaultPluginManager.java:759
...
Looks similar to http://jira.atlassian.com/browse/CONF-12199, but is not, as I get the same error when I compile the plugin myself. I'm running and compiling with Java 1.6.
Any ideas?
cheers, jamie
Jul 29, 2008
Jamie says:
Worked around the above issue by deleting it from the plugin cache and adding it...Worked around the above issue by deleting it from the plugin cache and adding it back a few times, would like to know the root cause though.
Echo a comment above about this breaking the dropdown menus in the default theme in conf 2.8.1.
Other than that, I heart this plugin.
Aug 06, 2008
Darryl Lee says:
Has anyone seen this error pop-up when someone tries to Submit a form:Unable to ...Has anyone seen this error pop-up when someone tries to Submit a form:Unable to find a shuttle by the ID: somehash
It was occuring for users on Ubuntu 8.04 w/ Firefox, but now I think that's a red herring, as the form worked after we restarted the wiki server due to slow response. So maybe it's a result of a low memory/high CPU condition?
Thanks.
Sep 22, 2008
Andy Brook says:
I just had a peek on this in 2.9.1, using the old standard theme to workaround F...I just had a peek on this in 2.9.1, using the old standard theme to workaround FMNG-44, unfortunately I got NPE's on the page.
On the flip side, I just tried this on 2.10m3, and it just worked
and fixing the drop down menu bug, so Atlassian seem to have been putting in some compatibility....
Oct 28, 2008
Bob Swift says:
I tried Mail Field Processors on 2.9.2 and it seemed to work .I tried Mail Field Processors on 2.9.2 and it seemed to work
.
Oct 28, 2008
Andy Brook says:
We're still on 2.9.1 , probably skip to 2.10, but it'll be nice to get the Jira...We're still on 2.9.1
, probably skip to 2.10, but it'll be nice to get the Jira integration back, esp with a more fully fleshed out Jira Extendable Mail Handler.
Nov 12, 2008
Joel Lignier says:
Is there someway I can redirect the user once the form has been successfully sub...Is there someway I can redirect the user once the form has been successfully submitted. I already tried using the {redirect}
macro inside {mail-success:render=wiki} and all I see is a "Redirection Notice" box but nothing happens. Cheers.
Nov 19, 2008
payal says:
I am using Form mail NG plugin. and I want to add Date in my form. What macro d...I am using Form mail NG plugin. and I want to add Date in my form. What macro do I use? so I can add m/d/y.
Nov 26, 2008
Shaji Khan says:
I tried to embed an attachment field in my form, but I have no success. It recog...I tried to embed an attachment field in my form, but I have no success. It recognizes the tags, but gives an error when the mail is actually being sent.
Does anyone know of a work around?
Dec 01, 2008
Robert Quinn says:
This was a reply to a similar question back in July/'07 >>As the data is ...This was a reply to a similar question back in July/'07
>>As the data is sent to the server using AJAX (i.e. it's not your typical form post, and therefore there's no multi-part aspect to it, ignoring the JS security that prevents the manipulation of file >>controls), it's not something that is easily doable.
>>To directly answer your question; no.
Dec 01, 2008
Robert Quinn says:
i need to send a bunch of context with the email and I don't want the user to ty...i need to send a bunch of context with the email and I don't want the user to type in all that stuff... at a minimum i'd like to get page name the user originated from before arriving at the email form...
i tried...
{mail-input:type=hidden\|name=referrer\|vtlValue=$req.getParameter("referrer")} {mail-input:type=hidden|name=spaceName|vtlValue=$helper.spaceName} {mail-input:type=hidden|name=referrer|vtlValue=$req.getHeader("referrer")}and I searched the code base for $req but it's "all" $req.contextPath
anyone know of a good resource for $req or any of velocity context objects. i never had so much bad luck trying to search down examples and/or reference.
i must be missing something.
thanks
Mar 27, 2009
John Bowersox says:
I just installed this plugin and while attempting to create my first form I am g...I just installed this plugin and while attempting to create my first form I am getting the following error -
Error formatting macro: mail-form: java.lang.NoClassDefFoundError: Could not initialize class net.sf.cglib.proxy.Enhancer
Any thoughts on what I could be missing?
Apr 01, 2009
camelia Alavi says:
Is it possible to get an email form in html format?Is it possible to get an email form in html format?
Apr 06, 2009
TZ says:
Is this plugin hardcoded in english? Confluence is set to German but the plugin ...Is this plugin hardcoded in english? Confluence is set to German but the plugin still states 'This field is requiered' in English.
Apr 06, 2009
Keith Brophy says:
Hi TZ, UNfortunately, this plugin is not fully internationalised at present. ...Hi TZ,
UNfortunately, this plugin is not fully internationalised at present.
The plugin code would need to be modified to use i18n strings and a suitable translation file (German) for all strings used would need to be supplied.
Regards,
Keith
Apr 13, 2009
Mark says:
I'm using confluence 2.10 and each time I attempt to submit a form I get a JS po...I'm using confluence 2.10 and each time I attempt to submit a form I get a JS popup that reads "Unable to process field type: null". Any ideas? I see nothing in the logs but I'm not running in a debug log level. This occurs even with the simplest of examples. However, here is the weird part -- everything works just fine using the preview tab in Confluence!
Thanks
Mark
Apr 14, 2009
Keith Brophy says:
Hi Mark, Can you post the example you are using? Is there any other Javascript ...Hi Mark,
Can you post the example you are using? Is there any other Javascript you have added to the page?
Which browser are you using? Are you able to test within Firefox using Firebug to help determine the issue?
I have tested the latest plugin with Confluence 2.10.2 and the simple example works as expected.
Regards,
Keith
Apr 14, 2009
Mark says:
I am using both Safari and Firefox. Firebug indicates it's line 239 on form-mail...I am using both Safari and Firefox. Firebug indicates it's line 239 on form-mail.js, which seems to be a response from line 471 on engine.js
var s0 = "Unable to process field type: null"; DWRPluginEngine._handleServerError('9700_1239724316328', s0);I am also using the Adaptivist Builder theme (version 3.3.3-conf210), possibly there is a conflict here?
Apr 14, 2009
Mark says:
Using the simplest valid usage example define above, here are the post results f...Using the simplest valid usage example define above, here are the post results from firebug. It seems vid is null?
callCount=1 c0-scriptName=FormMailDWR c0-methodName=submit c0-id=7584_1239725377198 c0-e1=string:OeoynY27uGaMEra4S6U7 c0-e4=string:vid c0-e5=null:null c0-e3=Object:{name:reference:c0-e4, dataType:reference:c0-e5} c0-e2=Array:[reference:c0-e3] c0-param0=Object:{id:reference:c0-e1, fields:reference:c0-e2} xml=trueMay 25, 2009
camelia Alavi says:
Hi, I am going to make some changes to this plugin, (add cc to the form), i jus...Hi,
I am going to make some changes to this plugin, (add cc to the form), i just did set up my workspace but i am getting errors about some of imported classes. Anyone knows what should i do?
Jun 02, 2009
camelia Alavi says:
check this out: http://forums.atlassian.com/thread.jspa?threadID=34405&tstar...check this out: http://forums.atlassian.com/thread.jspa?threadID=34405&tstart=0
Jun 03, 2009
Stacy Shenker says:
Can anyone tell me if there is a way to prevent anonymous users from submitting ...Can anyone tell me if there is a way to prevent anonymous users from submitting a form. Even though they have view access only they can still submit a form. I even tried to make the name field required but that does not prevent them from putting in any text they want
Jun 10, 2009
Will Barrueto says:
I have a nifty little form I made to use in conjunction with JIRA. My users wil...I have a nifty little form I made to use in conjunction with JIRA. My users will fill this form out and it will get emailed to a JIRA tracker where it notifies the support staff. When they see these submitted forms they assign the issue to me. Is it possible to CC: thee emails to me so that (A)I get them directly and can reply quicker and (B)use JIRA's automatic assigning feature that assigns the issue to the user in the CC field.
Since I see no mention of it I suppose this form macro (which we love) doesn't do CC'ing...?
Jun 10, 2009
camelia Alavi says:
http://forums.atlassian.com/thread.jspa?threadID=34405&tstart=15http://forums.atlassian.com/thread.jspa?threadID=34405&tstart=15
Jun 10, 2009
Will Barrueto says:
Awesome. Thanks for the fast reply!Awesome. Thanks for the fast reply!
Jun 24, 2009
Michael Gettes says:
I am trying to combine the run macro with the FormMailNG. Note the markup ...I am trying to combine the run macro with the FormMailNG. Note the markup below. I am running this on confluence 3.0.0.1. What I find is all works fine EXCEPT the mail-success processing doesn't seem to work no matter what I do. Any advice appreciated... I have inquired about this with Bob Swift over on the RUN macro page and he suggested I come here - he doesn't know why the problem is happening.
{run:inputSize=50|titleRun=GO|prompt=Enter User and Reason then click =>| replace=targetUser::Target User,targetReason::Ticket # or Notes} {mail-form:destination=$targetUser} {mail-input:type=hidden|name=subject|value=testing} {mail-input:type=hidden|name=RequestorEmail|vtlValue=$!user.email} {mail-input:type=hidden|name=RequestorName|vtlValue=$!user.fullName} {section}{column:width=100%} || User: | {mail-input:type=text|name=TargetUser|value=$targetUser|disabled=true|required=true} || || Reason (ticket or other notes): | {mail-input:type=text|name=Reason|value=$targetReason|disabled=true|required=true} || {column}{section} {center}{mail-submit:Confirm Request}{center} {mail-success:render=wiki} {tip} done\! {tip} {mail-success} {mail-form} {run}Jun 24, 2009
camelia Alavi says:
Hi Michael, I tested the script it works including mail-success. I don't know w...Hi Michael,
I tested the script it works including mail-success. I don't know why it doesn't work properly for you!
Jun 24, 2009
camelia Alavi says:
Hi again Michael, Now i see what you mean the fields will be shown again wehn y...Hi again Michael,
Now i see what you mean the fields will be shown again wehn you submit it.
Jul 17, 2009
Pam Cole says:
Is this going to be available for Confluence 3.0??Is this going to be available for Confluence 3.0??
Jul 17, 2009
Will Barrueto says:
If it's available now I don't see why they would pull it from 3.0...?If it's available now I don't see why they would pull it from 3.0...?
Jul 20, 2009
Pam Cole says:
it's not currently available for 3.0, only up to 2.10.3. I'm using 3.0 and it do...it's not currently available for 3.0, only up to 2.10.3. I'm using 3.0 and it does not work, that's why I ask. Are you using it on 3.0 successfully?
Jul 20, 2009
John Bowersox says:
I'm not sure why you are having an issue. We are using the plug-in successfully ...I'm not sure why you are having an issue. We are using the plug-in successfully on 3.0. We did have it installed and working successfully on our 2.10.2 instance before we upgraded though.
Aug 03, 2009
Michael Gettes says:
I am trying to create a formatted email - so I construct something like: win...I am trying to create a formatted email - so I construct something like:
{mail-input:type=text|name=Message|cssStyle=width: 100%; height=40px|required=true|value= Your class Wiki space has been created at: $targetURL blah blah blah blah blah }But when the message is sent, it is all compressed into a single line. Any suggestions
how to do what I am trying to do?
thanks!
/mrg
Aug 04, 2009
Neil Arrowsmith says:
I've had the same problem, but only on big complicated mail forms. Only way I co...I've had the same problem, but only on big complicated mail forms. Only way I could get round it was to insert a load of hidden mail-input fields between my real fields, like this:
{mail-input:name=A text field|cssStyle=width: 300px|type=text} {mail-input:type=hidden|name=d8|value= } {mail-input:name=Another text field|cssStyle=width: 300px|type=text|required=true} {mail-input:type=hidden|name=d9|value= } ...That stopped the output getting output as one line, but with the hidden field names all over the place....
Aug 04, 2009
Michael Gettes says:
Yes, I figured out this way of doing it, but the problem is it really looks like...Yes, I figured out this way of doing it, but the problem is it really looks like hell. I'd like to generate email going to end-users and insertnig empy hidden fields to act as empty lines doesn't make the message very readable. Would be great if I could insert some special char in the string (like \n) or some such to allow for multi-line output.
Aug 05, 2009
Guy Fraser says:
We're currently reviewing all 30+ of our open source plugins to ensure they work...We're currently reviewing all 30+ of our open source plugins to ensure they work on Confluence 3.0 and could possibly get some feature requests in if they are simple to add - please post a comment in the forums over at http://www.adaptavist.com/display/free/Forum and hopefully we'll be able to add something that makes the above easier.
Aug 24
Barbara Vickers says:
I've copied the .jar file to the WEB_INF\lib folder, and copied the examples int...I've copied the .jar file to the WEB_INF\lib folder, and copied the examples into a page.
When I click the "Send" button nothing seems to happen. Am I supposed to have configured something?
Also, can anyone tell me how to access the page identifier (URL) to include in one of the fields - I've got the user id working now, but need to send the URL as part of the email.
Oct 06
Don Gamble says:
It would be great to be able to call a RESTfull WebService with form contents.It would be great to be able to call a RESTfull WebService with form contents.
Nov 18
Derek Nicol says:
We are getting reports that people are getting an error Unable to find a shuttle...We are getting reports that people are getting an error Unable to find a shuttle by the id: somehashvalue.
Any thoughts on what causes this? Any fix?