Well, I had to change my tactics, but I've accomplished what I wanted with the following code in the help_contactus_subj.tpl file
(see update below):
Quote:
{$lng.eml_contact_us_subj}
{foreach from=$additional_fields item=v name=confld}
{if $smarty.foreach.confld.iteration eq 3 and $v.value eq "Y"}
{$lng.eml_contact_us_catalogreq_subj}
{/if}
{foreachelse}
{/foreach}
|
The {$lng.eml_contact_us_subj} variable contains the text for every contactus email subject. The value of the{$lng.eml_contact_us_catalogreq_subj} variable is "- CATALOG REQUESTED." So the general subject is added first. Then the additional fields are looped through and the second language variable is added on if field 3 equals "Y."
The only problem is that I have to remember to change the number 3 to something else if I delete or deactivate additional fields 1 and/or 2. Otherwise, it works as I wanted.
I still can't figure out why there doesn't seem to be a logical variable name that would work. Even if fields 1 and/or 2 have null values, they are still looped through and their titles are included in the email generated. So #3 is always #3 regardless of the values of #1 and #2. Since the name of the input field in the contact form is "additional_values[3]," $additional_values[3] or $additional_values[3].value would seem like logical variable names. Alas, this is not the case, and variations of these don't work either.
If anyone does figure out how to address these additional fields with variable names, I'd love to hear about it. For now, I'll settle for this solution.
UPDATE: It hit me while I was brushing my teeth last night

that I could replace the following:
Quote:
$smarty.foreach.confld.iteration eq 3
|
with
Since fieldid is an auto-increment field, it will be 3 no matter what unless I re-install X-Cart or something (DUH!). I tested it with one of my first two additional fields deactivated and it works

.
Jill