[interchange-cvs] interchange - jon modified 10 files
interchange-core@interchange.redhat.com
interchange-core@interchange.redhat.com
Wed Nov 21 17:18:00 2001
User: jon
Date: 2001-11-21 22:17:02 GMT
Modified: pod Tag: STABLE_4_8-branch icadvanced.pod icconfig.pod
Modified: icdatabase.pod icfoundation.pod ictags.pod
Modified: ictemplates.pod icupgrade.pod
Added: pod Tag: STABLE_4_8-branch ic_ecommerce.pod
Added: ic_howto_cvs.pod icfaq.pod
Log:
Synchronize POD docs with latest SDF source.
Adding Dan Browning's ic_howto_cvs doc, Ed LaFrance's ic_ecommerce,
and the long-lost IC FAQ.
Revision Changes Path
No revision
No revision
2.2.2.1 +5 -0 interchange/pod/icadvanced.pod
rev 2.2.2.1, prev_rev 2.2
Index: icadvanced.pod
===================================================================
RCS file: /var/cvs/interchange/pod/icadvanced.pod,v
retrieving revision 2.2
retrieving revision 2.2.2.1
diff -u -u -r2.2 -r2.2.2.1
--- icadvanced.pod 2001/08/06 23:25:36 2.2
+++ icadvanced.pod 2001/11/21 22:17:01 2.2.2.1
@@ -1358,3 +1358,8 @@
=back
+ ________________________________________
+
+Copyright 2001 Red Hat, Inc. Freely redistributable under terms of the
+GNU General Public License.
+
2.2.2.1 +46 -5 interchange/pod/icconfig.pod
rev 2.2.2.1, prev_rev 2.2
Index: icconfig.pod
===================================================================
RCS file: /var/cvs/interchange/pod/icconfig.pod,v
retrieving revision 2.2
retrieving revision 2.2.2.1
diff -u -u -r2.2 -r2.2.2.1
--- icconfig.pod 2001/08/06 23:25:36 2.2
+++ icconfig.pod 2001/11/21 22:17:01 2.2.2.1
@@ -1691,6 +1691,24 @@
NonTaxableField wholesale
+=head2 NoSearch
+
+Here you can provide one or more filename fragments that will be
+matched against the file name used in any attempted search (the
+mv_search_file or 'fi' attribute). You may separate multiple match
+strings with whitespace, and may include shell-style wildcards.
+
+The default setting is 'userdb', which means that by default you
+cannot use Interchange-style searches on the userdb table. (Pure SQL
+searches still work with it, however.)
+
+For example, consider this setting:
+
+ NoSearch userdb .* *.secret
+
+In this case any search file with 'userdb' in its name, or beginning
+with a dot, or ending in '.secret', will not be searchable.
+
=head2 OfflineDir
The location of the offline database files for use with the
@@ -2080,14 +2098,32 @@
=head2 SalesTax
If non-blank, enables automatic addition of sales tax based on the
-order form. The value is a comma-separated list of the field names (as
-placed in order.html) in priority order, which should be used to look
-up sales tax percentage in the salestax.asc database. This database
-is not supplied with Interchange. It is typically received from a
-third party by quarterly or monthly subscription.
+order form. The value is one of three types of values:
+
+=over 4
+
+=item multi
+The special value "multi" enables table-based lookup of taxing rates
+based on the value of user form values, by default country and
+state.
+
+=item [itl-tags]
+
+If the value has a left square bracket, it is interpolated for ITL
+tags and the result used as the amount of the salestax.
+
+=item var1, var2
+
+A comma-separated list of the field names (as placed in the checkout
+page, for example ord/checkout.html) in priority order. These are be
+used to look up sales tax percentage in the salestax.asc ASCII
+table. (This table is not supplied with Interchange.)
+
SalesTax zip state
+=back
+
=head2 SalesTaxFunction
A Perl subroutine that will return a hash reference with the sales tax
@@ -2598,4 +2634,9 @@
Disables IP qualification of user sessions. B<This degrades catalog
security.> Do not use unless using encryption or a real-time payment
gateway.
+
+ ________________________________________
+
+Copyright 2001 Red Hat, Inc. Freely redistributable under terms of the
+GNU General Public License.
2.1.2.1 +110 -31 interchange/pod/icdatabase.pod
rev 2.1.2.1, prev_rev 2.1
Index: icdatabase.pod
===================================================================
RCS file: /var/cvs/interchange/pod/icdatabase.pod,v
retrieving revision 2.1
retrieving revision 2.1.2.1
diff -u -u -r2.1 -r2.1.2.1
--- icdatabase.pod 2001/07/18 15:11:03 2.1
+++ icdatabase.pod 2001/11/21 22:17:01 2.1.2.1
@@ -1519,6 +1519,7 @@
ac mv_all_chars
bd mv_base_directory
bs mv_begin_string
+ ck mv_cache_key
co mv_coordinate
cs mv_case
cv mv_verbatim_columns
@@ -1538,8 +1539,12 @@
hs mv_head_skip
ix mv_index_delim
lb mv_search_label
+ lf mv_like_field
lo mv_list_only
lr mv_search_line_return
+ ls mv_like_spec
+ ma mv_more_alpha
+ mc mv_more_alpha_chars
md mv_more_decade
ml mv_matchlimit
mm mv_max_matches
@@ -1552,6 +1557,7 @@
nu mv_numeric
op mv_column_op
os mv_orsearch
+ pf prefix
ra mv_return_all
rd mv_return_delim
rf mv_return_fields
@@ -1567,17 +1573,14 @@
sf mv_search_field
sg mv_search_group
si mv_search_immediate
+ sm mv_start_match
sp mv_search_page
sq mv_sql_query
sr mv_search_relate
st mv_searchtype
su mv_substring_match
- tc mv_sort_command
- td mv_table_cell
tf mv_sort_field
- th mv_table_header
to mv_sort_option
- tr mv_table_row
un mv_unique
va mv_value
@@ -2113,11 +2116,41 @@
=item mv_return_fields
-The fields that should be returned by the match, specified either by
-field name or by column number. Specify 0 as the first field to be
-returned if searching the products database, since that is the key for
-accessing database fields.
+The field(s) that should be returned by the match, specified either by
+field name or by column number, separated by commas. Do not list the
+same field more than once per search. Specify 0 as the first field to
+be returned if searching the products database, since that is the key
+for accessing database fields.
+=back
+
+As with SQL queries, you can use the '*' shortcut to return all
+fields. For example:
+
+ [loop search="fi=nation/ra=yes/rf=*"]
+
+when used with a hypothetical 'nation' table would be equivalent to:
+
+ [loop search="
+ fi=nation
+ ra=yes
+ rf=code,sorder,region,name,tax
+ "]
+
+as well as:
+
+ [loop search="fi=nation/ra=yes/rf=0,1,2,3,4"]
+
+and:
+
+ [query sql="select * from nation"][/query]
+
+However, you probably rarely need to use every single field in a row.
+For maximum maintainability and execution speed the best practice is
+to list by name only the fields you want returned.
+
+=over 4
+
=item mv_return_spec
Returns the string specified as the search (i.e., the value of
@@ -3553,24 +3586,26 @@
database=table parameter with any call to userdb. The global
parameters (default in parens):
- database Sets user database table (userdb)
- show Show the return value of certain functions
- or the error message, if any (0)
- force_lower Force possibly upper-case database fields
- to lower case session variable names (0)
- billing Set the billing fields (see Accounts)
- shipping Set the shipping fields (see Address Book)
- preferences Set the preferences fields (see Preferences)
- bill_field Set field name for accounts (accounts)
- addr_field Set field name for address book (address_book)
- pref_field Set field name for preferences (preferences)
- cart_field Set field name for cart storage (carts)
- pass_field Set field name for password (password)
- time_field Set field for storing last login time (time)
- expire_field Set field for expiration date (expire_date)
- acl Set field for simple access control storage (acl)
- file_acl Set field for file access control storage (file_acl)
- db_acl Set field for database access control storage (db_acl)
+ database Sets user database table (userdb)
+ show Show the return value of certain functions
+ or the error message, if any (0)
+ force_lower Force possibly upper-case database fields
+ to lower case session variable names (0)
+ billing Set the billing fields (see Accounts)
+ shipping Set the shipping fields (see Address Book)
+ preferences Set the preferences fields (see Preferences)
+ bill_field Set field name for accounts (accounts)
+ addr_field Set field name for address book (address_book)
+ pref_field Set field name for preferences (preferences)
+ cart_field Set field name for cart storage (carts)
+ pass_field Set field name for password (password)
+ time_field Set field for storing last login time (time)
+ outboard Set fields that live in another table
+ outboard_key_col Set field providing key for outboard tables
+ expire_field Set field for expiration date (expire_date)
+ acl Set field for simple access control storage (acl)
+ file_acl Set field for file access control storage (file_acl)
+ db_acl Set field for database access control storage (db_acl)
By default the system crypt() call will be used to compare the
password. This is best for security, but the passwords in the user
@@ -3791,7 +3826,10 @@
=item save
Saves all non-special form values that have columns in the user
-database.
+database. If a field is defined as scratch, it retrieves the field
+from the Scratch storage area; otherwise from Values. If the field is
+one of the outboard fields, it will save it in the outboard table
+with the value of outboard_key_col as the key.
=item set_cart
@@ -4071,6 +4109,42 @@
Of course, a pre-existing database with the ACL values will work as
well. It need not be in the UserDB setup.
+=head2 Using more than one table
+
+You can save/retrieve userdb information from more than one table with
+the outboard specifier. It is a key-value comma-separated series of
+field specifications. For instance, if the billing address is to be
+stored in a separate table named "billing", you would do:
+
+ UserDB outboard <<EOF
+ b_fname=billing::first_name,
+ b_lname=billing::last_name,
+ b_address1=billing::address1,
+ b_address2=billing::address2,
+ b_etc=billing::etc
+ EOF
+
+When the user logs in, Interchange will access the first_name field
+in table billing to get the value of b_fname. When the values
+are saved, it will be saved there as well. If you wish to make the
+fields read-only, just set UserDB default scratch "b_fname b_lname
+..." and the values will be retrieved/saved from there. To initialize
+the values for a form, you could do a function after the user logs in:
+
+ [calc]
+ my @s_fields = grep /\S/, split /[\s,\0]+/, $Config->{UserDB}{scratch};
+ for(@s_fields) {
+ $Values->{$_} = $Scratch->{$_};
+ }
+ return;
+ [/calc]
+
+If the fields in the outboard table use another key besides
+username, you can specify the column in the userdb that contains
+the key value:
+
+ UserDB default outboard_key_col account_id
+
=head1 Tracking and Back-End Order Entry
Interchange allows the entry of orders into a system through one of
@@ -4542,11 +4616,11 @@
B<IMPORTANT NOTE: >Interchange attempts to perform operations
securely, but no guarantees or warranties of any kind are made! Since
-Interchange comes with Perl source, it is possible to modify the
+Interchange comes with source code, it is fairly easy to modify the
program to create security problems. One way to minimize this
-possibility is to record digital signatures, using MD5 or PGP, of
-interchange, interchange.cfg, and all modules included in
-Interchange. Check them on a regular basis to ensure they have not
+possibility is to record digital signatures, using MD5 or PGP or
+GnuPG, of interchange, interchange.cfg, and all modules included
+in Interchange. Check them on a regular basis to ensure they have not
been changed.
Interchange uses the SecureURL directive to set the base URL for
@@ -4749,4 +4823,9 @@
the database residing on the UNIX side.
=back
+
+ ________________________________________
+
+Copyright 2001 Red Hat, Inc. Freely redistributable under terms of the
+GNU General Public License.
2.1.2.1 +5 -0 interchange/pod/icfoundation.pod
rev 2.1.2.1, prev_rev 2.1
Index: icfoundation.pod
===================================================================
RCS file: /var/cvs/interchange/pod/icfoundation.pod,v
retrieving revision 2.1
retrieving revision 2.1.2.1
diff -u -u -r2.1 -r2.1.2.1
--- icfoundation.pod 2001/07/18 15:11:03 2.1
+++ icfoundation.pod 2001/11/21 22:17:01 2.1.2.1
@@ -3945,3 +3945,8 @@
to use them, instead of removing them from the database altogether.
That way nothing in admin or demo will break.
+ ________________________________________
+
+Copyright 2001 Red Hat, Inc. Freely redistributable under terms of the
+GNU General Public License.
+
2.1.2.1 +2547 -1484interchange/pod/ictags.pod
rev 2.1.2.1, prev_rev 2.1
Index: ictags.pod
===================================================================
RCS file: /var/cvs/interchange/pod/ictags.pod,v
retrieving revision 2.1
retrieving revision 2.1.2.1
diff -u -u -r2.1 -r2.1.2.1
--- ictags.pod 2001/07/18 15:11:03 2.1
+++ ictags.pod 2001/11/21 22:17:01 2.1.2.1
@@ -6,8 +6,8 @@
=head1 Interchange Tag Reference
-Interchange functions are accessed via ITL, the Interchange Tag
-Language. The pages in a catalog may be mostly HTML, but they will use
+Interchange functions are accessed via the Interchange Tag Language
+(ITL). The pages in a catalog may be mostly HTML, but they will use
ITL tags to provide access to Interchange's functions. ITL is a
superset of MML, or Minivend Markup Language. Minivend was the
predecessor to Interchange.
@@ -19,7 +19,7 @@
This document covers Interchange versions 4.7-4.8.
-=head2 Tag Syntax
+=head1 Tag Syntax
ITL tags are similar to HTML in syntax, in that they accept parameters
or attributes and that there are both I<standalone> and I<container>
@@ -41,10 +41,8 @@
You have a name. It is [value name].
[/if]
-We will usually call the ITL tags B<Interchange tags> or just B<tags>.
+=head2 Standard Syntax
-Standard Syntax
-
The most common syntax is to enclose the tag with its parameters and
attributes in [square brackets]. If the tag has an end tag, the tag
and its end tag will delimit contained body text:
@@ -66,7 +64,7 @@
interchangeable, except that an ending tag must match the tag (i.e.,
don't use [item-list] list [/item_list]).
-HTML-Comment
+=head2 HTML-Comment
ITL also allows you to use '<!--[' and ']-->' as interchangeable
alternatives to plain square brackets: [tagname] and
@@ -102,7 +100,7 @@
See the I<Template Parsing Order> appendix if you are modifying the
special administrative interface pages and intend to use this syntax.
-HTML-Embedded
+=head2 HTML-Embedded
As an alternative syntax, you can usually embed an Interchange tag as
an attribute within an HTML tag. This allows some HTML editors to work
@@ -162,7 +160,7 @@
-I<Named vs. Positional Parameters>
+=head2 I<Named vs. Positional Parameters>
There are two styles of supplying parameters to a tag: named and
positional.
@@ -226,7 +224,7 @@
Note that the argument to B<href> ('scan') did not need to be quoted;
only the argument to B<arg>, which contained a tag, needed the quotes.
-I<Universal Attributes>
+=head2 I<Universal Attributes>
Universal attributes apply to all tags, though each tag specifies its
own default for the attribute. The code implementing universal
@@ -344,13 +342,13 @@
Deprecated
-Tag-specific Attributes
+=head2 Tag-specific Attributes
Each tag may accept additional named attributes which vary from tag to
tag. Please see the entry for the tag in question for details about
tag-specific attributes.
-I<Attribute Arrays and Hashes>
+=head2 I<Attribute Arrays and Hashes>
Some tags allow you to pass an array or hash as the value of an
attribute. For an ordinary tag, the syntax is as follows:
@@ -405,7 +403,7 @@
$Tag->routine( { entry => $hashref } );
-=head2 Looping tags and Sub-tags
+=head1 Looping tags and Sub-tags
I<>Certain tags are not standalone; these are the ones that are
interpreted as part of a surrounding looping tag like [loop],
@@ -444,8 +442,7 @@
[PREFIX-last]
-[PREFIX-line] (tab-delimited list of parameters returned, can do
-tail-slice)
+[PREFIX-line] (tab-delimited list of parameters returned)
[PREFIX-match]
@@ -453,9 +450,11 @@
[PREFIX-next]
+[PREFIX-options]
+
[PREFIX-param]
-[PREFIX-options]
+[PREFIX-pos]
[PREFIX-price]
@@ -469,10 +468,10 @@
[if-PREFIX-field]
-[if-PREFIX-param]
-
[if-PREFIX-modifier] (hash list only)
+[if-PREFIX-param]
+
[if-PREFIX-pos]
[modifier-name]
@@ -491,9 +490,11 @@
[search-list] item [item-code], [item-field price], [item-increment]
[query] sql [sql-code], [sql-field price], [sql-increment]
-Sub-tag behavior is consistent among the looping tags.
+Sub-tag behavior is consistent among the looping tags. Subtags are
+parsed during evaluation of the enclosing loop, I<before> any regular
+tags within the loop.
-There are two types of looping lists; ARRAY and HASH.
+There are two types of looping lists: ARRAY and HASH.
An array list is the normal output of a [query], a search, or a
[loop] tag. It returns from 1 to N return fields, defined in the
@@ -555,13 +556,8 @@
{ foo => 'fooN', bar => 'barN' },
]
-Parse Order
+=head2 [I<PREFIX-accessories> arglist]
-Subtags are parsed during evaluation of the enclosing loop, I<before>
-any regular tags within the loop
-
-[I<PREFIX-accessories> arglist]
-
Except for the usual differences that apply to all subtags (such as
parsing order), these are more or less equivalent for an array-type
S<list:>
@@ -577,8 +573,7 @@
current item hash is passed so that a value default can be
established.
-[I<PREFIX-alternate> N] DIVISIBLE [else] NOT DIVISIBLE
-[/else][/PREFIX-alternate]
+=head2 [I<PREFIX-alternate> N] DIVISIBLE [else] NOT DIVISIBLE [/else][/PREFIX-alternate]
Set up an alternation sequence. If the item-increment is divisible by
`N', the text will be displayed. If an `[else]NOT DIVISIBLE
@@ -590,12 +585,13 @@
[item-alternate 2]EVEN[else]ODD[/else][/item-alternate]
[item-alternate 3]BY 3[else]NOT by 3[/else][/item-alternate]
-[I<PREFIX-calc>] 2 + [item-field price] [/PREFIX-calc]
+=head2 [I<PREFIX-calc>] 2 + [item-field price] [/PREFIX-calc]
-Calls perl via the equivalent of the [calc] [/calc] tag pair. Much
-faster to execute.
+Executes Perl code in the tag body. This is equivalent to the [calc]
+[/calc] tag pair, except it's calculated at loop time instead of later
+when the rest of the page is parsed.
-[I<PREFIX-change>][condition] ... [/condition] TEXT [/PREFIX-change]
+=head2 [I<PREFIX-change>][condition] ... [/condition] TEXT [/PREFIX-change]
Sets up a breaking sequence that occurs when the contents of
[condition] [/condition] change. The most common one is a category
@@ -654,21 +650,21 @@
subcategory once, while showing the name for every product. (The
will prevent blanked table cells if you use a border.)
-[I<PREFIX-code>]
+=head2 [I<PREFIX-code>]
The key or code of the current loop. In an [item-list] this is always
the product code; in a loop list it is the value of the current
argument; in a search it is whatever you have defined as the first
mv_return_field (rf).
-[I<PREFIX-data> table field]
+=head2 [I<PREFIX-data> table field]
Calls the column field in database table table for the current
[PREFIX-code]. This may or may not be equivalent to [PREFIX-field
field] depending on whether your search table is defined as one of
the ProductFiles.
-[I<PREFIX-description>]
+=head2 [I<PREFIX-description>]
The description of the current item, as defined in the catalog.cfg
directive DescriptionField. In the demo, it would be the value of
@@ -678,18 +674,18 @@
fails, then the attribute description will be substituted. This is
useful to supply shopping cart descriptions for on-the-fly items.
-[I<PREFIX-discount>]
+=head2 [I<PREFIX-discount>]
The price of the current item is calculated, and the difference
between that price and the list price (quantity one) price is output.
This may have different behavior than you expect if you set the
[discount] [/discount] tag along with quantity pricing.
-[I<PREFIX-discount_subtotal>]
+=head2 [I<PREFIX-discount_subtotal>]
Inserts the discounted subtotal of the ordered items.
-[I<PREFIX-field>]
+=head2 [I<PREFIX-field>]
Looks up a field value for the current item in one of several places,
in this order:
@@ -714,9 +710,10 @@
foo_field. Unless foo is in ProductFiles and the code is not
present in a previous product file, you will get a blank or some value
you don't want. What you really want is [loop-data foo foo_field],
-which specifically addresses the table foo.
+which specifically addresses the table foo. See also
+[PREFIX-param]> and [PREFIX-pos]>.
-[I<PREFIX-increment>]
+=head2 [I<PREFIX-increment>]
The current count on the list, starting from either 1 in a
zero-anchored list like [loop] or [item-list], or from the match
@@ -725,33 +722,50 @@
If you skip items with [PREFIX-last] or [PREFIX-next], the count is
NOT adjusted.
-[I<PREFIX-last>] CONDITION [/PREFIX-last]
+=head2 [I<PREFIX-last>] CONDITION [/PREFIX-last]
If CONDITION evaluates true (a non-whitespace value that is not
specifically zero) then this will be the last item displayed.
+
+=head2 [I<PREFIX-line> start_column]
+
+Returns all array values from the current looping row in a single
+string, with each value separated by a tab, roughly equivalent to
+this:
+
+ [PREFIX-pos 0](tab)[PREFIX-pos 1](tab)[PREFIX-pos 2](tab)[...]
+
+for however many fields were returned in that row.
+
+This is useful as a quick way to see all your results at a glance and
+verify your search specification.
-[I<PREFIX-modifier> attribute]
+If the optional start_column attribute is given, the output starts
+with that column instead of column 0.
+=head2 [I<PREFIX-modifier> attribute]
+
If the item is a hash list (i.e. [item-list]), this will return the
value of the attribute.
-[I<PREFIX-next>] CONDITION [/PREFIX-next]
+=head2 [I<PREFIX-next>] CONDITION [/PREFIX-next]
If CONDITION evaluates true (a non-whitespace value that is not
specifically zero) then this item is skipped.
-
-[I<PREFIX-param> name]
-[I<PREFIX-pos> N]
+=head2 [I<PREFIX-param> name]
-Returns the array parameter associated with the looping tag row. Each
-looping list returns an array of return fields, set in searches
-with mv_return_field or rf. The default is only to return the
-code of the search result, but by setting those parameters you can
-return more than one item.
+=head2 [I<PREFIX-pos> N]
-[PREFIX-pos N] outputs the I<N>th field as returned; [PREFIX-param]
-returns it by name.
+Returns the value of the array parameter associated with the looping
+tag row. Each looping list returns an array of return fields, set
+in searches with mv_return_field or rf. The default is only to
+return the code of the search result, but by setting those parameters
+you can return whichever columns you wish.
+
+[PREFIX-pos N] outputs the data from the I<N>th field as returned
+(starting with 0); [PREFIX-param] lets you access the data by field
+name instead of number.
In a [query ...] ITL tag you can select multiple return fields with
something like:
@@ -765,27 +779,27 @@
row. Another synonym is [prefix-pos 0]; and [prefix-pos 1] is the same
as [prefix-param bar].
-[I<PREFIX-price>]
+=head2 [I<PREFIX-price>]
-The price of the current code, formatted for currency. If
-Interchange's pricing routines cannot determine the price (i.e. it is
-not a valid product or on-the-fly item) then zero is returned. If the
-list is a hash list, the price will be modified by its quantity or
-other applicable attributes (like size in the demo).
+The price of the product identified by the current code, formatted for
+currency. If Interchange's pricing routines cannot determine the price
+(i.e. it is not a valid product or on-the-fly item) then zero is
+returned. If the list is a hash list, the price will be modified by
+its quantity or other applicable attributes (like size in the
+demo).
-[I<PREFIX-quantity>]
+=head2 [I<PREFIX-quantity>]
The value of the quantity attribute in a hash list. Most commonly
used to display the quantity of an item in a shopping cart
[item-list].
-[I<PREFIX-subtotal>]
+=head2 [I<PREFIX-subtotal>]
The [PREFIX-quantity] times the [PREFIX-price]. This does take
discounts into effect.
-[I<if-PREFIX-data> table field] IF text [else] ELSE text [/else]
-[/if-PREFIX-data]
+=head2 [I<if-PREFIX-data> table field] IF text [else] ELSE text [/else] [/if-PREFIX-data]
Examines the data field, i.e. [PREFIX-data table field], and if it is
non-blank and non-zero then the IF text will be returned. If it is
@@ -800,13 +814,12 @@
Careful, a space is not a false value!
-[I<if-PREFIX-field> field] IF text [else] ELSE text [/else]
-[/if-PREFIX-field]
+=head2 [I<if-PREFIX-field> field] IF text [else] ELSE text [/else] [/if-PREFIX-field]
Same as [if-PREFIX-data ...] except uses the same data rules as
[PREFIX-field].
-[I<modifier-name> attribute]
+=head2 [I<modifier-name> attribute]
Outputs a variable name which will set an appropriate variable name
for setting the attribute in a form (usually a shopping cart). Outputs
@@ -818,7 +831,7 @@
etc.
-[I<quantity-name>]
+=head2 [I<quantity-name>]
Outputs for successive items in the list:
@@ -1611,7 +1624,44 @@
base ==> type
comp ==> compare
operator ==> op
+ [and type term op compare]
+
+ Parameters Description Default
+ base Alias for type DEFAULT_VALUE
+ comp Alias for compare DEFAULT_VALUE
+ compare DEFAULT_VALUE
+ op DEFAULT_VALUE
+ operator Alias for op DEFAULT_VALUE
+ term DEFAULT_VALUE
+ type DEFAULT_VALUE
+
+ Attributes Default
+ interpolate (reparse) No
+
+ Other_Charactreristics
+ Invalidates cache no
+ Container tag No
+ Has Subtags No
+ Nests Yes
+
+B<Tag expansion example:>
+
+ [and type term op compare]
+---
+ TAGRESULT
+
+B<ASP-like Perl call:>
+
+ $Tag->and( { compare => VALUE_compare
+ op => VALUE_op
+ term => VALUE_term
+ type => VALUE_type
+}, $body );
+
+or similarly with positional parameters,
+ $Tag->and(type,term,op,compare, $attribute_hash_reference, $body);
+
Description
The [and ...] tag is only used in conjunction with [if ...]. Example:
@@ -1626,6 +1676,14 @@
See [if ...].
+I<compare>
+
+I<op>
+
+I<term>
+
+I<type>
+
=head2 area
Alias: B<href>
@@ -1791,14 +1849,8 @@
Allows you to assign numeric values to preempt calculation of one or
more of the following S<tags:>
-=over 4
-
-=item *
-
[handling], [salestax], [shipping], and [subtotal]
-=back
-
The assignment is persistent within a user's session until you clear
it, an assigned tag will return your value instead of calculating a
value.
@@ -1836,14 +1888,8 @@
The assign tag allows you to assign numeric override values to one
or more of the following S<tags:>
-=over 4
-
-=item *
-
[handling], [salestax], [shipping], and [subtotal]
-=back
-
An assigned tag will return your value rather than calculating its own
until you clear the assignment.
@@ -1948,7 +1994,36 @@
OR
$Tag->attr_list($hash, $BODY);
+ [attr_list hash]
+
+ Parameters Description Default
+ hash DEFAULT_VALUE
+
+ Attributes Default
+ interpolate No
+ reparse Yes
+
+ Other_Charactreristics
+ Invalidates cache no
+ Container tag Yes
+ Has Subtags No
+ Nests No
+
+B<Tag expansion example:>
+
+ [attr_list hash]
+---
+ TAGRESULT
+
+B<ASP-like Perl call:>
+
+ $Tag->attr_list( { hash => VALUE_hash
+}, $body );
+or similarly with positional parameters,
+
+ $Tag->attr_list(hash, $attribute_hash_reference, $body);
+
Description
Tags an attribute list with values from a hash. Designed for use in
@@ -2000,6 +2075,8 @@
Displays false text if the value of {key} is blank or zero, and
nothing otherwise.
+I<hash>
+
=head2 banner
Implements random or rotating banner ads. See also I<Banner/Ad
@@ -2168,6 +2245,37 @@
None. This tag doesn't work with embedded Perl due to special
processing.
+ [bounce href if]
+
+ Parameters Description Default
+ href DEFAULT_VALUE
+ if DEFAULT_VALUE
+
+ Attributes Default
+ interpolate (reparse) No
+
+ Other_Charactreristics
+ Invalidates cache no
+ Container tag No
+ Has Subtags No
+ Nests Yes
+
+B<Tag expansion example:>
+
+ [bounce href if]
+---
+ TAGRESULT
+
+B<ASP-like Perl call:>
+
+ $Tag->bounce( { href => VALUE_href
+ if => VALUE_if
+}, $body );
+
+or similarly with positional parameters,
+
+ $Tag->bounce(href,if, $attribute_hash_reference, $body);
+
Description
The [bounce ...] tag is designed to send an HTTP redirect (302 status
@@ -2204,6 +2312,10 @@
[bounce href="/"]
[/if]
+I<href>
+
+I<if>
+
=head2 calc
Calculates the value of the enclosed arithmetic expression.
@@ -2281,12 +2393,42 @@
OR
$Tag->cart($name);
+ [cart name]
+
+ Parameters Description Default
+ name DEFAULT_VALUE
+
+ Attributes Default
+ interpolate (reparse) No
+
+ Other_Charactreristics
+ Invalidates cache YES
+ Container tag No
+ Has Subtags No
+ Nests Yes
+
+B<Tag expansion example:>
+
+ [cart name]
+---
+ TAGRESULT
+
+B<ASP-like Perl call:>
+
+ $Tag->cart( { name => VALUE_name
+}, $body );
+or similarly with positional parameters,
+
+ $Tag->cart(name, $attribute_hash_reference, $body);
+
Description
Sets the name of the current shopping cart for display of shipping,
price, total, subtotal, shipping, and nitems tags.
+I<name>
+
=head2 catch
The page content contained within the [catch I<label>][/catch]
@@ -2369,6 +2511,32 @@
I<try>
+ [catch ]
+
+ Attributes Default
+ interpolate (reparse) No
+
+ Other_Charactreristics
+ Invalidates cache No
+ Container tag No
+ Has Subtags No
+ Nests Yes
+
+B<Tag expansion example:>
+
+ [catch ]
+---
+ TAGRESULT
+
+B<ASP-like Perl call:>
+
+ $Tag->catch( {
+}, $body );
+
+or similarly with positional parameters,
+
+ $Tag->catch(, $attribute_hash_reference, $body);
+
Description
The page content contained within the [catch I<label>][/catch]
@@ -2425,7 +2593,35 @@
OR
$Tag->cgi($name);
+ [cgi name]
+
+ Parameters Description Default
+ name DEFAULT_VALUE
+
+ Attributes Default
+ interpolate (reparse) No
+
+ Other_Charactreristics
+ Invalidates cache YES
+ Container tag No
+ Has Subtags No
+ Nests Yes
+
+B<Tag expansion example:>
+
+ [cgi name]
+---
+ TAGRESULT
+
+B<ASP-like Perl call:>
+
+ $Tag->cgi( { name => VALUE_name
+}, $body );
+or similarly with positional parameters,
+
+ $Tag->cgi(name, $attribute_hash_reference, $body);
+
Description
Displays the value of a CGI variable B<submitted to the current page>.
@@ -2440,6 +2636,8 @@
This is the same as $CGI->{foo} in embedded Perl.
+I<name>
+
=head2 checked
Summary
@@ -2470,7 +2668,38 @@
OR
$Tag->checked($name, $value, $ATTRHASH);
+ [checked name valueother_named_attributes]
+
+ Parameters Description Default
+ name DEFAULT_VALUE
+ value DEFAULT_VALUE
+
+ Attributes Default
+ ATT1 none
+ interpolate (reparse) No
+
+ Other_Charactreristics
+ Invalidates cache YES
+ Container tag No
+ Has Subtags No
+ Nests Yes
+
+B<Tag expansion example:>
+
+ [checked name value]
+---
+ TAGRESULT
+
+B<ASP-like Perl call:>
+ $Tag->checked( { name => VALUE_name
+ value => VALUE_value
+}, $body );
+
+or similarly with positional parameters,
+
+ $Tag->checked(name,value, $attribute_hash_reference, $body);
+
Description
You can provide a "memory" for drop-down menus, radio buttons, and
@@ -2499,6 +2728,10 @@
want to use the volatile CGI space (i.e. [cgi foo]) use the option
cgi=1.
+I<name>
+
+I<value>
+
=head2 control
Returns named scratchpad field or copies named scratch variable to
@@ -2509,121 +2742,96 @@
Summary
-Parameters: B<name default>
-
-=over 4
-
-=item *
-
-name
-
-=over 8
+ [control name defaultother_named_attributes]
-=item *
+ Parameters Description Default
+ default Value to return if scratchpad variable missing or emptyDEFAULT_VALUE
+ name Name of scratchpad variable to set or returnDEFAULT_VALUE
+ reset Resets scratchpad (i.e. $::Control array) by setting special scratch variable 'control_index' to 0. Control_index is an index into the $::Control == $Vend::Session->{control} array of hashrefs.(must not specify name; may specify default)DEFAULT_VALUE
+ set Copies named scratch variable (i.e., from $::Scratch) to scratchpad with current control index.DEFAULT_VALUE
-Name of scratchpad variable to set or return
+ Attributes Default
+ ATT1 none
+ interpolate (reparse) No
-=back
+ Other_Charactreristics
+ Invalidates cache no
+ Container tag No
+ Has Subtags No
+ Nests Yes
-=item *
+B<Tag expansion example:>
-default
+ [control name default]
+---
+ TAGRESULT
-=over 8
+B<ASP-like Perl call:>
-=item *
+ $Tag->control( { default => VALUE_default
+ name => VALUE_name
+}, $body );
-Value to return if scratchpad variable missing or empty
+or similarly with positional parameters,
-=back
+ $Tag->control(name,default, $attribute_hash_reference, $body);
-=back
+Description
-Attributes
+Returns named scratchpad field or copies named scratch variable to
+scratchpad. Returns value specified by 'default' attribute if
+scratchpad variable is undefined or empty. Calling without a name
+moves to next scratchpad. Calling without a name and 'reset=1' returns
+to first scratchpad page.
-=over 4
+I<default>
-=item *
+Value to return if scratchpad variable missing or empty
-reset (must not specify name; may specify default)
+I<name>
-=over 8
+Name of scratchpad variable to set or return
-=item *
+I<reset>
Resets scratchpad (i.e. $::Control array) by setting special scratch
variable 'control_index' to 0. Control_index is an index into the
$::Control == $Vend::Session->{control} array of hashrefs.
-=back
+=over 4
=item *
-set
+(must not specify name; may specify default)
-=over 8
+=back
-=item *
+I<set>
Copies named scratch variable (i.e., from $::Scratch) to scratchpad
with current control index.
-=back
+=head2 control_set
-=back
+Bulk-sets scratchpad variables on the scratchpad page specified by
+'index'. Note that, unlike [control], this does not copy values from
+scratch.
-B<The attribute hash reference is passed> to the subroutine after the
-parameters as the last argument. B<This may mean that there are
-parameters not shown here.>
+Summary
-Must pass named parameter interpolate=1 to cause interpolation.
+This example sets var_one, var_two and var_three in the scratchpad on
+page 5 (index begins with 0).
-Invalidates cache: B<no>
+ [control_set index=4]
+ [var_one]var_one_value[/var_one]
+ [var_two]var_two_value[/var_two]
+ [var_three]var_three_value[/var_three]
+ [/control_set]
-Called Routine:
+Parameters: B<index>
-B<ASP-like Perl call:>
+Positional parameters in same order.
- $Tag->control(
- {
- name => VALUE,
- default => VALUE,
- }
- )
-
- OR
-
- $Tag->control($name, $default, $ATTRHASH);
-
-Description
-
-Returns named scratchpad field or copies named scratch variable to
-scratchpad. Returns value specified by 'default' attribute if
-scratchpad variable is undefined or empty. Calling without a name
-moves to next scratchpad. Calling without a name and 'reset=1' returns
-to first scratchpad page.
-
-=head2 control_set
-
-Bulk-sets scratchpad variables on the scratchpad page specified by
-'index'. Note that, unlike [control], this does not copy values from
-scratch.
-
-Summary
-
-This example sets var_one, var_two and var_three in the scratchpad on
-page 5 (index begins with 0).
-
- [control_set index=4]
- [var_one]var_one_value[/var_one]
- [var_two]var_two_value[/var_two]
- [var_three]var_three_value[/var_three]
- [/control_set]
-
-Parameters: B<index>
-
-Positional parameters in same order.
-
B<The attribute hash reference is passed> after the parameters but
before the container text argument. B<This may mean that there are
parameters not shown here.>
@@ -2649,13 +2857,45 @@
OR
$Tag->control_set($index, $ATTRHASH, $BODY);
+ [control_set indexother_named_attributes]
+
+ Parameters Description Default
+ index DEFAULT_VALUE
+
+ Attributes Default
+ ATT1 none
+ interpolate No
+ reparse Yes
+
+ Other_Charactreristics
+ Invalidates cache no
+ Container tag Yes
+ Has Subtags No
+ Nests No
+B<Tag expansion example:>
+
+ [control_set index]
+---
+ TAGRESULT
+
+B<ASP-like Perl call:>
+
+ $Tag->control_set( { index => VALUE_index
+}, $body );
+
+or similarly with positional parameters,
+
+ $Tag->control_set(index, $attribute_hash_reference, $body);
+
Description
Bulk-sets scratchpad variables on the scratchpad page specified by
'index'. Note that, unlike [control], this does not copy values from
scratch.
+I<index>
+
=head2 counter
Summary
@@ -2683,7 +2923,36 @@
Attribute aliases
name ==> file
+ [counter file]
+
+ Parameters Description Default
+ file DEFAULT_VALUE
+ name Alias for file DEFAULT_VALUE
+
+ Attributes Default
+ interpolate (reparse) No
+
+ Other_Charactreristics
+ Invalidates cache YES
+ Container tag No
+ Has Subtags No
+ Nests Yes
+
+B<Tag expansion example:>
+
+ [counter file]
+---
+ TAGRESULT
+
+B<ASP-like Perl call:>
+
+ $Tag->counter( { file => VALUE_file
+}, $body );
+or similarly with positional parameters,
+
+ $Tag->counter(file, $attribute_hash_reference, $body);
+
Description
Manipulates a persistent counter, by default incrementing it and
@@ -2716,6 +2985,8 @@
Shows the value of the counter without incrementing or decrementing
it.
+I<file>
+
=head2 currency
Summary
@@ -2747,7 +3018,38 @@
OR
$Tag->currency($convert, $noformat, $BODY);
+ [currency convert noformat]
+
+ Parameters Description Default
+ convert DEFAULT_VALUE
+ noformat DEFAULT_VALUE
+
+ Attributes Default
+ interpolate No
+ reparse Yes
+
+ Other_Charactreristics
+ Invalidates cache no
+ Container tag Yes
+ Has Subtags No
+ Nests No
+
+B<Tag expansion example:>
+
+ [currency convert noformat]
+---
+ TAGRESULT
+B<ASP-like Perl call:>
+
+ $Tag->currency( { convert => VALUE_convert
+ noformat => VALUE_noformat
+}, $body );
+
+or similarly with positional parameters,
+
+ $Tag->currency(convert,noformat, $attribute_hash_reference, $body);
+
Description
When passed a value of a single number, formats it according to the
@@ -2769,6 +3071,10 @@
will cause the number 8.982,04 to be displayed.
+I<convert>
+
+I<noformat>
+
=head2 data
Summary
@@ -2810,30 +3116,70 @@
database ==> table
name ==> field
row ==> key
+ [data table field keyother_named_attributes]
+
+ Parameters Description Default
+ base Alias for table DEFAULT_VALUE
+ code Alias for key DEFAULT_VALUE
+ col Alias for field DEFAULT_VALUE
+ column Alias for field DEFAULT_VALUE
+ database Alias for table DEFAULT_VALUE
+ field DEFAULT_VALUE
+ hash DEFAULT_VALUE
+ key DEFAULT_VALUE
+ name Alias for field DEFAULT_VALUE
+ row Alias for key DEFAULT_VALUE
+ table DEFAULT_VALUE
+
+ Attributes Default
+ ATT1 none
+ interpolate (reparse) No
+
+ Other_Charactreristics
+ Invalidates cache no
+ Container tag No
+ Has Subtags No
+ Nests Yes
+
+B<Tag expansion example:>
+
+ [data table field key]
+---
+ TAGRESULT
+
+B<ASP-like Perl call:>
+
+ $Tag->data( { field => VALUE_field
+ key => VALUE_key
+ table => VALUE_table
+}, $body );
+or similarly with positional parameters,
+
+ $Tag->data(table,field,key, $attribute_hash_reference, $body);
+
Description
Syntax: [data table=db_table column=column_name key=key
filter="uc|lc|name|namecase|no_white|etc."* append=1* value="value to
set to"* increment=1* ]
-Returns the value of the field in a database table, or (DEPRECATED)
-from the session namespace. If the optional B<value> is supplied,
-the entry will be changed to that value. If the option increment* is
-present, the field will be atomically incremented with the value in
-B<value>. Use negative numbers in value to decrement. The append
-attribute causes the value to be appended; and finally, the filter
-attribute is a set of Interchange filters that are applied to the data
-1) after it is read; or 2)before it is placed in the table.
+Returns the value of the field in a database table, or from the
+session namespace. If the optional B<value> is supplied, the entry
+will be changed to that value. If the option increment* is present,
+the field will be atomically incremented with the value in B<value>.
+Use negative numbers in value to decrement. The append attribute
+causes the value to be appended; and finally, the filter attribute
+is a set of Interchange filters that are applied to the data 1) after
+it is read; or 2)before it is placed in the table.
If a DBM-based database is to be modified, it must be flagged writable
on the page calling the write tag. Use [tag flag write]products[/tag]
to mark the products database writable, for example. B<This must be
done before ANY access to that table.>
-Deprecated Behavior: (replace with session tag). In addition, the
-[data ...] tag can access a number of elements in the Interchange
-session database:
+In addition, the [data ...] tag can access a number of elements in
+the Interchange session database:
accesses Accesses within the last 30 seconds
arg The argument passed in a [page ...] or [area ...] tag
@@ -2853,11 +3199,44 @@
user The REMOTE_USER string
username User name logged in as (UserDB feature)
-NOTE: Databases will hide session values, so don't name a database
+Note: Databases will hide session values, so don't name a database
"session". or you won't be able to use the [data ...] tag to read
them. Case is sensitive, so in a pinch you could call the database
"Session", but it would be better not to use that name at all.
+I<field>
+
+The name of the field whose value you want to fetch. Required unless
+returning the entire row in combination with the hash option.
+
+I<hash>
+
+The hash option causes the data tag to return its results (the entire
+row, if you omit the field parameter) as a reference to a hash with
+column names as keys into the values of the row.
+
+An example:
+
+ $row_hash = $Tag->data({
+ table => 'products',
+ key => 'os28004',
+ hash => 1,
+ });
+
+You could then access desired values this way:
+
+ $out = 'Price: ' . $row_hash->{price};
+
+I<key>
+
+The key that identifies the row containing the value(s) you want to
+fetch. Required.
+
+I<table>
+
+The name of the Interchange-defined table you want to fetch data from.
+Required.
+
=head2 default
Summary
@@ -2888,7 +3267,38 @@
OR
$Tag->default($name, $default, $ATTRHASH);
+ [default name defaultother_named_attributes]
+
+ Parameters Description Default
+ default DEFAULT_VALUE
+ name DEFAULT_VALUE
+
+ Attributes Default
+ ATT1 none
+ interpolate (reparse) No
+
+ Other_Charactreristics
+ Invalidates cache YES
+ Container tag No
+ Has Subtags No
+ Nests Yes
+
+B<Tag expansion example:>
+
+ [default name default]
+---
+ TAGRESULT
+
+B<ASP-like Perl call:>
+
+ $Tag->default( { default => VALUE_default
+ name => VALUE_name
+}, $body );
+or similarly with positional parameters,
+
+ $Tag->default(name,default, $attribute_hash_reference, $body);
+
Description
Returns the value of the user form variable variable if it is
@@ -2896,6 +3306,10 @@
if there is no default supplied. Got that? This tag is DEPRECATED
anyway.
+I<default>
+
+I<name>
+
=head2 description
Summary
@@ -2924,6 +3338,36 @@
OR
$Tag->description($code, $base);
+ [description code base]
+
+ Parameters Description Default
+ base DEFAULT_VALUE
+ code DEFAULT_VALUE
+
+ Attributes Default
+ interpolate (reparse) No
+
+ Other_Charactreristics
+ Invalidates cache no
+ Container tag No
+ Has Subtags No
+ Nests Yes
+
+B<Tag expansion example:>
+
+ [description code base]
+---
+ TAGRESULT
+
+B<ASP-like Perl call:>
+
+ $Tag->description( { base => VALUE_base
+ code => VALUE_code
+}, $body );
+
+or similarly with positional parameters,
+
+ $Tag->description(code,base, $attribute_hash_reference, $body);
Description
@@ -2939,6 +3383,10 @@
a different database field; for example desc_en for English,
desc_fr for French, etc.
+I<base>
+
+I<code>
+
=head2 discount
Summary
@@ -2969,7 +3417,36 @@
OR
$Tag->discount($code, $BODY);
+ [discount code]
+
+ Parameters Description Default
+ code DEFAULT_VALUE
+
+ Attributes Default
+ interpolate No
+ reparse Yes
+
+ Other_Charactreristics
+ Invalidates cache YES
+ Container tag Yes
+ Has Subtags No
+ Nests No
+B<Tag expansion example:>
+
+ [discount code]
+---
+ TAGRESULT
+
+B<ASP-like Perl call:>
+
+ $Tag->discount( { code => VALUE_code
+}, $body );
+
+or similarly with positional parameters,
+
+ $Tag->discount(code, $attribute_hash_reference, $body);
+
Description
Product discounts can be set upon display of any page. The discounts
@@ -3041,6 +3518,8 @@
[/calc][/currency]
[/item-list]
+I<code>
+
=head2 dump
Dumps client connection information, cart contents, query value,
@@ -3069,70 +3548,76 @@
OR
$Tag->dump($);
-
-Description
-
-Dumps client connection information, cart contents, query value,
-contents of environment, session, and CGI with Data::Dumper to the
-page. This is useful for debugging.
+ [dump ]
-=head2 ecml
+ Attributes Default
+ interpolate (reparse) No
-Uses ECML (Electronic Commerce Markup Language) module to map
-Interchange forms/userdb to ECML checkout
+ Other_Charactreristics
+ Invalidates cache no
+ Container tag No
+ Has Subtags No
+ Nests Yes
-Summary
+B<Tag expansion example:>
-Parameters: B<name function>
+ [dump ]
+---
+ TAGRESULT
-=over 4
+B<ASP-like Perl call:>
-=item *
+ $Tag->dump( {
+}, $body );
-function (default = 'widget')
+or similarly with positional parameters,
-Place form boxes on page:
+ $Tag->dump(, $attribute_hash_reference, $body);
-=back
+Description
- [ecml name]
- [ecml address]
+Dumps client connection information, cart contents, query value,
+contents of environment, session, and CGI with Data::Dumper to the
+page. This is useful for debugging.
-Magic database entry from country database:
+=head2 ecml
- [ecml country]
+Uses ECML (Electronic Commerce Markup Language) module to map
+Interchange forms/userdb to ECML checkout
-Map values back to Interchange variables for saving in UserDB:
+Summary
- <INPUT TYPE=hidden NAME=mv_click CHECKED VALUE="ECML_map">
- [set ECML_map]
- [ecml function=mapback]
- [/set]
+ [ecml name functionother_named_attributes]
-Positional parameters in same order.
+ Parameters Description Default
+ function ecml function (default = 'widget') DEFAULT_VALUE
+ name DEFAULT_VALUE
-B<The attribute hash reference is passed> to the subroutine after the
-parameters as the last argument. B<This may mean that there are
-parameters not shown here.>
+ Attributes Default
+ ATT1 none
+ interpolate (reparse) No
-Must pass named parameter interpolate=1 to cause interpolation.
+ Other_Charactreristics
+ Invalidates cache no
+ Container tag No
+ Has Subtags No
+ Nests Yes
-Invalidates cache: B<no>
+B<Tag expansion example:>
-Called Routine:
+ [ecml name function]
+---
+ TAGRESULT
B<ASP-like Perl call:>
- $Tag->ecml(
- {
- name => VALUE,
- function => VALUE,
- }
- )
+ $Tag->ecml( { function => VALUE_function
+ name => VALUE_name
+}, $body );
- OR
+or similarly with positional parameters,
- $Tag->ecml($name, $function, $ATTRHASH);
+ $Tag->ecml(name,function, $attribute_hash_reference, $body);
Description
@@ -3209,6 +3694,12 @@
and map the results back. If you have fname and lname, then it
will not.
+I<function>
+
+ecml function (default = 'widget')
+
+I<name>
+
=head2 either
The [either]this[or]that[/either] implements a check for the first
@@ -3250,7 +3741,33 @@
OR
$Tag->either($BODY);
+ [either ]
+
+ Attributes Default
+ interpolate No
+ reparse Yes
+
+ Other_Charactreristics
+ Invalidates cache no
+ Container tag Yes
+ Has Subtags No
+ Nests No
+
+B<Tag expansion example:>
+
+ [either ]
+---
+ TAGRESULT
+
+B<ASP-like Perl call:>
+
+ $Tag->either( {
+}, $body );
+or similarly with positional parameters,
+
+ $Tag->either(, $attribute_hash_reference, $body);
+
Description
B<NO Description>
@@ -3284,7 +3801,36 @@
OR
$Tag->error($name, $ATTRHASH);
+ [error nameother_named_attributes]
+
+ Parameters Description Default
+ name DEFAULT_VALUE
+
+ Attributes Default
+ ATT1 none
+ interpolate (reparse) No
+
+ Other_Charactreristics
+ Invalidates cache no
+ Container tag No
+ Has Subtags No
+ Nests Yes
+B<Tag expansion example:>
+
+ [error name]
+---
+ TAGRESULT
+
+B<ASP-like Perl call:>
+
+ $Tag->error( { name => VALUE_name
+}, $body );
+
+or similarly with positional parameters,
+
+ $Tag->error(name, $attribute_hash_reference, $body);
+
Description
[error var options]
@@ -3370,7 +3916,7 @@
std_label=<label string for error message>
used with 'required' to display a standardized error format. The HTML
-formating can bet set via the global variable MV_ERROR_STD_LABEL with
+formatting can be set via the global variable MV_ERROR_STD_LABEL with
the default being:
<FONT COLOR=RED>label_str<SMALL><I>(%s)</I></SMALL></FONT>
@@ -3386,55 +3932,86 @@
specify your own label string, it will insert HTML anywhere you have
{REQUIRED: HTML}, but only when the field is required.
+I<name>
+
=head2 export
Exports a database to a delimited text file (see also import).
Summary
-Parameters: B<table>
+ [export tableother_named_attributes]
-Positional parameters in same order.
+ Parameters Description Default
+ base Alias for table DEFAULT_VALUE
+ database Alias for table DEFAULT_VALUE
+ delete If 'verify' attribute also set, deletes column specified by 'field' attribute rather than adding a column.DEFAULT_VALUE
+ field The column to add (or delete if delete and verify are true)DEFAULT_VALUE
+ file Filename to export to. Note that the NoAbsolute directive and other conditions may affect actual location of the output file.DEFAULT_VALUE
+ sort Output sorted rows (usage: sort="sort_field:sort_option") (see search/form variable 'mv_sort_option' for sort options)DEFAULT_VALUE
+ table The table to export DEFAULT_VALUE
+ type Specifies the [line, record] delimiter types. Either NOTES or one of the following: my %Delimiter = ( 2 => ["\n", "\n\n"], 3 => ["\n%%\n", "\n%%%\n"], 4 => ["CSV","\n"], 5 => ['|', "\n"], 6 => ["\t", "\n"], 7 => ["\t", "\n"], 8 => ["\t", "\n"], LINE => ["\n", "\n\n"], '%%%' => ["\n%%\n", "\n%%%\n"], '%%' => ["\n%%\n", "\n%%%\n"], CSV => ["CSV","\n"], PIPE => ['|', "\n"], TAB => ["\t", "\n"], );If using NOTESnotes_separator (defaults to "\f")notes_field (defaults to "notes_field")DEFAULT_VALUE
+ verify must be true when deleting a column DEFAULT_VALUE
-=over 4
+ Attributes Default
+ ATT1 none
+ interpolate (reparse) No
-=item *
+ Other_Charactreristics
+ Invalidates cache YES
+ Container tag No
+ Has Subtags No
+ Nests Yes
-table
+B<Tag expansion example:>
-=over 8
+ [export table]
+---
+ TAGRESULT
-=item *
+B<ASP-like Perl call:>
-The table to export
+ $Tag->export( { table => VALUE_table
+}, $body );
-=back
+or similarly with positional parameters,
-=item *
+ $Tag->export(table, $attribute_hash_reference, $body);
-file
+Description
-=item *
+Exports 'table' to a delimited text file. See also import tag which
+imports files into databases.
+
+I<delete>
+
+If 'verify' attribute also set, deletes column specified by 'field'
+attribute rather than adding a column.
+
+I<field>
+
+The column to add (or delete if delete and verify are true)
+
+I<file>
Filename to export to. Note that the NoAbsolute directive and other
conditions may affect actual location of the output file.
-=item *
+I<sort>
-type
+Output sorted rows (S<usage:> sort="I<sort_field>:I<sort_option>")
+(see search/form variable 'mv_sort_option' for sort options)
-=over 8
+I<table>
-=item *
+The table to export
+
+I<type>
Specifies the [line, record] delimiter types. Either NOTES or one of
the following:
my %Delimiter = (
-
-=back
-
-=back
2 => ["\n", "\n\n"],
3 => ["\n%%\n", "\n%%%\n"],
4 => ["CSV","\n"],
@@ -3452,19 +4029,16 @@
=over 4
-=over 8
-
=item *
If using NOTES
-=over 12
+=over 8
=item *
notes_separator (defaults to "\f")
-
=item *
notes_field (defaults to "notes_field")
@@ -3472,91 +4046,11 @@
=back
=back
-
-=item *
-
-field
-
-=over 8
-
-=item *
-
-The column to add (or delete if delete and verify are true)
-
-=back
-
-=item *
-
-delete
-
-=over 8
-
-=item *
-
-If 'verify' attribute also set, deletes column specified by 'field'
-attribute rather than adding a column.
-
-=back
-
-=item *
-verify
+I<verify>
-=over 8
-
-=item *
-
must be true when deleting a column
-=back
-
-=item *
-
-sort
-
-=over 8
-
-=item *
-
-Output sorted rows (S<usage:> sort="I<sort_field>:I<sort_option>")
-(see search/form variable 'mv_sort_option' for sort options)
-
-=back
-
-=back
-
-B<The attribute hash reference is passed> to the subroutine after the
-parameters as the last argument. B<This may mean that there are
-parameters not shown here.>
-
-Must pass named parameter interpolate=1 to cause interpolation.
-
-Invalidates cache: B<YES>
-
-Called Routine:
-
-B<ASP-like Perl call:>
-
- $Tag->export(
- {
- table => VALUE,
- }
- )
-
- OR
-
- $Tag->export($table, $ATTRHASH);
-
-Attribute aliases
-
- base ==> table
- database ==> table
-
-Description
-
-Exports 'table' to a delimited text file. See also import tag which
-imports files into databases.
-
=head2 field
Summary
@@ -3593,7 +4087,42 @@
field ==> name
key ==> code
row ==> code
+ [field name code]
+
+ Parameters Description Default
+ code DEFAULT_VALUE
+ col Alias for name DEFAULT_VALUE
+ column Alias for name DEFAULT_VALUE
+ field Alias for name DEFAULT_VALUE
+ key Alias for code DEFAULT_VALUE
+ name DEFAULT_VALUE
+ row Alias for code DEFAULT_VALUE
+
+ Attributes Default
+ interpolate (reparse) No
+
+ Other_Charactreristics
+ Invalidates cache no
+ Container tag No
+ Has Subtags No
+ Nests Yes
+
+B<Tag expansion example:>
+
+ [field name code]
+---
+ TAGRESULT
+
+B<ASP-like Perl call:>
+
+ $Tag->field( { code => VALUE_code
+ name => VALUE_name
+}, $body );
+
+or similarly with positional parameters,
+ $Tag->field(name,code, $attribute_hash_reference, $body);
+
Description
HTML example: <PARAM MV=field MV.COL=column MV.ROW=key>
@@ -3608,6 +4137,10 @@
default, [field column key] is the same as [data products column
key].
+I<code>
+
+I<name>
+
=head2 file
Summary
@@ -3636,7 +4169,37 @@
OR
$Tag->file($name, $type);
+ [file name type]
+
+ Parameters Description Default
+ name DEFAULT_VALUE
+ type DEFAULT_VALUE
+
+ Attributes Default
+ interpolate (reparse) No
+
+ Other_Charactreristics
+ Invalidates cache no
+ Container tag No
+ Has Subtags No
+ Nests Yes
+
+B<Tag expansion example:>
+
+ [file name type]
+---
+ TAGRESULT
+
+B<ASP-like Perl call:>
+ $Tag->file( { name => VALUE_name
+ type => VALUE_type
+}, $body );
+
+or similarly with positional parameters,
+
+ $Tag->file(name,type, $attribute_hash_reference, $body);
+
Description
Inserts the contents of the named file. The file should normally be
@@ -3647,6 +4210,10 @@
The optional type parameter will do an appropriate ASCII
translation on the file before it is sent.
+I<name>
+
+I<type>
+
=head2 filter
Summary
@@ -3677,7 +4244,36 @@
OR
$Tag->filter($op, $BODY);
+ [filter op]
+
+ Parameters Description Default
+ op DEFAULT_VALUE
+
+ Attributes Default
+ interpolate No
+ reparse Yes
+
+ Other_Charactreristics
+ Invalidates cache no
+ Container tag Yes
+ Has Subtags No
+ Nests No
+
+B<Tag expansion example:>
+
+ [filter op]
+---
+ TAGRESULT
+
+B<ASP-like Perl call:>
+
+ $Tag->filter( { op => VALUE_op
+}, $body );
+
+or similarly with positional parameters,
+ $Tag->filter(op, $attribute_hash_reference, $body);
+
Description
Applies any of Interchange's standard filters to an arbitrary value,
@@ -3937,6 +4533,8 @@
name=foo filter="lookup.products.price.extra"] will send ('bar',
'foo', 'products', 'price', 'extra').
+I<op>
+
=head2 flag
Controls Interchange flags. For example, flags affect database access
@@ -3945,209 +4543,121 @@
Summary
-Parameters: B<type>
+ [flag type]
-type may be one of the following
+ Parameters Description Default
+ build Forces build of static Interchange page specified by the name attributeDEFAULT_VALUE
+ checkhtml DEFAULT_VALUE
+ commit Attempts to commit transactions DEFAULT_VALUE
+ flag Alias for type DEFAULT_VALUE
+ name Alias for type DEFAULT_VALUE
+ read Flags the table read-only DEFAULT_VALUE
+ rollback Attempts to rollback transactions DEFAULT_VALUE
+ show Normally, the [flag] tag returns nothing to the page. Setting 'show=1' causes the tag to return status, if any.DEFAULT_VALUE
+ table Alias for tables DEFAULT_VALUE
+ tables The name of the table to flag'table' is an aliasDEFAULT_VALUE
+ transactions Reopens the database in transactions mode if Safe.pm is not active (e.g., in a global subroutine, usertag or [perl global=1] tag). The limitation exists because it is not possible to reopen a database within Safe.pm.DEFAULT_VALUE
+ type DEFAULT_VALUE
+ value The boolean value of the flag DEFAULT_VALUE
+ write Flags the table writeable by default (or read-only if you also set the value=0 attribute)DEFAULT_VALUE
-=over 4
+ Attributes Default
+ interpolate (reparse) No
-=item *
+ Other_Charactreristics
+ Invalidates cache YES
+ Container tag No
+ Has Subtags No
+ Nests Yes
-read
+B<Tag expansion example:>
-=over 8
+ [flag type]
+---
+ TAGRESULT
-=item *
+B<ASP-like Perl call:>
-Flags the table read-only
+ $Tag->flag( { type => VALUE_type
+}, $body );
-=back
+or similarly with positional parameters,
-=item *
+ $Tag->flag(type, $attribute_hash_reference, $body);
-write
+Description
-=over 8
-
-=item *
-
-Flags the table writeable by default (or read-only if you also set the
-value=0 attribute)
-
-=back
+The flag tag controls database access and transactions.
-=item *
+If a DBM-based database is to be modified, it must be flagged writable
+on the page calling the write tag.
-transactions
+For example, you can call
-=over 8
+ [flag type=write value=1 table=products]
-=item *
+to mark the products DBM database writable. B<This must be done
+before ANY access to that table.>
-Reopens the database in transactions mode if I<Safe.pm> is not active
-(e.g., in a global subroutine, usertag or [perl global=1] tag). The
-limitation exists because it is not possible to reopen a database
-within I<Safe.pm>.
+Note that SQL databases are always writable if allowed by the SQL
+database itself, and in-memory databases will never be written.
-=back
+Using [flag build] forces static build of a page, even if it
+contains dynamic elements.
-=item *
+I<build>
-commit
+Forces build of static Interchange page specified by the name
+attribute
-=over 8
+I<checkhtml>
-=item *
+I<commit>
Attempts to commit transactions
-=back
-
-=item *
-
-rollback
+I<read>
-=over 8
+Flags the table read-only
-=item *
+I<rollback>
Attempts to rollback transactions
-
-=back
-
-=item *
-
-build
-
-=over 8
-
-=item *
-Forces build of static Interchange page specified by the name
-attribute
-
-=back
+I<show>
-=item *
-
-checkhtml
+Normally, the [flag] tag returns nothing to the page. Setting
+'show=1' causes the tag to return status, if any.
-=back
+I<tables>
-Attributes
+The name of the table to flag
=over 4
=item *
-'flag' and 'name'
-
-=over 8
-
-=item *
-
-Aliases for 'type' (except for 'type=build')
-
-=back
-
-=item *
-
-tables
-
-=over 8
-
-=item *
-
-The name of the table to flag
-
-=item *
-
'table' is an alias
=back
-=item *
+I<transactions>
-value
+Reopens the database in transactions mode if I<Safe.pm> is not active
+(e.g., in a global subroutine, usertag or [perl global=1] tag). The
+limitation exists because it is not possible to reopen a database
+within I<Safe.pm>.
-=over 8
+I<type>
-=item *
+I<value>
The boolean value of the flag
-
-=back
-
-=item *
-
-name
-
-=over 8
-
-=item *
-
-Name of page to build or alias for 'type'
-
-=back
-
-=item *
-
-show
-
-=over 8
-
-=item *
-
-Normally, the [flag] tag returns nothing to the page. Setting
-'show=1' causes the tag to return status, if any.
-
-=back
-
-=back
-
-Must pass named parameter interpolate=1 to cause interpolation.
-
-Invalidates cache: B<YES>
-
-Called Routine:
-
-B<ASP-like Perl call:>
-
- $Tag->flag(
- {
- type => VALUE,
- }
- )
-
- OR
- $Tag->flag($type, $ATTRHASH);
+I<write>
-Attribute aliases
-
- flag ==> type
- name ==> type
- table ==> tables
-
-Description
-
-The flag tag controls database access and transactions.
-
-If a DBM-based database is to be modified, it must be flagged writable
-on the page calling the write tag.
-
-For example, you can call
-
- [flag type=write value=1 table=products]
-
-to mark the products DBM database writable. B<This must be done
-before ANY access to that table.>
-
-Note that SQL databases are always writable if allowed by the SQL
-database itself, and in-memory databases will never be written.
-
-Using [flag build] forces static build of a page, even if it
-contains dynamic elements.
+Flags the table writeable by default (or read-only if you also set the
+value=0 attribute)
=head2 fly_list
@@ -4180,7 +4690,38 @@
OR
$Tag->fly_list($code, $base, $BODY);
+ [fly_list code base]
+
+ Parameters Description Default
+ base DEFAULT_VALUE
+ code DEFAULT_VALUE
+
+ Attributes Default
+ interpolate No
+ reparse Yes
+
+ Other_Charactreristics
+ Invalidates cache no
+ Container tag Yes
+ Has Subtags No
+ Nests No
+
+B<Tag expansion example:>
+
+ [fly_list code base]
+---
+ TAGRESULT
+
+B<ASP-like Perl call:>
+
+ $Tag->fly_list( { base => VALUE_base
+ code => VALUE_code
+}, $body );
+
+or similarly with positional parameters,
+ $Tag->fly_list(code,base, $attribute_hash_reference, $body);
+
Description
Syntax: [fly-list prefix=tag_prefix* code=code*]
@@ -4208,6 +4749,10 @@
then it will be [fly-code]; prefix=foo would cause [foo-code],
etc.
+I<base>
+
+I<code>
+
=head2 fly_tax
Summary
@@ -4235,12 +4780,42 @@
OR
$Tag->fly_tax($area);
+ [fly_tax area]
+
+ Parameters Description Default
+ area DEFAULT_VALUE
+
+ Attributes Default
+ interpolate (reparse) No
+
+ Other_Charactreristics
+ Invalidates cache no
+ Container tag No
+ Has Subtags No
+ Nests Yes
+
+B<Tag expansion example:>
+
+ [fly_tax area]
+---
+ TAGRESULT
+
+B<ASP-like Perl call:>
+
+ $Tag->fly_tax( { area => VALUE_area
+}, $body );
+or similarly with positional parameters,
+
+ $Tag->fly_tax(area, $attribute_hash_reference, $body);
+
Description
Builds a tax rate from taxarea, taxrate, taxshipping,
variable values, and the SalesTax directive value.
+I<area>
+
=head2 goto
Skips page content between [goto I<name>] and [label I<name>].
@@ -4342,12 +4917,47 @@
modes ==> mode
name ==> mode
tables ==> table
+ [handling modeother_named_attributes]
+
+ Parameters Description Default
+ carts Alias for cart DEFAULT_VALUE
+ mode DEFAULT_VALUE
+ modes Alias for mode DEFAULT_VALUE
+ name Alias for mode DEFAULT_VALUE
+ tables Alias for table DEFAULT_VALUE
+
+ Attributes Default
+ ATT1 none
+ interpolate (reparse) No
+
+ Other_Charactreristics
+ Invalidates cache YES
+ Container tag No
+ Has Subtags No
+ Nests Yes
+
+B<Tag expansion example:>
+ [handling mode]
+---
+ TAGRESULT
+
+B<ASP-like Perl call:>
+
+ $Tag->handling( { mode => VALUE_mode
+}, $body );
+
+or similarly with positional parameters,
+
+ $Tag->handling(mode, $attribute_hash_reference, $body);
+
Description
Calculates and inserts handling costs. Accepts the same noformat and
convert arguments as the shipping tag.
+I<mode>
+
=head2 harness
Test harness block. Similar to try/catch. Interprets the body text and
@@ -4358,215 +4968,140 @@
Summary
- [harness expected="good" name=my_test_number_1]
- [good]The Expected Return Value[/good]
- [not]Some Specifically Bad Return Value[/not]
- Tags and code to test here
- [/harness]
+ [harness other_named_attributes]
-No parameters.
+ Parameters Description Default
+ expected Tagname for delimiting your expected return value (default "OK")DEFAULT_VALUE
+ name This will appear in your output message (useful for distinguishing harness tags from one another) (default "testnnn")DEFAULT_VALUE
-=over 4
+ Attributes Default
+ ATT1 none
+ interpolate No
+ reparse Yes
-=item *
+ Other_Charactreristics
+ Invalidates cache no
+ Container tag Yes
+ Has Subtags No
+ Nests No
-expected (default "OK")
+B<Tag expansion example:>
-=over 8
+ [harness ]
+---
+ TAGRESULT
-=item *
+B<ASP-like Perl call:>
-Tagname for delimiting your expected return value
+ $Tag->harness( {
+}, $body );
-=back
+or similarly with positional parameters,
-=item *
+ $Tag->harness(, $attribute_hash_reference, $body);
-name (default "testI<nnn>")
+Description
-=over 8
+Test harness block. Similar to try/catch. Interprets the body text and
+checks the return value against expected and explicitly bad cases.
-=item *
+Returns DIED, OK, or NOT OK message along with the harness name and
+your result if not the expected value.
-This will appear in your output message (useful for distinguishing
-harness tags from one another)
+I<expected>
-=back
+Tagname for delimiting your expected return value (default "OK")
-=back
+I<name>
-B<The attribute hash reference is passed> after the parameters but
-before the container text argument. B<This may mean that there are
-parameters not shown here.>
+This will appear in your output message (useful for distinguishing
+harness tags from one another) (default "testI<nnn>")
-Must pass named parameter interpolate=1 to cause interpolation.
+=head2 href
-This is a container tag, i.e. [harness] FOO [/harness]. Nesting: NO
+Alias for [I<area>] tag.
-Invalidates cache: B<no>
+=head2 html_table
-Called Routine:
-
-B<ASP-like Perl call:>
-
- $Tag->harness(
- {
- },
- BODY
- )
-
- OR
+Builds an HTML table
- $Tag->harness($ATTRHASH, $BODY);
+Summary
-Description
+ [html_table other_named_attributes]
-Test harness block. Similar to try/catch. Interprets the body text and
-checks the return value against expected and explicitly bad cases.
+ Parameters Description Default
+ columns Whitespace-delimited list of columns DEFAULT_VALUE
+ delimiter Line delimiter to use if tag body is delimited text rather than an array reference (default "\t")DEFAULT_VALUE
+ fc HTML attributes for <TD> in the first cellDEFAULT_VALUE
+ fr HTML attributes for <TR> in the first row DEFAULT_VALUE
+ record_delim Record delimiter to use if tag body is delimited text rather than an array reference (default "\n")DEFAULT_VALUE
+ td HTML attributes for <TD> DEFAULT_VALUE
+ th HTML attributes for <TH> DEFAULT_VALUE
+ tr HTML attributes for <TR> DEFAULT_VALUE
-Returns DIED, OK, or NOT OK message along with the harness name and
-your result if not the expected value.
+ Attributes Default
+ ATT1 none
+ interpolate No
+ reparse Yes
-=head2 href
+ Other_Charactreristics
+ Invalidates cache no
+ Container tag Yes
+ Has Subtags No
+ Nests No
-Alias for [I<area>] tag.
+B<Tag expansion example:>
-=head2 html_table
+ [html_table ]
+---
+ TAGRESULT
-Builds an HTML table
+B<ASP-like Perl call:>
-Summary
+ $Tag->html_table( {
+}, $body );
-=over 4
+or similarly with positional parameters,
-=item *
+ $Tag->html_table(, $attribute_hash_reference, $body);
-columns
+Description
-=over 8
+Builds an HTML table
-=item *
+I<columns>
Whitespace-delimited list of columns
-=back
-
-=item *
-
-delimiter (default "\t")
-
-=over 8
-
-=item *
+I<delimiter>
Line delimiter to use if tag body is delimited text rather than an
-array reference
+array reference (default "\t")
-=back
+I<fc>
-=item *
+HTML attributes for <TD> in the first cell
-record_delim (default "\n")
+I<fr>
-=over 8
+HTML attributes for <TR> in the first row
-=item *
+I<record_delim>
Record delimiter to use if tag body is delimited text rather than an
-array reference
-
-=back
-
-=item *
-
-tr
-
-=over 8
-
-=item *
+array reference (default "\n")
-HTML attributes for <TR>
-
-=back
-
-=item *
-
-td
-
-=over 8
-
-=item *
+I<td>
HTML attributes for <TD>
-
-=back
-
-=item *
-
-th
-=over 8
-
-=item *
+I<th>
HTML attributes for <TH>
-
-=back
-
-=item *
-
-fc
-
-=over 8
-
-=item *
-
-HTML attributes for <TD> in the first cell
-
-=back
-
-=item *
-
-fr
-
-=over 8
-
-=item *
-
-HTML attributes for <TR> in the first row
-
-=back
-
-=back
-
-B<The attribute hash reference is passed> after the parameters but
-before the container text argument. B<This may mean that there are
-parameters not shown here.>
-
-Must pass named parameter interpolate=1 to cause interpolation.
-
-This is a container tag, i.e. [html_table] FOO [/html_table]. Nesting:
-NO
-
-Invalidates cache: B<no>
-
-Called Routine:
-
-B<ASP-like Perl call:>
-
- $Tag->html_table(
- {
- },
- BODY
- )
- OR
-
- $Tag->html_table($ATTRHASH, $BODY);
-
-Description
+I<tr>
-Builds an HTML table
+HTML attributes for <TR>
=head2 if
@@ -4599,7 +5134,46 @@
comp ==> compare
condition ==> compare
operator ==> op
+ [if type term op compare]
+
+ Parameters Description Default
+ base Alias for type DEFAULT_VALUE
+ comp Alias for compare DEFAULT_VALUE
+ compare DEFAULT_VALUE
+ condition Alias for compare DEFAULT_VALUE
+ op DEFAULT_VALUE
+ operator Alias for op DEFAULT_VALUE
+ term DEFAULT_VALUE
+ type DEFAULT_VALUE
+
+ Attributes Default
+ interpolate No
+ reparse Yes
+
+ Other_Charactreristics
+ Invalidates cache YES
+ Container tag Yes
+ Has Subtags No
+ Nests No
+
+B<Tag expansion example:>
+
+ [if type term op compare]
+---
+ TAGRESULT
+
+B<ASP-like Perl call:>
+
+ $Tag->if( { compare => VALUE_compare
+ op => VALUE_op
+ term => VALUE_term
+ type => VALUE_type
+}, $body );
+
+or similarly with positional parameters,
+ $Tag->if(type,term,op,compare, $attribute_hash_reference, $body);
+
Description
Named call example: [if type="type" term="field" op="op"
@@ -4914,6 +5488,14 @@
the result of the test. If arguments are added to [if explicit args],
those will be passed as arguments are in the [I<per>l] construct.
+I<compare>
+
+I<op>
+
+I<term>
+
+I<type>
+
=head2 import
Summary
@@ -4952,7 +5534,41 @@
base ==> table
database ==> table
+ [import table typeother_named_attributes]
+
+ Parameters Description Default
+ base Alias for table DEFAULT_VALUE
+ database Alias for table DEFAULT_VALUE
+ table DEFAULT_VALUE
+ type DEFAULT_VALUE
+
+ Attributes Default
+ ATT1 none
+ interpolate No
+ reparse Yes
+
+ Other_Charactreristics
+ Invalidates cache YES
+ Container tag Yes
+ Has Subtags No
+ Nests No
+
+B<Tag expansion example:>
+
+ [import table type]
+---
+ TAGRESULT
+
+B<ASP-like Perl call:>
+
+ $Tag->import( { table => VALUE_table
+ type => VALUE_type
+}, $body );
+or similarly with positional parameters,
+
+ $Tag->import(table,type, $attribute_hash_reference, $body);
+
Description
Named attributes:
@@ -4995,6 +5611,10 @@
records. If using NOTES mode, you must use a separator, which by
default is a form-feed character (^L).
+I<table>
+
+I<type>
+
=head2 include
Summary
@@ -5015,138 +5635,145 @@
Not applicable.
+ [include file locale]
+
+ Parameters Description Default
+ file DEFAULT_VALUE
+ locale DEFAULT_VALUE
+
+ Attributes Default
+ interpolate (reparse) No
+
+ Other_Charactreristics
+ Invalidates cache no
+ Container tag No
+ Has Subtags No
+ Nests Yes
+
+B<Tag expansion example:>
+
+ [include file locale]
+---
+ TAGRESULT
+
+B<ASP-like Perl call:>
+
+ $Tag->include( { file => VALUE_file
+ locale => VALUE_locale
+}, $body );
+
+or similarly with positional parameters,
+
+ $Tag->include(file,locale, $attribute_hash_reference, $body);
+
Description
Same as [file name] except interpolates for all Interchange tags
and variables. Does NOT do locale translations.
+I<file>
+
+I<locale>
+
=head2 index
Creates an index for the specified table.
Summary
-Parameters: B<table>
+ [index tableother_named_attributes]
-Positional parameters in same order.
+ Parameters Description Default
+ base Alias for table DEFAULT_VALUE
+ basefile Database filename. Exports the table to this filename if old or missing before indexing. See also the export tag for additional relevent attributes such as delimiter type, etc.DEFAULT_VALUE
+ col alias for fields DEFAULT_VALUE
+ columns alias for fields DEFAULT_VALUE
+ database Alias for table DEFAULT_VALUE
+ export_only Just do the export if necessary (not the index).DEFAULT_VALUE
+ extension Index file extension (default "idx") DEFAULT_VALUE
+ fields field(s) to index DEFAULT_VALUE
+ fn alias for fields DEFAULT_VALUE
+ show_status Return '1' to the page if successful DEFAULT_VALUE
+ spec The index specification DEFAULT_VALUE
+ table DEFAULT_VALUE
-=over 4
+ Attributes Default
+ ATT1 none
+ interpolate (reparse) No
-=item *
+ Other_Charactreristics
+ Invalidates cache YES
+ Container tag No
+ Has Subtags No
+ Nests Yes
-extension (default "idx")
+B<Tag expansion example:>
-=over 8
+ [index table]
+---
+ TAGRESULT
-=item *
+B<ASP-like Perl call:>
-Index file extension
+ $Tag->index( { table => VALUE_table
+}, $body );
-=back
+or similarly with positional parameters,
-=item *
+ $Tag->index(table, $attribute_hash_reference, $body);
-basefile
+Description
-=over 8
+Creates an index for the specified table.
-=item *
+I<basefile>
Database filename. Exports the table to this filename if old or
missing before indexing. See also the export tag for additional
relevent attributes such as delimiter type, etc.
-=back
+I<col>
-=item *
+alias for fields
-export_only
+I<columns>
-=over 8
+alias for fields
-=item *
+I<export_only>
Just do the export if necessary (not the index).
-=back
+I<extension>
-=item *
+Index file extension (default "idx")
-spec
+I<fields>
-=over 8
+field(s) to index
-=item *
+I<fn>
-The index specification
+alias for fields
-=back
+I<show_status>
-=item *
+Return '1' to the page if successful
-fn or fields or col or columns
+I<spec>
-=over 8
+The index specification
-=item *
+I<table>
-field(s) to index
+=head2 item_list
-=back
+Summary
-=item *
+Parameters: B<name>
-show_status
+ONLY THE B<> PARAMETERS ARE POSITIONAL.
-=over 8
-
-=item *
-
-Return '1' to the page if successful
-
-=back
-
-=back
-
-B<The attribute hash reference is passed> to the subroutine after the
-parameters as the last argument. B<This may mean that there are
-parameters not shown here.>
-
-Must pass named parameter interpolate=1 to cause interpolation.
-
-Invalidates cache: B<YES>
-
-Called Routine:
-
-B<ASP-like Perl call:>
-
- $Tag->index(
- {
- table => VALUE,
- }
- )
-
- OR
-
- $Tag->index($table, $ATTRHASH);
-
-Attribute aliases
-
- base ==> table
- database ==> table
-
-Description
-
-Creates an index for the specified table.
-
-=head2 item_list
-
-Summary
-
-Parameters: B<name>
-
-ONLY THE B<> PARAMETERS ARE POSITIONAL.
-
B<The attribute hash reference is passed> after the parameters but
before the container text argument. B<This may mean that there are
parameters not shown here.>
@@ -5181,7 +5808,38 @@
Attribute aliases
cart ==> name
+ [item_list nameother_named_attributes]
+
+ Parameters Description Default
+ cart Alias for name DEFAULT_VALUE
+ name DEFAULT_VALUE
+
+ Attributes Default
+ ATT1 none
+ interpolate No
+ reparse Yes
+
+ Other_Charactreristics
+ Invalidates cache YES
+ Container tag Yes
+ Has Subtags No
+ Nests No
+
+B<Tag expansion example:>
+
+ [item_list name]
+---
+ TAGRESULT
+
+B<ASP-like Perl call:>
+ $Tag->item_list( { name => VALUE_name
+}, $body );
+
+or similarly with positional parameters,
+
+ $Tag->item_list(name, $attribute_hash_reference, $body);
+
Description
Within any page, the [item_list cart*] element shows a list of all the
@@ -5350,6 +6008,8 @@
Evaluates to the name to give an input box in which the customer can
enter the quantity to order.
+I<name>
+
=head2 label
The page label for goto. See [goto] tag for description. Note that
@@ -5361,151 +6021,142 @@
content to skip
[label name=label_name]
-=head2 log
+Summary
-Log contained text to specified file.
+NO SUMMARY SECTION
-Summary
+ [label ]
-Parameters: B<file>
+ Attributes Default
+ interpolate (reparse) No
-=over 4
+ Other_Charactreristics
+ Invalidates cache No
+ Container tag No
+ Has Subtags No
+ Nests Yes
-=item *
+B<Tag expansion example:>
-file
+ [label ]
+---
+ TAGRESULT
-=over 8
+B<ASP-like Perl call:>
-=item *
+ $Tag->label( {
+}, $body );
-name of file to log to. 'file=">I<filename>"' also sets 'create'
-attribute.
+or similarly with positional parameters,
-=back
+ $Tag->label(, $attribute_hash_reference, $body);
-=item *
+Description
-create
+NO DESCRIPTION SECTION
-=over 8
+=head2 log
-=item *
+Log contained text to specified file.
-Set create=1 to create the file if not present
+Summary
-=back
+ [log fileother_named_attributes]
-=item *
+ Parameters Description Default
+ arg Alias for file DEFAULT_VALUE
+ create Set create=1 to create the file if not presentDEFAULT_VALUE
+ delim Line delimiter DEFAULT_VALUE
+ file name of file to log to. 'file=">filename"' also sets 'create' attribute.DEFAULT_VALUE
+ hide Suppress status otherwise returned by tag to the page.DEFAULT_VALUE
+ process Processing (if any) to apply to the content while loggingnostrip (don't strip leading/trailing whitespace and convert "\r\n" to "\n"DEFAULT_VALUE
+ record_delim Record delimiter DEFAULT_VALUE
+ type Log typetext (ordinary text file)quot (delimited entries)error (add Interchange error formatting and time/location stamps)DEFAULT_VALUE
-process
+ Attributes Default
+ ATT1 none
+ interpolate No
+ reparse Yes
-=over 8
+ Other_Charactreristics
+ Invalidates cache no
+ Container tag Yes
+ Has Subtags No
+ Nests No
-=item *
+B<Tag expansion example:>
-Processing (if any) to apply to the content while logging
+ [log file]
+---
+ TAGRESULT
-=over 12
+B<ASP-like Perl call:>
-=item *
+ $Tag->log( { file => VALUE_file
+}, $body );
-nostrip (don't strip leading/trailing whitespace and convert "\r\n" to
-"\n"
+or similarly with positional parameters,
-=back
+ $Tag->log(file, $attribute_hash_reference, $body);
-=back
+Description
-=item *
+Log contained text to specified file.
-delim and record_delim
+I<create>
-=over 8
+Set create=1 to create the file if not present
-=item *
+I<delim>
-Line and record delimiters, respectively
+Line delimiter
-=back
+I<file>
-=item *
+name of file to log to. 'file=">I<filename>"' also sets 'create'
+attribute.
-type
+I<hide>
-=over 8
+Suppress status otherwise returned by tag to the page.
-=item *
+I<process>
-Log type
+Processing (if any) to apply to the content while logging
-=over 12
+=over 4
=item *
-text (ordinary text file)
+nostrip (don't strip leading/trailing whitespace and convert "\r\n" to
+"\n"
+=back
-=item *
+I<record_delim>
-quot (delimited entries)
+Record delimiter
+I<type>
-=item *
+Log type
-error (add Interchange error formatting and time/location stamps)
+=over 4
-=back
+=item *
-=back
+text (ordinary text file)
=item *
-hide
-
-=over 8
+quot (delimited entries)
=item *
-
-Suppress status otherwise returned by tag to the page.
-=back
+error (add Interchange error formatting and time/location stamps)
=back
-B<The attribute hash reference is passed> after the parameters but
-before the container text argument. B<This may mean that there are
-parameters not shown here.>
-
-Must pass named parameter interpolate=1 to cause interpolation.
-
-This is a container tag, i.e. [log] FOO [/log]. Nesting: NO
-
-Invalidates cache: B<no>
-
-Called Routine:
-
-B<ASP-like Perl call:>
-
- $Tag->log(
- {
- file => VALUE,
- },
- BODY
- )
-
- OR
-
- $Tag->log($file, $ATTRHASH, $BODY);
-
-Attribute aliases
-
- arg ==> file
-
-Description
-
-Log contained text to specified file.
-
=head2 loop
Summary
@@ -5548,7 +6199,39 @@
arg ==> list
args ==> list
+ [loop listother_named_attributes]
+
+ Parameters Description Default
+ arg Alias for list DEFAULT_VALUE
+ args Alias for list DEFAULT_VALUE
+ list DEFAULT_VALUE
+
+ Attributes Default
+ ATT1 none
+ interpolate No
+ reparse Yes
+
+ Other_Charactreristics
+ Invalidates cache no
+ Container tag Yes
+ Has Subtags No
+ Nests No
+
+B<Tag expansion example:>
+
+ [loop list]
+---
+ TAGRESULT
+
+B<ASP-like Perl call:>
+
+ $Tag->loop( { list => VALUE_list
+}, $body );
+or similarly with positional parameters,
+
+ $Tag->loop(list, $attribute_hash_reference, $body);
+
Description
HTML example:
@@ -5660,7 +6343,7 @@
See [if-PREFIX-param].
-[if-loop-pos N] IF [else] ELSE [/else][/if-loop-param]
+[if-loop-pos N] IF [else] ELSE [/else][/if-loop-pos]
Only works if you have multiple return fields from a search (or from a
passed list with the lr=1 parameter).
@@ -5759,6 +6442,8 @@
file) of the current item, with currency formatting. If the optional
"noformat" is set, then currency formatting will not be applied.
+I<list>
+
=head2 mail
Mail contained text to recipient specified by 'to' using the program
@@ -5766,105 +6451,70 @@
Summary
-Parameters: B<to>
+ [mail toother_named_attributes]
-Positional parameters in same order.
+ Parameters Description Default
+ extra Additional headers (these will also be added to 'raw' messages)DEFAULT_VALUE
+ hide Suppress tag return value. This would otherwise be the 'success' attribute setting.DEFAULT_VALUE
+ raw Send it raw without creating headers and checking content, recipient, subject, etc.DEFAULT_VALUE
+ show The tag will return the final message with headers in the pageDEFAULT_VALUE
+ success Tag return value if successful (default is 1).DEFAULT_VALUE
+ to DEFAULT_VALUE
-=over 4
+ Attributes Default
+ ATT1 none
+ interpolate No
+ reparse Yes
-=item *
+ Other_Charactreristics
+ Invalidates cache YES
+ Container tag Yes
+ Has Subtags No
+ Nests No
-raw
+B<Tag expansion example:>
-=over 8
+ [mail to]
+---
+ TAGRESULT
-=item *
+B<ASP-like Perl call:>
-Send it raw without creating headers and checking content, recipient,
-subject, etc.
+ $Tag->mail( { to => VALUE_to
+}, $body );
-=back
+or similarly with positional parameters,
-=item *
+ $Tag->mail(to, $attribute_hash_reference, $body);
-extra
+Description
-=over 8
+Mail contained text to recipient specified by 'to' using the program
+specified with the SendMailProgram catalog directive.
-=item *
+I<extra>
Additional headers (these will also be added to 'raw' messages)
-=back
+I<hide>
-=item *
+Suppress tag return value. This would otherwise be the 'success'
+attribute setting.
-success
+I<raw>
-=over 8
+Send it raw without creating headers and checking content, recipient,
+subject, etc.
-=item *
+I<show>
-Tag return value if successful (default is 1).
+The tag will return the final message with headers in the page
-=back
-
-=item *
-
-hide
-
-=over 8
-
-=item *
-
-Suppress tag return value. This would otherwise be the 'success'
-attribute setting.
-
-=back
-
-=item *
-
-show
-
-=over 8
-
-=item *
-
-The tag will return the final message with headers in the page
-
-=back
-
-=back
-
-B<The attribute hash reference is passed> after the parameters but
-before the container text argument. B<This may mean that there are
-parameters not shown here.>
-
-Must pass named parameter interpolate=1 to cause interpolation.
+I<success>
-This is a container tag, i.e. [mail] FOO [/mail]. Nesting: NO
-
-Invalidates cache: B<YES>
-
-Called Routine:
-
-B<ASP-like Perl call:>
-
- $Tag->mail(
- {
- to => VALUE,
- },
- BODY
- )
-
- OR
-
- $Tag->mail($to, $ATTRHASH, $BODY);
-
-Description
+Tag return value if successful (default is 1).
-Mail contained text to recipient specified by 'to' using the program
-specified with the SendMailProgram catalog directive.
+I<to>
=head2 mvasp
@@ -5975,84 +6625,79 @@
Summary
-Parameters: B<name>
+ [nitems name]
-=over 4
+ Parameters Description Default
+ compare Regular expression the specified qualifier attribute's value must match to be counted. This replaces the truth value comparison.Default: None (uses truth value of the specified qualifier attribute)DEFAULT_VALUE
+ name Cart nameDefault: current cart DEFAULT_VALUE
+ qualifier An item attribute that must be true in order to count the item.Default: NoneDEFAULT_VALUE
-=item *
+ Attributes Default
+ interpolate (reparse) No
-name
+ Other_Charactreristics
+ Invalidates cache YES
+ Container tag No
+ Has Subtags No
+ Nests Yes
-=over 8
+B<Tag expansion example:>
-=item *
+ [nitems name]
+---
+ TAGRESULT
-Cart name
+B<ASP-like Perl call:>
-=item *
+ $Tag->nitems( { name => VALUE_name
+}, $body );
-S<Default:> current cart
+or similarly with positional parameters,
-=back
+ $Tag->nitems(name, $attribute_hash_reference, $body);
-=item *
+Description
-qualifier
+Expands into the total number of items ordered so far. Takes an
+optional cart name as a parameter.
-=over 8
+I<compare>
-=item *
+Regular expression the specified qualifier attribute's value must
+match to be counted. This replaces the truth value comparison.
-An item attribute that must be true in order to count the item.
+=over 4
=item *
-S<Default:> None
+S<Default:> None (uses truth value of the specified qualifier
+attribute)
=back
-
-=item *
-
-compare
-=over 8
+I<name>
-=item *
+Cart name
-Regular expression the specified qualifier attribute's value must
-match to be counted. This replaces the truth value comparison.
+=over 4
=item *
-
-S<Default:> None (uses truth value of the specified qualifier
-attribute)
-=back
+S<Default:> current cart
=back
-
-Must pass named parameter interpolate=1 to cause interpolation.
-
-Invalidates cache: B<YES>
-
-Called Routine:
-B<ASP-like Perl call:>
+I<qualifier>
- $Tag->nitems(
- {
- name => VALUE,
- }
- )
+An item attribute that must be true in order to count the item.
- OR
+=over 4
- $Tag->nitems($name, $ATTRHASH);
+=item *
-Description
+S<Default:> None
-Expands into the total number of items ordered so far. Takes an
-optional cart name as a parameter.
+=back
=head2 options
@@ -6082,127 +6727,85 @@
Summary
-Parameters: B<code>
+ [options code]
-=over 4
+ Parameters Description Default
+ bold Boldfaces the labels if the 'label' option is set.Default: FalseDEFAULT_VALUE
+ code Product key (usually sku).No default DEFAULT_VALUE
+ joiner The joiner for the widgets.Default: <BR> DEFAULT_VALUE
+ label Shows labels for the options with the widgets.The following example (using another item from the 'tools' data) illustrates the price and label attributes:=== [options code=os28011 label=1 price=1]--- Handle<BR> <input type=hidden name=mv_item_option value="handle"> <SELECT NAME="mv_order_handle"> <OPTION VALUE="W">Wood handle <OPTION VALUE="E">Ebony handle ($20.00)</SELECT><BR> Blade material<BR> <input type=hidden name=mv_item_option value="blade"> <SELECT NAME="mv_order_blade"> <OPTION VALUE="P">Plastic blade ($-1.22) <OPTION VALUE="S" SELECTED>Steel blade <OPTION VALUE="T">Titanium blade ($100.00)</SELECT>===(again, the output has been reformatted to fit the page).Default: FalseDEFAULT_VALUE
+ price Boolean. If set and the options have prices, the HTML widget(s) will show the prices. This is like the price attribute of the accessories tag.Note that the price_data setting comes from the 'price' column of the options table.Technical note-- If your options table has different mappings, you can control this with $::Variable->{MV_OPTION_TABLE_MAP}False
+ table Table to use for option attributes.Default: 'options'DEFAULT_VALUE
+ td Results as table rows. For example, compare the following example from the 'tools' sample data set with the earlier example:=== [options code=os28005 td=1]--- <td><input type=hidden name=mv_item_option value="logo"> <SELECT NAME="mv_order_logo"> <OPTION VALUE="c">Construct Something <OPTION VALUE="y" SELECTED>Your Logo</SELECT></td> <td><input type=hidden name=mv_item_option value="color"> <INPUT TYPE="radio" NAME="mv_order_color" VALUE="BLK" > Black <INPUT TYPE="radio" NAME="mv_order_color" VALUE="BEIGE" > Beige <INPUT TYPE="radio" NAME="mv_order_color" VALUE="WHITE" > White</td> <td><input type=hidden name=mv_item_option value="bristle"> <SELECT NAME="mv_order_bristle"> <OPTION VALUE="synthetic">Synthetic <OPTION VALUE="camel">Camel Hair</SELECT></td>===(Note that the output was reformatted to fit this page)DEFAULT_VALUE
-=item *
+ Attributes Default
+ interpolate (reparse) No
-code
+ Other_Charactreristics
+ Invalidates cache no
+ Container tag No
+ Has Subtags No
+ Nests Yes
-=over 8
+B<Tag expansion example:>
-=item *
+ [options code]
+---
+ TAGRESULT
-Product key (usually sku).
+B<ASP-like Perl call:>
-=item *
+ $Tag->options( { code => VALUE_code
+}, $body );
-No default
+or similarly with positional parameters,
-=back
+ $Tag->options(code, $attribute_hash_reference, $body);
-=item *
+Description
-table
+NO DESCRIPTION SECTION
-=over 8
+I<bold>
-=item *
+Boldfaces the labels if the 'label' option is set.
-Table to use for option attributes.
+=over 4
=item *
-S<Default:> 'options'
+S<Default:> False
=back
-=item *
+I<code>
-td
+Product key (usually sku).
-=over 8
+=over 4
=item *
-
-Results as table rows. For example, compare the following example from
-the 'tools' sample data set with the earlier example:
-Z<>===
+No default
=back
-=back
- [options code=os28005 td=1]
----
- <td><input type=hidden name=mv_item_option value="logo">
- <SELECT NAME="mv_order_logo">
- <OPTION VALUE="c">Construct Something
- <OPTION VALUE="y" SELECTED>Your Logo</SELECT></td>
- <td><input type=hidden name=mv_item_option value="color">
- <INPUT TYPE="radio" NAME="mv_order_color" VALUE="BLK" > Black
- <INPUT TYPE="radio" NAME="mv_order_color" VALUE="BEIGE" > Beige
- <INPUT TYPE="radio" NAME="mv_order_color" VALUE="WHITE" > White</td>
- <td><input type=hidden name=mv_item_option value="bristle">
- <SELECT NAME="mv_order_bristle">
- <OPTION VALUE="synthetic">Synthetic
- <OPTION VALUE="camel">Camel Hair</SELECT></td>
-Z<>===
+I<joiner>
-(Note that the output was reformatted to fit this page)
+The joiner for the widgets.
=over 4
=item *
-
-price
-
-=over 8
-
-=item *
-
-S<Default:> False
-
-=item *
-
-Boolean. If set and the options have prices, the HTML widget(s) will
-show the prices. This is like the price attribute of the
-accessories tag.
-
-=over 12
-
-=item
-Note that the price_data setting comes from the 'price' column of
-the options table.
-
-
-Technical note-- If your options table has different mappings, you can
-control this with $::Variable->{MV_OPTION_TABLE_MAP}
-
-=back
+S<Default:> <BR>
=back
-
-=item *
-
-label
-=over 8
-
-=item *
+I<label>
Shows labels for the options with the widgets.
-=item *
-
-S<Default:> False
-
-=back
-
-=back
-
The following example (using another item from the 'tools' data)
illustrates the price and label S<attributes:>
@@ -6228,55 +6831,71 @@
=item *
-bold
+S<Default:> False
-=over 8
+=back
-=item *
+I<price>
-Boldfaces the labels if the 'label' option is set.
+Boolean. If set and the options have prices, the HTML widget(s) will
+show the prices. This is like the price attribute of the
+accessories tag.
-=item *
+=over 4
-S<Default:> False
+=item
-=back
+Note that the price_data setting comes from the 'price' column of
+the options table.
-=item *
+Technical note-- If your options table has different mappings, you can
+control this with $::Variable->{MV_OPTION_TABLE_MAP}
-joiner
+=back
-=over 8
+=over 4
=item *
-The joiner for the widgets.
+S<Default:> False
-=item *
+=back
-S<Default:> <BR>
+I<table>
-=back
+Table to use for option attributes.
-=back
+=over 4
-Must pass named parameter interpolate=1 to cause interpolation.
+=item *
-Invalidates cache: B<no>
+S<Default:> 'options'
-Called Routine:
+=back
-B<ASP-like Perl call:>
+I<td>
- $Tag->options(
- {
- code => VALUE,
- }
- )
+Results as table rows. For example, compare the following example from
+the 'tools' sample data set with the earlier example:
- OR
+ ===
+ [options code=os28005 td=1]
+---
+ <td><input type=hidden name=mv_item_option value="logo">
+ <SELECT NAME="mv_order_logo">
+ <OPTION VALUE="c">Construct Something
+ <OPTION VALUE="y" SELECTED>Your Logo</SELECT></td>
+ <td><input type=hidden name=mv_item_option value="color">
+ <INPUT TYPE="radio" NAME="mv_order_color" VALUE="BLK" > Black
+ <INPUT TYPE="radio" NAME="mv_order_color" VALUE="BEIGE" > Beige
+ <INPUT TYPE="radio" NAME="mv_order_color" VALUE="WHITE" > White</td>
+ <td><input type=hidden name=mv_item_option value="bristle">
+ <SELECT NAME="mv_order_bristle">
+ <OPTION VALUE="synthetic">Synthetic
+ <OPTION VALUE="camel">Camel Hair</SELECT></td>
+Z<>===
- $Tag->options($code, $ATTRHASH);
+(Note that the output was reformatted to fit this page)
=head2 or
@@ -6316,11 +6935,56 @@
base ==> type
comp ==> compare
operator ==> op
+ [or type term op compare]
+
+ Parameters Description Default
+ base Alias for type DEFAULT_VALUE
+ comp Alias for compare DEFAULT_VALUE
+ compare DEFAULT_VALUE
+ op DEFAULT_VALUE
+ operator Alias for op DEFAULT_VALUE
+ term DEFAULT_VALUE
+ type DEFAULT_VALUE
+
+ Attributes Default
+ interpolate (reparse) No
+
+ Other_Charactreristics
+ Invalidates cache no
+ Container tag No
+ Has Subtags No
+ Nests Yes
+
+B<Tag expansion example:>
+
+ [or type term op compare]
+---
+ TAGRESULT
+B<ASP-like Perl call:>
+
+ $Tag->or( { compare => VALUE_compare
+ op => VALUE_op
+ term => VALUE_term
+ type => VALUE_type
+}, $body );
+
+or similarly with positional parameters,
+
+ $Tag->or(type,term,op,compare, $attribute_hash_reference, $body);
+
Description
B<NO Description>
+I<compare>
+
+I<op>
+
+I<term>
+
+I<type>
+
=head2 order
Expands into a hypertext link which will include the specified item in
@@ -7031,7 +7695,37 @@
Attribute aliases
base ==> mv_ib
+ [price codeother_named_attributes]
+
+ Parameters Description Default
+ base Alias for mv_ib DEFAULT_VALUE
+ code DEFAULT_VALUE
+
+ Attributes Default
+ ATT1 none
+ interpolate (reparse) No
+ Other_Charactreristics
+ Invalidates cache no
+ Container tag No
+ Has Subtags No
+ Nests Yes
+
+B<Tag expansion example:>
+
+ [price code]
+---
+ TAGRESULT
+
+B<ASP-like Perl call:>
+
+ $Tag->price( { code => VALUE_code
+}, $body );
+
+or similarly with positional parameters,
+
+ $Tag->price(code, $attribute_hash_reference, $body);
+
Description
Arguments:
@@ -7129,6 +7823,8 @@
See I<Product Discounts>.
+I<code>
+
=head2 process
This is a shortcut for the 'process' action, expanding to your catalog
@@ -7706,6 +8402,35 @@
OR
$Tag->row($width, $BODY);
+ [row width]
+
+ Parameters Description Default
+ width DEFAULT_VALUE
+
+ Attributes Default
+ interpolate No
+ reparse Yes
+
+ Other_Charactreristics
+ Invalidates cache no
+ Container tag Yes
+ Has Subtags No
+ Nests No
+
+B<Tag expansion example:>
+
+ [row width]
+---
+ TAGRESULT
+
+B<ASP-like Perl call:>
+
+ $Tag->row( { width => VALUE_width
+}, $body );
+
+or similarly with positional parameters,
+
+ $Tag->row(width, $attribute_hash_reference, $body);
Description
@@ -7745,6 +8470,8 @@
Terminates the column field.
+I<width>
+
=head2 salestax
Summary
@@ -7777,7 +8504,38 @@
Attribute aliases
cart ==> name
+ [salestax name noformat]
+
+ Parameters Description Default
+ cart Alias for name DEFAULT_VALUE
+ name DEFAULT_VALUE
+ noformat DEFAULT_VALUE
+
+ Attributes Default
+ interpolate (reparse) No
+
+ Other_Charactreristics
+ Invalidates cache YES
+ Container tag No
+ Has Subtags No
+ Nests Yes
+
+B<Tag expansion example:>
+
+ [salestax name noformat]
+---
+ TAGRESULT
+B<ASP-like Perl call:>
+
+ $Tag->salestax( { name => VALUE_name
+ noformat => VALUE_noformat
+}, $body );
+
+or similarly with positional parameters,
+
+ $Tag->salestax(name,noformat, $attribute_hash_reference, $body);
+
Description
Expands into the sales tax on the subtotal of all the items ordered so
@@ -7786,6 +8544,10 @@
0. If the noformat tag is present and non-zero, the raw number with no
currency formatting will be given.
+I<name>
+
+I<noformat>
+
=head2 scratch
Summary
@@ -7813,12 +8575,42 @@
OR
$Tag->scratch($name);
+ [scratch name]
+
+ Parameters Description Default
+ name DEFAULT_VALUE
+
+ Attributes Default
+ interpolate (reparse) No
+ Other_Charactreristics
+ Invalidates cache YES
+ Container tag No
+ Has Subtags No
+ Nests Yes
+
+B<Tag expansion example:>
+
+ [scratch name]
+---
+ TAGRESULT
+
+B<ASP-like Perl call:>
+
+ $Tag->scratch( { name => VALUE_name
+}, $body );
+
+or similarly with positional parameters,
+
+ $Tag->scratch(name, $attribute_hash_reference, $body);
+
Description
Returns the contents of a scratch variable to the page. (A scratch
variable is set with a [set] value [/set] container pair.)
+I<name>
+
=head2 scratchd
Deletes the named scratch variable and returns its value before the
@@ -7908,11 +8700,46 @@
args ==> arg
params ==> arg
search ==> arg
+ [search_region argother_named_attributes]
+
+ Parameters Description Default
+ arg DEFAULT_VALUE
+ args Alias for arg DEFAULT_VALUE
+ params Alias for arg DEFAULT_VALUE
+ search Alias for arg DEFAULT_VALUE
+
+ Attributes Default
+ ATT1 none
+ interpolate No
+ reparse Yes
+ Other_Charactreristics
+ Invalidates cache no
+ Container tag Yes
+ Has Subtags No
+ Nests No
+
+B<Tag expansion example:>
+
+ [search_region arg]
+---
+ TAGRESULT
+
+B<ASP-like Perl call:>
+
+ $Tag->search_region( { arg => VALUE_arg
+}, $body );
+
+or similarly with positional parameters,
+
+ $Tag->search_region(arg, $attribute_hash_reference, $body);
+
Description
B<NO Description>
+I<arg>
+
=head2 selected
Summary
@@ -7943,7 +8770,38 @@
OR
$Tag->selected($name, $value, $ATTRHASH);
+ [selected name valueother_named_attributes]
+
+ Parameters Description Default
+ name DEFAULT_VALUE
+ value DEFAULT_VALUE
+ Attributes Default
+ ATT1 none
+ interpolate (reparse) No
+
+ Other_Charactreristics
+ Invalidates cache YES
+ Container tag No
+ Has Subtags No
+ Nests Yes
+
+B<Tag expansion example:>
+
+ [selected name value]
+---
+ TAGRESULT
+
+B<ASP-like Perl call:>
+
+ $Tag->selected( { name => VALUE_name
+ value => VALUE_value
+}, $body );
+
+or similarly with positional parameters,
+
+ $Tag->selected(name,value, $attribute_hash_reference, $body);
+
Description
You can provide a "memory" for drop-down menus, radio buttons, and
@@ -7975,6 +8833,10 @@
want to use the volatile CGI space (i.e. [cgi foo]) use the option
cgi=1.
+I<name>
+
+I<value>
+
=head2 set
Summary
@@ -8005,7 +8867,36 @@
OR
$Tag->set($name, $BODY);
+ [set name]
+
+ Parameters Description Default
+ name DEFAULT_VALUE
+
+ Attributes Default
+ interpolate No
+ reparse Yes
+
+ Other_Charactreristics
+ Invalidates cache YES
+ Container tag Yes
+ Has Subtags No
+ Nests No
+
+B<Tag expansion example:>
+
+ [set name]
+---
+ TAGRESULT
+
+B<ASP-like Perl call:>
+
+ $Tag->set( { name => VALUE_name
+}, $body );
+
+or similarly with positional parameters,
+ $Tag->set(name, $attribute_hash_reference, $body);
+
Description
Sets a scratch variable to I<value>.
@@ -8033,6 +8924,8 @@
Any of these profile values can be set in the OrderProfile files as
well.
+I<name>
+
=head2 set_cookie
Sets browser cookie(s) with the specified attributes.
@@ -8166,101 +9059,82 @@
OR
$Tag->seti($name, $BODY);
+ [seti name]
-Description
-
-Equivalent to the [set] tag, except that it I<interpolates> by
-default.
-
-=head2 setlocale
-
-Sets locale and/or currency for the current page. Can be made
-persistent for the user with the 'persist' option. Resets default
-locale if called without arguments. See also I<Setting the Locale> in
-the template documentation.
-
-Summary
-
-B<Parameters:> B<locale currency>
-
-=over 4
-
-=item *
-
-locale
-
-=over 8
-
-=item *
-
-The locale to use.
-
-=item *
-
-S<Default:> [scratch mv_locale] (see also 'persist' attribute)
-
-=back
-
-=item *
-
-currency
+ Parameters Description Default
+ name DEFAULT_VALUE
-=over 8
+ Attributes Default
+ interpolate No
+ reparse Yes
-=item *
+ Other_Charactreristics
+ Invalidates cache YES
+ Container tag Yes
+ Has Subtags No
+ Nests No
-The currency format to use.
+B<Tag expansion example:>
-=item *
+ [seti name]
+---
+ TAGRESULT
-S<Default:> [scratch mv_currency] (see also 'persist' attribute)
+B<ASP-like Perl call:>
-=back
+ $Tag->seti( { name => VALUE_name
+}, $body );
-=back
+or similarly with positional parameters,
-Positional parameters in same order.
+ $Tag->seti(name, $attribute_hash_reference, $body);
-B<Named Attrbutes>
+Description
-=over 4
+Equivalent to the [set] tag, except that it I<interpolates> by
+default.
-=item *
+I<name>
-persist
+=head2 setlocale
-=over 8
+Sets locale and/or currency for the current page. Can be made
+persistent for the user with the 'persist' option. Resets default
+locale if called without arguments. See also I<Setting the Locale> in
+the template documentation.
-=item *
+Summary
-Setting 'persist=1' also sets the scratch variables, B<mv_locale>
-and B<mv_currency> to specified locale and currency. This makes the
-locale settings persistent for the user's session. Otherwise
-(persist=0), the setlocale tag affects the remainder of the
-current page only.
+ [setlocale ]
-=back
+ Parameters Description Default
+ currency The currency format to use.Default: [scratch mv_currency] (see also 'persist' attribute)DEFAULT_VALUE
+ locale The locale to use.Default: [scratch mv_locale] (see also 'persist' attribute)DEFAULT_VALUE
+ persist Setting 'persist=1' also sets the scratch variables, mv_locale and mv_currency to specified locale and currency. This makes the locale settings persistent for the user's session. Otherwise (persist=0), the setlocale tag affects the remainder of the current page only.DEFAULT_VALUE
-=back
+ Attributes Default
+ interpolate (reparse) No
-Must pass named parameter interpolate=1 to cause interpolation.
+ Other_Charactreristics
+ Invalidates cache no
+ Container tag No
+ Has Subtags No
+ Nests Yes
-Invalidates cache: B<no>
+B<Tag expansion example:>
-Called Routine:
+ [setlocale ]
+---
+ TAGRESULT
B<ASP-like Perl call:>
- $Tag->setlocale(
- {
- locale => VALUE,
- currency => VALUE,
- }
- )
+ $Tag->setlocale( {
+}, $body );
- OR
+or similarly with positional parameters,
- $Tag->setlocale($locale, $currency, $ATTRHASH);
+ $Tag->setlocale(, $attribute_hash_reference, $body);
Description
@@ -8291,222 +9165,153 @@
[comment] Return to the user's default locale [/comment]
[setlocale]
-=head2 shipping
-
-Returns the cost of shipping the items in the cart via the shipping
-mode set with the B<mode> parameter. See also the I<Shipping> section
-of the Database documentation.
-
-Summary
+I<currency>
-Parameters: B<mode>
+The currency format to use.
=over 4
=item *
-
-mode
-
-=over 8
-
-=item *
-S<Aliases:> B<name>, B<modes>
-
-=item *
-
-Whitespace, null or comma delimited list of modes for which to
-calculate shipping cost. See also mv_shipmode.
-
-=item *
-
-S<Default:> [value mv_handling] if B<handling=1> or [value
-mv_shipmode] or 'default'
-
-=back
-
-=item *
-
-table
-
-=over 8
-
-=item *
-
-S<Alias:> B<tables>
-
-=item *
-
-Whitespace-delimited list of tables containing shipping data required
-for perl or query calculations (I<e.g.>, in the 'PERL' field of your
-shipping database - see I<Shipping>). You must specify the tables to
-get past the Perl 'I<Safe.pm>' proctection. For example, you will get
-'I<Safe>' errors if you refer to an SQL table without specifying it
-here.
-
-=item *
-
-S<Default:> None
+S<Default:> [scratch mv_currency] (see also 'persist' attribute)
=back
-
-=item *
-
-cart
-=over 8
-
-=item *
-
-S<Alias:> B<carts>
+I<locale>
-=item *
+The locale to use.
-Comma-delimited list of names of carts to calculate shipping cost for.
+=over 4
=item *
-S<Default:> current cart
+S<Default:> [scratch mv_locale] (see also 'persist' attribute)
=back
-
-=item *
-
-convert
-
-=over 8
-
-=item *
-
-Applies the conversion (if any) set with the PriceDivide catalog
-configuration directive.
-=item *
+I<persist>
-S<Default:> True
-
-=back
+Setting 'persist=1' also sets the scratch variables, B<mv_locale>
+and B<mv_currency> to specified locale and currency. This makes the
+locale settings persistent for the user's session. Otherwise
+(persist=0), the setlocale tag affects the remainder of the
+current page only.
-=item *
+=head2 shipping
-noformat
+Returns the cost of shipping the items in the cart via the shipping
+mode set with the B<mode> parameter. See also the I<Shipping> section
+of the Database documentation.
-=over 8
+Summary
-=item *
+ [shipping mode]
-Returns result as a number rather than a string formatted for the
-current locale's currency.
+ Parameters Description Default
+ add Adds the argument to add as data for a shipping.asc file (in $Vend::Cfg->{ScratchDir}/) and sets it.DEFAULT_VALUE
+ cart Alias: carts Comma-delimited list of names of carts to calculate shipping cost for.Default: current cartDEFAULT_VALUE
+ carts Alias for cart DEFAULT_VALUE
+ convert Applies the conversion (if any) set with the PriceDivide catalog configuration directive.Default: TrueDEFAULT_VALUE
+ default Resets shipping mode to default of [value mv_shipmode]DEFAULT_VALUE
+ file Filename to read shipping from (default is usual shipping database, e.g., shipping.asc)DEFAULT_VALUE
+ format Format for results with label attribute.Default: '<OPTION VALUE="%M"%S>%D (%F)'For example, [shipping mode="FLAT" label=1 format="My Format Desc %D Price %F"]DEFAULT_VALUE
+ handling Boolean-- use [value mv_handling] rather than [value mv_shipping] as first default for mode. Note that this attribute matters only if you do not specify the mode in the tag.Note that this is set by the [handling tag (which calls the shipping tag internally). You should probably use the handling tag rather than setting this directly.Default: FalseDEFAULT_VALUE
+ hide Suppresses output DEFAULT_VALUE
+ label By default, returns HTML <OPTION ...> widget for shipping mode(s), including description and cost. You can override the widget with the format attribute. Note that label overrides noformat.Here is an example from the foundation checkout.html page: [shipping label=1 mode=|E<lbracket>{{CMD[jump="#data"]data}} table=country key='[default country US]' col=shipmodes]| ]DEFAULT_VALUE
+ mode Aliases: name, modes Whitespace, null or comma delimited list of modes for which to calculate shipping cost. See also mv_shipmode.Default: [value mv_handling] if handling=1 or [value mv_shipmode] or 'default'DEFAULT_VALUE
+ modes Alias for mode DEFAULT_VALUE
+ name Alias for mode DEFAULT_VALUE
+ noformat Returns result as a number rather than a string formatted for the current locale's currency.Default: TrueDEFAULT_VALUE
+ reset_messageBoolean. Blanks the session's current shipping message (i.e., $Session->{ship_message}).DEFAULT_VALUE
+ reset_modes Clears list of modes in $Vend::Cfg->{Shipping_line}Default: FalseDEFAULT_VALUE
+ table Alias: tables Whitespace-delimited list of tables containing shipping data required for perl or query calculations (e.g., in the 'PERL' field of your shipping database - see Shipping). You must specify the tables to get past the Perl 'Safe.pm' proctection. For example, you will get 'Safe' errors if you refer to an SQL table without specifying it here.Default: NoneDEFAULT_VALUE
+ tables Alias for table DEFAULT_VALUE
-=item *
+ Attributes Default
+ interpolate (reparse) No
-S<Default:> True
+ Other_Charactreristics
+ Invalidates cache YES
+ Container tag No
+ Has Subtags No
+ Nests Yes
-=back
+B<Tag expansion example:>
-=item *
+ [shipping mode]
+---
+ TAGRESULT
-handling
+B<ASP-like Perl call:>
-=over 8
+ $Tag->shipping( { mode => VALUE_mode
+}, $body );
-=item *
+or similarly with positional parameters,
-Boolean-- use [value mv_handling] rather than [value mv_shipping] as
-first default for B<mode>. Note that this attribute matters only if
-you do not specify the B<mode> in the tag.
+ $Tag->shipping(mode, $attribute_hash_reference, $body);
-=item *
+Description
-Note that this is set by the [handling tag (which calls the
-shipping tag internally). You should probably use the handling tag
-rather than setting this directly.
+This tag calculates the shipping cost for items in the current cart
+via the specified shipping mode (usually set in the mv_shipmode
+variable). See the I<Shipping> section of the Database documentation
+for detail.
-=item *
+Rounding
-S<Default:> False
+Note that the tag rounds the calculated shipping cost to a
+locale-specific number of fractional digits (e.g., to the nearest
+penny, or 2 digits after the decimal point in the USA).
-=back
+I<add>
-=item *
+Adds the argument to B<add> as data for a shipping.asc file (in
+$Vend::Cfg->{ScratchDir}/) and sets it.
-reset_modes
+I<cart>
-=over 8
+=over 4
=item *
-Clears list of modes in $Vend::Cfg->{Shipping_line}
+S<Alias:> B<carts> Comma-delimited list of names of carts to calculate
+shipping cost for.
=item *
-S<Default:> False
+S<Default:> current cart
=back
-=item *
+I<convert>
-add
+Applies the conversion (if any) set with the PriceDivide catalog
+configuration directive.
-=over 8
+=over 4
=item *
-Adds the argument to B<add> as data for a shipping.asc file (in
-$Vend::Cfg->{ScratchDir}/) and sets it.
+S<Default:> True
=back
-
-=item *
-file
+I<default>
-=over 8
+Resets shipping mode to default of [value mv_shipmode]
-=item *
+I<file>
Filename to read shipping from (default is usual shipping database,
e.g., shipping.asc)
-
-=back
-=item *
-
-label
-
-=over 8
-
-=item *
-
-By default, returns HTML <OPTION ...> widget for shipping mode(s),
-including description and cost. You can override the widget with the
-B<format> attribute. Note that B<label> overrides B<noformat>.
-
-=item *
-
-Here is an example from the foundation checkout.html page:
-
- [shipping
-
-=back
-
-=back
- label=1
- mode=|[data table=country key='[default country US]' col=shipmodes]|
- ]
-
-=over 4
-
-=item *
-
-format
-
-=over 8
-
-=item *
+I<format>
Format for results with B<label> attribute.
+=over 4
+
=item *
S<Default:> '<OPTION VALUE="%M"%S>%D (%F)'
@@ -8515,103 +9320,119 @@
For example,
-=over 12
+ [shipping mode="FLAT"
-=item
+=back
+ label=1
+ format="My Format Desc %D Price %F"]
-[shipping mode="FLAT"
+I<handling>
-=over 16
+Boolean-- use [value mv_handling] rather than [value mv_shipping] as
+first default for B<mode>. Note that this attribute matters only if
+you do not specify the B<mode> in the tag.
-=item
+=over 4
+
+=item *
-label=1
+Note that this is set by the [handling tag (which calls the
+shipping tag internally). You should probably use the handling tag
+rather than setting this directly.
+=item *
-format="My Format Desc %D Price %F"]
+S<Default:> False
=back
-=back
+I<hide>
-=back
+Suppresses output
-=item *
+I<label>
-default
+By default, returns HTML <OPTION ...> widget for shipping mode(s),
+including description and cost. You can override the widget with the
+B<format> attribute. Note that B<label> overrides B<noformat>.
-=over 8
+=over 4
=item *
-Resets shipping mode to default of [value mv_shipmode]
+Here is an example from the foundation checkout.html page:
+
+ [shipping
=back
+ label=1
+ mode=|E<lbracket>{{CMD[jump="#data"]data}} table=country key='[default country US]' col=shipmodes]|
+ ]
-=item *
+I<mode>
-hide
+=over 4
-=over 8
+=item *
+
+S<Aliases:> B<name>, B<modes> Whitespace, null or comma delimited list
+of modes for which to calculate shipping cost. See also mv_shipmode.
=item *
-Suppresses output
+S<Default:> [value mv_handling] if B<handling=1> or [value
+mv_shipmode] or 'default'
=back
-=item *
+I<noformat>
-reset_message
+Returns result as a number rather than a string formatted for the
+current locale's currency.
-=over 8
+=over 4
=item *
-Boolean. Blanks the session's current shipping message (i.e.,
-$Session->{ship_message}).
+S<Default:> True
=back
-=back
+I<reset_message>
-Must pass named parameter interpolate=1 to cause interpolation.
+Boolean. Blanks the session's current shipping message (i.e.,
+$Session->{ship_message}).
-Invalidates cache: B<YES>
+I<reset_modes>
-Called Routine:
+Clears list of modes in $Vend::Cfg->{Shipping_line}
-B<ASP-like Perl call:>
+=over 4
- $Tag->shipping(
- {
- mode => VALUE,
- }
- )
+=item *
- OR
+S<Default:> False
- $Tag->shipping($mode, $ATTRHASH);
+=back
-Attribute aliases
+I<table>
- carts ==> cart
- modes ==> mode
- name ==> mode
- tables ==> table
+=over 4
-Description
+=item *
-This tag calculates the shipping cost for items in the current cart
-via the specified shipping mode (usually set in the mv_shipmode
-variable). See the I<Shipping> section of the Database documentation
-for detail.
+S<Alias:> B<tables> Whitespace-delimited list of tables containing
+shipping data required for perl or query calculations (I<e.g.>, in the
+'PERL' field of your shipping database - see I<Shipping>). You must
+specify the tables to get past the Perl 'I<Safe.pm>' proctection. For
+example, you will get 'I<Safe>' errors if you refer to an SQL table
+without specifying it here.
-Rounding
+=item *
-Note that the tag rounds the calculated shipping cost to a
-locale-specific number of fractional digits (e.g., to the nearest
-penny, or 2 digits after the decimal point in the USA).
+S<Default:> None
+
+=back
=head2 shipping_desc
@@ -8679,11 +9500,50 @@
OR
$Tag->soap($call, $uri, $proxy, $ATTRHASH);
+ [soap call uri proxyother_named_attributes]
+
+ Parameters Description Default
+ call DEFAULT_VALUE
+ proxy DEFAULT_VALUE
+ uri DEFAULT_VALUE
+
+ Attributes Default
+ ATT1 none
+ interpolate (reparse) No
+
+ Other_Charactreristics
+ Invalidates cache YES
+ Container tag No
+ Has Subtags No
+ Nests Yes
+
+B<Tag expansion example:>
+
+ [soap call uri proxy]
+---
+ TAGRESULT
+
+B<ASP-like Perl call:>
+ $Tag->soap( { call => VALUE_call
+ proxy => VALUE_proxy
+ uri => VALUE_uri
+}, $body );
+
+or similarly with positional parameters,
+
+ $Tag->soap(call,uri,proxy, $attribute_hash_reference, $body);
+
Description
B<NO Description>
+I<call>
+
+I<proxy>
+
+I<uri>
+
=head2 strip
Strips leading and trailing whitespace from the contained body text.
@@ -8742,6 +9602,37 @@
Attribute aliases
cart ==> name
+ [subtotal name noformat]
+
+ Parameters Description Default
+ cart Alias for name DEFAULT_VALUE
+ name DEFAULT_VALUE
+ noformat DEFAULT_VALUE
+
+ Attributes Default
+ interpolate (reparse) No
+
+ Other_Charactreristics
+ Invalidates cache YES
+ Container tag No
+ Has Subtags No
+ Nests Yes
+
+B<Tag expansion example:>
+
+ [subtotal name noformat]
+---
+ TAGRESULT
+
+B<ASP-like Perl call:>
+
+ $Tag->subtotal( { name => VALUE_name
+ noformat => VALUE_noformat
+}, $body );
+
+or similarly with positional parameters,
+
+ $Tag->subtotal(name,noformat, $attribute_hash_reference, $body);
Description
@@ -8756,6 +9647,10 @@
present and non-zero, the raw number with no currency formatting will
be given.
+I<name>
+
+I<noformat>
+
=head2 tag
Summary
@@ -8793,7 +9688,40 @@
Attribute aliases
description ==> arg
+ [tag op argother_named_attributes]
+
+ Parameters Description Default
+ arg DEFAULT_VALUE
+ description Alias for arg DEFAULT_VALUE
+ op DEFAULT_VALUE
+
+ Attributes Default
+ ATT1 none
+ interpolate No
+ reparse Yes
+
+ Other_Charactreristics
+ Invalidates cache no
+ Container tag Yes
+ Has Subtags No
+ Nests No
+B<Tag expansion example:>
+
+ [tag op arg]
+---
+ TAGRESULT
+
+B<ASP-like Perl call:>
+
+ $Tag->tag( { arg => VALUE_arg
+ op => VALUE_op
+}, $body );
+
+or similarly with positional parameters,
+
+ $Tag->tag(op,arg, $attribute_hash_reference, $body);
+
Description
Performs any of a number of operations, based on the presence of
@@ -8908,6 +9836,10 @@
[tag touch products][/tag]
+I<arg>
+
+I<op>
+
=head2 time
Summary
@@ -8940,6 +9872,36 @@
OR
$Tag->time($locale, $ATTRHASH, $BODY);
+ [time localeother_named_attributes]
+
+ Parameters Description Default
+ locale DEFAULT_VALUE
+
+ Attributes Default
+ ATT1 none
+ interpolate No
+ reparse Yes
+
+ Other_Charactreristics
+ Invalidates cache no
+ Container tag Yes
+ Has Subtags No
+ Nests No
+
+B<Tag expansion example:>
+
+ [time locale]
+---
+ TAGRESULT
+
+B<ASP-like Perl call:>
+
+ $Tag->time( { locale => VALUE_locale
+}, $body );
+
+or similarly with positional parameters,
+
+ $Tag->time(locale, $attribute_hash_reference, $body);
Description
@@ -9041,6 +10003,8 @@
Strips leading zeroes from numbers.
+I<locale>
+
=head2 timed_build
Summary
@@ -9074,7 +10038,37 @@
OR
$Tag->timed_build($file, $ATTRHASH, $BODY);
+ [timed_build fileother_named_attributes]
+
+ Parameters Description Default
+ file DEFAULT_VALUE
+
+ Attributes Default
+ ATT1 none
+ interpolate No
+ reparse Yes
+
+ Other_Charactreristics
+ Invalidates cache no
+ Container tag Yes
+ Has Subtags No
+ Nests No
+
+B<Tag expansion example:>
+
+ [timed_build file]
+---
+ TAGRESULT
+
+B<ASP-like Perl call:>
+
+ $Tag->timed_build( { file => VALUE_file
+}, $body );
+
+or similarly with positional parameters,
+ $Tag->timed_build(file, $attribute_hash_reference, $body);
+
Description
Allows you to build CPU-intensive regions of ITL tags on a timed
@@ -9161,6 +10155,8 @@
static and the next time a link is made for that page the static
version will be presented.
+I<file>
+
=head2 tmp
Summary
@@ -9191,6 +10187,35 @@
OR
$Tag->tmp($name, $BODY);
+ [tmp name]
+
+ Parameters Description Default
+ name DEFAULT_VALUE
+
+ Attributes Default
+ interpolate No
+ reparse Yes
+
+ Other_Charactreristics
+ Invalidates cache YES
+ Container tag Yes
+ Has Subtags No
+ Nests No
+
+B<Tag expansion example:>
+
+ [tmp name]
+---
+ TAGRESULT
+
+B<ASP-like Perl call:>
+
+ $Tag->tmp( { name => VALUE_name
+}, $body );
+
+or similarly with positional parameters,
+
+ $Tag->tmp(name, $attribute_hash_reference, $body);
Description
@@ -9205,6 +10230,8 @@
order profiles or mv_click actions. If you want to avoid that, use
a profile stored via the catalog.cfg directive OrderProfile.
+I<name>
+
=head2 total_cost
Summary
@@ -9216,33 +10243,68 @@
Pass attribute hash as last to subroutine: B<no>
Must pass named parameter interpolate=1 to cause interpolation.
+
+Invalidates cache: B<YES>
+
+Called Routine:
+
+B<ASP-like Perl call:>
+
+ $Tag->total_cost(
+ {
+ name => VALUE,
+ noformat => VALUE,
+ }
+ )
+
+ OR
+
+ $Tag->total_cost($name, $noformat);
+
+Attribute aliases
+
+ cart ==> name
+ [total_cost name noformat]
+
+ Parameters Description Default
+ cart Alias for name DEFAULT_VALUE
+ name DEFAULT_VALUE
+ noformat DEFAULT_VALUE
+
+ Attributes Default
+ interpolate (reparse) No
+
+ Other_Charactreristics
+ Invalidates cache YES
+ Container tag No
+ Has Subtags No
+ Nests Yes
-Invalidates cache: B<YES>
+B<Tag expansion example:>
-Called Routine:
+ [total_cost name noformat]
+---
+ TAGRESULT
B<ASP-like Perl call:>
-
- $Tag->total_cost(
- {
- name => VALUE,
- noformat => VALUE,
- }
- )
-
- OR
- $Tag->total_cost($name, $noformat);
+ $Tag->total_cost( { name => VALUE_name
+ noformat => VALUE_noformat
+}, $body );
-Attribute aliases
+or similarly with positional parameters,
- cart ==> name
+ $Tag->total_cost(name,noformat, $attribute_hash_reference, $body);
Description
Expands into the total cost of all the items in the current shopping
cart, including sales tax (if any).
+I<name>
+
+I<noformat>
+
=head2 tree
Summary
@@ -9282,7 +10344,44 @@
Attribute aliases
sub ==> subordinate
+ [tree table master subordinate startother_named_attributes]
+
+ Parameters Description Default
+ master DEFAULT_VALUE
+ start DEFAULT_VALUE
+ sub Alias for subordinate DEFAULT_VALUE
+ subordinate DEFAULT_VALUE
+ table DEFAULT_VALUE
+
+ Attributes Default
+ ATT1 none
+ interpolate No
+ reparse Yes
+
+ Other_Charactreristics
+ Invalidates cache no
+ Container tag Yes
+ Has Subtags No
+ Nests No
+
+B<Tag expansion example:>
+
+ [tree table master subordinate start]
+---
+ TAGRESULT
+
+B<ASP-like Perl call:>
+
+ $Tag->tree( { master => VALUE_master
+ start => VALUE_start
+ subordinate => VALUE_subordinate
+ table => VALUE_table
+}, $body );
+
+or similarly with positional parameters,
+ $Tag->tree(table,master,subordinate,start, $attribute_hash_reference, $body);
+
Description
Provides iterative list capability for binary trees. It produces
@@ -9329,7 +10428,7 @@
A multiple of level times the spacing option. Useful for setting width
of spacer images.
-The above sample data would produce:
+The above sample data placed in a table named "tree" would produce:
a mv_level=0, mv_increment=1, mv_children=4
b mv_level=1, mv_increment=1, mv_children=0
@@ -9349,10 +10448,11 @@
<table>
[tree start=99
- master=parent_fld
- subordinate=child_fld
+ table=tree
+ master=parent
+ subordinate=child
autodetect=1
- spacing=4
+ spacing=4
full=1]
<tr>
<td>
@@ -9361,7 +10461,7 @@
return ' ' x [item-param mv_spacing];
[/item-calc]
[/if-item-param]
- [item-param child_fld]
+ [item-param child]
</td>
<td>
mv_level=[item-param mv_level],
@@ -9500,6 +10600,14 @@
in force. For example, you can set a "SELECTED" value on an option
list with option=1, set the tag prefix with prefix, etc.
+I<master>
+
+I<start>
+
+I<subordinate>
+
+I<table>
+
=head2 try
Allows you to trap errors. Interchange processes the body text of the
@@ -9643,21 +10751,70 @@
Summary
-Parameters: B<function>
+ [update function]
+
+ Parameters Description Default
+ function cartUpates current or named cart (see name attribute)processUpdates an order or a search pagevaluesUpdates user-entered fieldsdataUpdates database, using current mv_ CGI form variables, for example:mv_data_table Table to updatemv_data_key Key into tablemv_data_fields Fields to update (space or null delimited)mv_data_function One of the following:deleteupdateinsertdeleteetc.DEFAULT_VALUE
+ name Cart name to update (if 'function=cart')Default: current cartDEFAULT_VALUE
+
+ Attributes Default
+ interpolate (reparse) No
+
+ Other_Charactreristics
+ Invalidates cache YES
+ Container tag No
+ Has Subtags No
+ Nests Yes
+
+B<Tag expansion example:>
+
+ [update function]
+---
+ TAGRESULT
+
+B<ASP-like Perl call:>
+ $Tag->update( { function => VALUE_function
+}, $body );
+
+or similarly with positional parameters,
+
+ $Tag->update(function, $attribute_hash_reference, $body);
+
+Description
+
+Forces an update of the specified interchange function. Function may
+be one of the S<following:>
+
=over 4
=item *
-function
+B<cart> (updates current or named cart)
-=over 8
+=item *
+
+B<process> (updates order or search)
+
+=item *
+B<values> (updates user-entered fields)
+
+=item *
+
+B<data> (updates database, using current B<mv_> CGI form variables)
+
+=back
+
+I<function>
+
+=over 4
+
=item *
cart
-=over 12
+=over 8
=item *
@@ -9669,7 +10826,7 @@
process
-=over 12
+=over 8
=item *
@@ -9681,7 +10838,7 @@
values
-=over 12
+=over 8
=item *
@@ -9693,14 +10850,14 @@
data
-=over 12
+=over 8
=item *
Updates database, using current B<mv_> CGI form variables, for
S<example:>
-=over 16
+=over 12
=item *
@@ -9721,7 +10878,7 @@
B<mv_data_function> One of the S<following:>
-=over 20
+=over 16
=item *
@@ -9754,65 +10911,16 @@
=back
=back
-
-=item *
-name
-
-=over 8
-
-=item *
+I<name>
Cart name to update (if 'function=cart')
-=item *
-
-S<Default:> current cart
-
-=back
-
-=back
-
-Must pass named parameter interpolate=1 to cause interpolation.
-
-Invalidates cache: B<YES>
-
-Called Routine:
-
-B<ASP-like Perl call:>
-
- $Tag->update(
- {
- function => VALUE,
- }
- )
-
- OR
-
- $Tag->update($function, $ATTRHASH);
-
-Description
-
-Forces an update of the specified interchange function. Function may
-be one of the S<following:>
-
=over 4
=item *
-
-B<cart> (updates current or named cart)
-
-=item *
-
-B<process> (updates order or search)
-
-=item *
-
-B<values> (updates user-entered fields)
-
-=item *
-B<data> (updates database, using current B<mv_> CGI form variables)
+S<Default:> current cart
=back
@@ -9850,7 +10958,38 @@
name ==> nickname
table ==> db
+ [userdb functionother_named_attributes]
+
+ Parameters Description Default
+ function DEFAULT_VALUE
+ name Alias for nickname DEFAULT_VALUE
+ table Alias for db DEFAULT_VALUE
+
+ Attributes Default
+ ATT1 none
+ interpolate (reparse) No
+
+ Other_Charactreristics
+ Invalidates cache YES
+ Container tag No
+ Has Subtags No
+ Nests Yes
+
+B<Tag expansion example:>
+
+ [userdb function]
+---
+ TAGRESULT
+
+B<ASP-like Perl call:>
+
+ $Tag->userdb( { function => VALUE_function
+}, $body );
+or similarly with positional parameters,
+
+ $Tag->userdb(function, $attribute_hash_reference, $body);
+
Description
Interchange provides a [userdb ...] tag to access the UserDB
@@ -9912,6 +11051,8 @@
file_acl Set field for file access control storage (file_acl)
db_acl Set field for database access control storage (db_acl)
+I<function>
+
=head2 value
Returns the the current value of the named form input field.
@@ -10049,7 +11190,36 @@
OR
$Tag->value_extended($name, $ATTRHASH);
+ [value_extended nameother_named_attributes]
+
+ Parameters Description Default
+ name DEFAULT_VALUE
+
+ Attributes Default
+ ATT1 none
+ interpolate (reparse) No
+
+ Other_Charactreristics
+ Invalidates cache YES
+ Container tag No
+ Has Subtags No
+ Nests Yes
+
+B<Tag expansion example:>
+
+ [value_extended name]
+---
+ TAGRESULT
+
+B<ASP-like Perl call:>
+
+ $Tag->value_extended( { name => VALUE_name
+}, $body );
+or similarly with positional parameters,
+
+ $Tag->value_extended(name, $attribute_hash_reference, $body);
+
Description
Named call example:
@@ -10133,6 +11303,8 @@
The value that will be returned if a test is false or a file write
fails. Defaults to the empty string.
+I<name>
+
=head1 User-defined Tags
To define a tag that is catalog-specific, place I<UserTag> directives
@@ -11709,115 +12881,6 @@
Only used in I<dbdump> mode (dbdump=1). Will skip empty fields if this
attribute is set true.
-Tag Entry Format
-
-=head2 dummy
-
-Alias: B<pedagogy>, B<dummy_alias>
-
-B<Note: >[B<dummy> ...], [B<pedagogy> ...] and [B<dummy-alias> ...]
-are equivalent. If the tag has an endtag, you must not mix aliases
-between the tag and its endtag (i.e., [dummy] ... [/pedagogy] would
-not work).
-
-
-
-A short description of the tag goes here. This example (B<dummy>) is
-not an actual tag.
-
-Summary
-
- [dummy first second][/dummy]
- [dummy first=first_args second=second_args other_named_attributes][/dummy]
-
-B<Positional parameters: >The first line shows the usage with
-positional parameters (given in order). The second line shows usage
-with named parameters.
-
-
-
- Parameters Description Default
- first The first positional parameterSpecial arguments'special_value' - any special arguments to the parameter that cause the tag to behave differently are listed here and described in detail in the Description section below.'pig_latin' - For this dummy tag, let's suppose that an argument of 'pig_latin' rewrites the body text in pig latin.default value if the parameter is not given
- second Another example parameter none
- alias1 alias for first - some parameters have aliases - [dummy alias1="X"] is equivalent to [dummy first="X"]Same default as first, of course
-
- Attributes Default
- more none
- still-more none (requires more)
- other none
- interpolate (body) Yes
- reparse No
-
- Other_Characteristics
- Invalidates cache No
- Macro No
- Has end tag [/dummy]
-
-B<Tag expansion example:>
-
- [dummy first=pig_latin second="Capitalize"]\
- Body text acted on by the tag goes here.[/dummy]
-------------------------------------------------------
- OdyBay ExtTaY ActedAy OnAy YBay EThay AgTay OesGay \
- EreHay.
-
-B<Reading the tag expansion example: >
-
-=over 4
-
-=item
-
-B<format:> The tag is listed first. A blank line separates it from the
-expanded return value.
-
-B<long lines:> When this document must break a line from an example
-because it is too wide for the page, a trailing backslash indicates
-the continuation. Note that such a trailing backslash is *not* part of
-the actual tag syntax or expansion.
-
-=back
-
-
-
-B<ASP-like Perl call:>
-
- $Tag->dummy( { first => 'goober',
- second => 'foobar',
- more => $snafu, }, $body_text );
-
-
-or similarly,
-
- $Tag->dummy($first, $second, $attribute_hash_reference, $body_text);
-
-Description
-
-More detailed tag description
-
-first
-
-Section describing the first parameter
-
-I<special_value>
-
-Description of treatment of the special argument. For example, giving
-the I<page> tag an B<href> of 'scan' causes it to link to a search
-specification rather than a page.
-
-I<more>
-
-more is a named attribute that applies to this tag.
-
-I<still-more>
-
-still-more is a named attribute that applies to this tag only when
-the more attribute has been given. It would be an error to use the
-still-more attribute without specifying a value for more
-
-I<other>
-
-'other' is another named attribute that applies to this tag.
-
Template Parsing Order
Standard Parsing
@@ -12302,10 +13365,7 @@
mv_begin_string bs S Pattern must match beginning of field
mv_case cs S Turns on case sensitivity
mv_cartname O Sets the shopping cart name
- mv_cache_params S Determines caching of searches
- mv_change_frame A Any form, changes frame target of form output
mv_check A Any form, sets multiple user variables after update
- mv_checkout O Sets the checkout page
mv_click A Any form, sets multiple form variables before update
mv_click XA Default mv_click routine, click is mv_click_arg
mv_click name XA Routine for a click name, sends click as arg
@@ -12313,7 +13373,6 @@
mv_coordinate co S Enables field/spec matching coordination
mv_column_op op S Operation for coordinated search
mv_credit_card* O Discussed in order security (some are read-only)
- mv_delay_page dp S Delay search until after inital page display
mv_dict_end de S Upper bound for binary search
mv_dict_fold df S Non-case sensitive binary search
mv_dict_limit di S Sets upper bound based on character position
@@ -12401,7 +13460,6 @@
di mv_dict_limit
dl mv_dict_look
do mv_dict_order
- dp mv_delay_page
dr mv_record_delim
em mv_exact_match
er mv_spelling_errors
@@ -12447,4 +13505,9 @@
to mv_sort_option
un mv_unique
va mv_value
+
+ ________________________________________
+
+Copyright 2001 Red Hat, Inc. Freely redistributable under terms of the
+GNU General Public License.
2.2.2.1 +6 -5 interchange/pod/ictemplates.pod
rev 2.2.2.1, prev_rev 2.2
Index: ictemplates.pod
===================================================================
RCS file: /var/cvs/interchange/pod/ictemplates.pod,v
retrieving revision 2.2
retrieving revision 2.2.2.1
diff -u -u -r2.2 -r2.2.2.1
--- ictemplates.pod 2001/08/06 23:25:36 2.2
+++ ictemplates.pod 2001/11/21 22:17:02 2.2.2.1
@@ -154,7 +154,7 @@
[loop list="code field field2 field3
k1 A1 A2 A3
- k2 B1 B2 B3"]
+ k2 B1 B2 B3"]
[loop-increment][loop-code]
[/loop]
@@ -2838,10 +2838,7 @@
mv_begin_string bs S Pattern must match beginning of field
mv_case cs S Turns on case sensitivity
mv_cartname O Sets the shopping cart name
-mv_cache_params S Determines caching of searches
-mv_change_frame A Any form, changes frame target of form output
mv_check A Any form, sets multiple user variables after update
-mv_checkout O Sets the checkout page
mv_click A Any form, sets multiple form variables before update
mv_click XA Default mv_click routine, click is mv_click_arg
mv_click <name> XA Routine for a click <name>, sends click as arg
@@ -2849,7 +2846,6 @@
mv_coordinate co S Enables field/spec matching coordination
mv_column_op op S Operation for coordinated search
mv_credit_card* O Discussed in order security (some are read-only)
-mv_delay_page dp S Delay search until after inital page display
mv_dict_end de S Upper bound for binary search
mv_dict_fold df S Non-case sensitive binary search
mv_dict_limit di S Sets upper bound based on character position
@@ -3998,4 +3994,9 @@
Important note: This information is only read during catalog
configuration. It is not reasonable to access a database for
translation or currency conversion in the normal course of events.
+
+ ________________________________________
+
+Copyright 2001 Red Hat, Inc. Freely redistributable under terms of the
+GNU General Public License.
2.0.2.1 +14 -1 interchange/pod/icupgrade.pod
rev 2.0.2.1, prev_rev 2.0
Index: icupgrade.pod
===================================================================
RCS file: /var/cvs/interchange/pod/icupgrade.pod,v
retrieving revision 2.0
retrieving revision 2.0.2.1
diff -u -u -r2.0 -r2.0.2.1
--- icupgrade.pod 2001/07/18 02:23:25 2.0
+++ icupgrade.pod 2001/11/21 22:17:02 2.0.2.1
@@ -782,7 +782,9 @@
comparison of the data fields in the checkout page should be
performed, adding any custom fields as needed. Custom error checking
in etc/order.profiles may have to be re-worked, or can be added into
-checkout.html using the in-page order profile capability.
+checkout.html using the in-page order profile capability. (Note that
+etc/order.profiles is called etc/profiles.order in newly-built
+Interchange catalogs.)
Remember to update receipt.html and report/report.html with any custom
fields, as well.
@@ -1205,6 +1207,17 @@
In January 2001, Red Hat acquired Akopia and created its new
E-Business Solutions Division. Interchange development is going
forward and the user community continues to grow.
+
+=back
+
+ ________________________________________
+
+=over 4
+
+=item
+
+Copyright 2001 Red Hat, Inc. Freely redistributable under terms of the
+GNU General Public License.
=back
No revision
No revision
1.1.2.1 +1576 -0 interchange/pod/Attic/ic_ecommerce.pod
rev 1.1.2.1, prev_rev 1.1
1.1.2.1 +1454 -0 interchange/pod/Attic/ic_howto_cvs.pod
rev 1.1.2.1, prev_rev 1.1
1.1.2.1 +1839 -0 interchange/pod/Attic/icfaq.pod
rev 1.1.2.1, prev_rev 1.1