Overview
The ajax method is the recommended option as the visitor never leaves the site they are on and the operation is a little slicker. However, this may not be available for everyone. If you have issues or if this is too complicated, use the standard post and get methods instead.

The code below is the code you place on your website where you want the subscription box to appear. You can have multiple boxes on one page if you wish.

Please read to this information carefully.
Add the following code BEFORE your closing </body> tag
This code should go before the closing body tag on your page.

Important: DO NOT load the jQuery library if your website is already using it as this may cause conflicts!

View your pages source code if you aren't sure if your website is already loading jquery. Do a search for 'jQuery'.

This code has a number of parameters that can be passed, and they are detailed below. If you wish to have multiple sign up boxes on the same pages, use unique div IDs and make sure this is referenced for the plugin. See below.
Parameters
The following parameters are allowed in the body code. Parameters marked in bold are required!, the rest are optional.

Important: If code is being placed on a different domain, "remote" MUST be set to yes to invoke the cross domain proxy.

If this is set, you MUST NOT have code in an existing .htaccess file blocking cross site scripting, this will always kill the remote code. If you don't want to remove the code Maian Responder HTML code cannot be used remotely.


Name Value
base This is the base path (including slash) to your responder root setup. Required.
campaign The campaign ID as detailed on the main campaigns page. Required.
tmp The location of the form template, relative to the 'base' path. Defaults to 'content/signup-form.html' if omitted.
remote If code is being added on a different domain, this MUST be set to yes to invoke the cross domain proxy. Defaults to no.

Important: If this is set, you MUST NOT have code in an existing .htaccess file blocking cross site scripting, this will always kill the remote code.
style The location of the form stylesheet, relative to the 'base' path. Defaults to 'content/css/signup.css' OR 'content/css-dark/signup.css' if omitted.
processor Name of processing file in responder root. The default is 'signup.php'. If you wish to rename it, also set the new name in the 'control/options.php' file (SUBSCRIBE_PROCESSOR).
text Text which appears at the top of the default form template. Defaults to 'Join My Newsletter' if omitted. If you are using a custom template, this may have no affect.
place_text1 Placeholder text for first name input box in the default form template. Defaults to 'Enter first name..' if omitted. If you are using a custom template, this may have no affect.
place_text3

(Added in v1.4)
Placeholder text for last name input box in the default form template. Defaults to 'Enter last name..' if omitted. If you are using a custom template, this may have no affect.
place_text2 Placeholder text for email input box in the default form template. Defaults to 'Enter email address..' if omitted. If you are using a custom template, this may have no affect.
bt_text Text which appears on button in default form template. Defaults to 'Signup' if omitted. If you are using a custom template, this may have no affect.
bt_text_wait Text which appears on button after submission in default form template. Defaults to 'Please wait..' if omitted. If you are using a custom template, this may have no affect.
focus_name Do you want the name field to have focus on page load? Yes or No, defaults to No.
show_fa_icons Do you want the show the font awesome icons for messages? Yes or No, defaults to Yes.
first_name If set the form first name input box auto populates with this value on load. New in v3.0
last_name If set the form last name input box auto populates with this value on load. New in v3.0
email If set the form email input box auto populates with this value on load. New in v3.0
Form Template & Customisation
The default form and stylesheet locations are as follows:

content/signup-form.html
content/css/animate.css (imported)
content/css/bootstrap.css (imported)
content/css/font-awesome/font-awesome.css (imported)
content/css/signup.css

(NOTE: If you are using the dark theme, the files are located in the 'css-dark' sub folder)

You can edit or create your own form if you wish, but the following MUST be observed:

1 First Name input box must be 'name="nm"'.

2 Last Name input box must be 'name="nm2"'. (Added in v1.4)

3 Email input box must be 'name="em"'

4 Input button must have <button>..</button> tags with 'type="button"'

5 Form must have a master div class called 'signup', which immediately precedes the form.

<div class="signup">
  <form method="post" action="#">
  ...
  </form>
</div>
6 Error and success divs must be present for response messages.

<div class="mr_ok_message"></div>
<div class="mr_err_message"></div>
View the default template for assistance and revert back if you have problems.
Multiple Boxes on Same Page
You can have multiple boxes on a single page, but each must have a unique ID. Example:

<div id="div1"></div>
<script type="text/javascript">
//<![CDATA[
jQuery(function() {
  jQuery('#div1').mrAutoResponder({
    ....
  });
});
//]]>
</script>
<div id="div2"></div>
<script type="text/javascript">
//<![CDATA[
jQuery(function() {
  jQuery('#div2').mrAutoResponder({
    ....
  });
});
//]]>
</script>
Custom Field Capture & Dynamic Tags
Unlimited form data can be captured at the point of signup. This is useful if you want to capture form data and include it in your broadcast and follow up messages to subscribers via dynamic tags. For this to work, add hidden form or standard input boxes to your form (for the Ajax option you need to add the fields to your preferred form in the 'content' folder). The name of the input boxes isn't important. An example:

<input type="text" name="nm" class="mr_nm" placeholder="{placeholder_name}" value=""> (Required)
<input type="text" name="nm2" class="mr_nm" placeholder="{placeholder_name2}" value=""> (Required)
<input type="text" name="em" class="mr_em" placeholder="{placeholder_email}" value=""> (Required)
<input type="text" name="some_field_name" value="my value">
<input type="hidden" name="some_other_field_name" value="my other value">
The field names must only contain alphanumeric characters, underscores and hyphens, anything else will be converted to hyphens. Please note the following:

- The form fields must NOT contain the same names as the required fields above.

- If the boxes are text input boxes requiring visitor interaction, you are responsible for validating the data being entered is correct before the form is submitted to the responder system. It may be easier to use the POST or GET method instead. Note that for a layer of security Maian Responder will strip any harmful tags from the field values.

- If a field already exists for a subscriber it will be updated with the new value.

- If a field doesn't exist for a subscriber it will hold no value.


Once you have captured data, read up on how to include the fields as custom dynamic tags here.
Wordpress Integration
If you use Wordpress, the best way to integrate the above code is to use Wordpress's template override system. Create a new template file and add the code there. It may not work properly otherwise. Good luck.