Extra Customer Fields
Module Type
System Extension
Level of Difficulty
Difficult
Need a second address line? Additional customer information?
Even better - do you want to control how that information
is displayed to your customers? (After all, does it make sense
for the second address line to appear at the BOTTOM of the
screen?)
The Extra Customer Fields module allows you to
specify additional customer information fields within
your store, and also provides template-based layout
control over the customer account screen and the
customer information within all checkout screens. The
extra customer fields can be displayed on all account
and checkout screens, including the following:
- ACNT - Add / Edit Customer Account Screen,
- OINF - Checkout: Customer Information Screen,
- OSEL - Checkout: Shipping / Payment Selection Screen,
- OPAY - Checkout: Payment Screen, and
- INVC - Invoice Screen
The Extra Customer Fields module supports all
standard Miva Merchant fields, and also allows a
variety of input types for extra fields, including
text field, text area, checkbox, radio button, single
select list, multi-select list, country dropdown, and
state dropdown - all configurable from within the
module's easy to use administration interface.
Features
Global Settings
Global Settings allows you to optionally set
indicators to distinguish fields as required,
optional, or both. Indicators can be shown before
or after the field prompt. CSS styles are also
applied to field prompts and input elements to
indicate fields as required, optional, and/or
invalid (when data is missing or incorrectly
formatted).
|

|
| |
Standard Fields
Extra Customer Fields allows you to control even
the standard customer fields. This administration
section allows you to change the prompt for a field
and to set optional field attributes, such as CSS
selectors, size, and even JavaScript event handling
code.
Prompts can be dynamically controlled using
OpenTokens - the prompt fields fully support all
OpenToken functionality.
|

|
| |
Templates
The layout of the account screen and the customer
portions of the checkout screens can be customized
using templates and tokens. Each screen has its
own template, and fields and their associated
prompts are displayed via tokens. For example,
%nbecf_fname_s% is replaced with the input
box for the Ship-to First Name.
There is also a template for the admin screen.
Administrators can view and edit the data entered
by customers within the Miva Merchant administration
utility. The admin template determines the layout
of this administration screen.
|

|
| |
Extra Customer Fields
Extra fields can be defined to collect additional
information from your customers, either during
checkout, account creation, or both. Each extra
field is assigned a name, a prompt, an interface
type, and optionally a default value and attributes.
The name is hidden from customers, but is used
as the token to represent this field within the
templates. The prompt is the text label shown to
customers. Several interface types are available,
including text field, text area, dropdown menu,
checkbox, radio button, single select, multi
select, and even states and countries dropdowns
with data pulled from the corresponding store
databases. If a field is given a default value,
that default value will be present when an empty
form is loaded. Attributes are used to specify
CSS selectors, sizes, and JavaScript event handlers.
Finally, each field can be designated as required
or optional.
Dropdowns, radio buttons, and single and multi
select fields also have options. These options
are defined on a separate screen for each field,
and can be reordered as needed.
|


|
System Requirements
OpenUI or Templates
Traditionally, this module requires the use of OpenUI. However, it also offers tokens for compatibility with templating systems,
such as the Viking Page Template Modules, OpenUI Supermod templates, or Dynamic Templates. Information on the module's tokens can be found in the module's
documentation. Free support does not include configuration and use of tokens within templating systems or the OpenUI itself.
.