[ic] What is that "expires" page

Christopher VanOosterhout chris@vanoosterhout.com
Thu, 01 Mar 2001 09:22:44 -0500


I am working to customize the "construct" template store.

However I am having a specific problem that causes the expires.html page to 
appear.  Every time I try to buy something from a search list (using the 
template included as part of "construct" I end up being sent to: 
http://66.70.15.170/cgi-bin/westerbeke/expired.html with the following 
message on the page:

The requested item (expired) was not found. You can return to browsing our 
catalog, if you wish.

(This is coming from the results.html page)  Even though I get this error 
message, when I go back to check my cart, the product was in  fact placed 
in the cart.

The curious thing is that when I come from the single result page 
(results_big.html) the buy button works correctly.

Thanks for any input.  Below I have included the source code for what 
appears to be the problem page (results.html).


SOURCE CODE FOR RESULTS.HTML:::::

[comment]
ui_template: Yes
ui_template_name: leftright
[/comment]

[set bgcolor]#FFFFFF[/set]
[set component_right]promo_vertical[/set]
[set component_after]cross_horizontal[/set]
[set members_only]0[/set]
[set component_vsize]4[/set]
[set page_banner] [/set]
[set vbanner]Specials[/set]
[set component_hsize]2[/set]
[set hbanner]Also see...[/set]
[set component_before][/set]
[set hpromo_type]specials[/set]
[set page_title]__COMPANY__ -- Search results[/set]
[set vpromo_type]specials[/set]
@_LEFTRIGHT_TOP_@

<!-- BEGIN CONTENT -->
[if scratch did_order]
[include file="templates/components/cart_display"]
[/if]
[set did_order][/set]
[search-region]
[set munge_quantity]
[calc]
         $Scratch->{did_order} = 1;
         @q = split /\0/, $CGI->{mv_order_quantity};
         for (@q) {
                 next unless length $_;
                 $_ = "=$_";
         }
         @parms = grep /^mv_oi\d+/ && $CGI->{$_}, keys %{$CGI};

         # If we have parms, means an individual buy. If we don't
         # we want to strip empty items
         unless (@parms) {
                 @i = split "\0", $CGI->{mv_order_item};
                 for(my $i = 0; $i < @i; $i++) {
                         next if length($q[$i]);
                         $i[$i] = '';
                 }
                 @i = grep length($_), @i;
                 @q = grep length($_), @q;
                 $CGI_array->{mv_order_quantity} = \@q;
                 $CGI->{mv_order_quantity} = join "\0", @q;
                 $CGI_array->{mv_order_item} = \@i;
                 $CGI->{mv_order_item} = join "\0", @i;
                 return;
         }
         my $item = $parms[0];
         $item =~ /(\d+)/ or return;
         my $idx = $1;
         $idx--;
         $CGI->{mv_order_item} = $CGI->{$item};
         $CGI->{mv_order_quantity} = "$q[$idx]";
         return;
[/calc]
         [bounce href="[history-scan exclude=nothing]"]
[/set]
[tmp cross_sale][value-extended name=mv_searchspec index=0][/tmp]

[on-match]
<FORM ACTION="[process-target]" METHOD=POST>
<INPUT TYPE=hidden  NAME="mv_separate_items"  VALUE="0">
<INPUT TYPE=hidden  NAME="mv_click"        VALUE="munge_quantity">
<INPUT TYPE=hidden  NAME="mv_doit"      VALUE="refresh">
[/on-match]

[search-list]

[item-change 1][condition][item-field category][/condition]
                     <table width="90%" border="0" cellspacing="0" 
cellpadding="0" bgcolor="red">
                       <tr>
                         <td width="10"><img src="navigation/minime1.gif" 
width="10" height="20" align="top"></td>
                         <td ><font __FFACE__ size="1"><b><i><font 
color="ffffff" size="2">[either][value banner_t
ext][or][item-field category][/either]</font></i></b></font></td>
                         <td width="10"><img src="navigation/minime2.gif" 
width="10" height="20" align="top"></td>
                       </tr>
                     </table>

                     <table width="90%" border="1" cellspacing="0" 
cellpadding="0" bordercolor="0099ff">
                       <tr bgcolor="ffffff" valign="middle">
                         <td>
                             <table border="0" cellspacing="2" 
cellpadding="3" bordercolor="#FFFFFF" align="center
" width="100%">
                               <tr>
                         <td width="100" align="center" 
bgcolor="0099ff"><font __FFACE__ size="1" color="#ffffff">
Product</font></td>
                         <td width="30" align="center" 
bgcolor="0099ff"><font __FFACE__ size="1" color="#ffffff">S
ku</font></td>
                         <td width="30" align="center" 
bgcolor="0099ff"><font __FFACE__ size="1" color="#ffffff">S
tock</font></td>
                         <td width="30" align="center" 
bgcolor="0099ff"><font __FFACE__ size="1" color="#ffffff">P
rice</font></td>
                         <td width="30" align="center" 
bgcolor="0099ff"><font __FFACE__ size="1" color="#ffffff">Q
ty</font></td>
                         <td width="30" align="center" 
bgcolor="0099ff"><font __FFACE__ size="1" color="#ffffff">B
uy</font></td>
                       </tr>
                                           </table>
                                         </td></tr>
                     </table>

[/item-change 1]

                     <table width="90%" border="1" cellspacing="0" 
cellpadding="0" bordercolor="0099ff">
                       <tr bgcolor="ffffff" valign="middle">
                         <td align=center height="5">
                           <div align="left">
                             <table border="0" cellspacing="0" 
cellpadding="3" bordercolor="#FFFFFF" align="center
" width="100%">

<INPUT TYPE=hidden  NAME="mv_order_item"  VALUE="[item-code]">

                               <tr>
                                 <td valign="top" width="100"><a 
href="[area [item-code]]"><font __FFACE__ size="1
"><b>[item-description]</b></font></a></td>
                                                                 <td 
valign="top" width="30"><font __FFACE__ size=
"1">[item-code]</font></td>
                                                                 <td 
valign="top" width="30" align="center">[item-
calc]
         my $q = q{[item-data inventory quantity]};
         if($q > 0) {
                 return <<EOF;
<font __FFACE__ size="1" color="#008000"><b>Y</b></font>
EOF
         }
         else {
                 return <<EOF;
<a href="[area stock-alert [item-code]]"><font __FFACE__ size="1" 
color="#FF0000"><b>N</b></font></a>
EOF
         }
[/item-calc]</td>
                                                                 <td 
valign="top" width="30"><font __FFACE__ size=
"1">[item-price]</font></td>
                                                                 <td 
valign=top width=30><input type=hidden name="
mv_oi[item-increment]" value=""><input type=text name=mv_order_quantity 
size=2 value=""></td>
                                                                 <td 
valign=top width=30><FONT __FFACE__ size=2><i
nput type=submit value=BuyIt 
onClick="this.form.mv_oi[item-increment].value='[item-code]'"></font></td>



                               </tr>
                             </table>
                             <div align="center"><b><i></i></b></div>
                           </div>
                         </td>
                       </tr>
                     </table>

[/search-list]
[on-match]
<div align=right><INPUT TYPE=submit VALUE="Buy list">
</FORM>
[/on-match]

[no-match]
<BR><BR><BLOCKQUOTE>
<font __FFACE__ size="2">
Sorry, no matches for <B>[calc]
                         my $joiner = ' AND ';
                         $joiner = ' OR ' if
                                         defined 
$Search->{''}->{mv_orsearch}[0]
                                         and $Search->{''}->{mv_orsearch}[0];
                         my @str = grep /\D/, @{$Values->{mv_searchspec}};
                         return join $joiner, @str;
                         [/calc]
[if value mv_search_error]
<P><B>Errors:
<BR> [value-extended name=mv_search_error joiner="<BR>"]
</B>
[/if]
</font>
<BR><BR></BLOCKQUOTE>
[/no-match]
<font __FFACE__ size="2">
<BR CLEAR=LEFT>
[more-list]
</font>
<BLOCKQUOTE>
<font __FFACE__ size="2">
Matches [matches] of [match-count] found.
<BR>[more]<BR>
</font>
</BLOCKQUOTE>
[/more-list]

[/search-region]
<!-- END CONTENT -->

@_LEFTRIGHT_BOTTOM_@