%python scope="global">
import shoppingmodel, shoppingcontroller
%python>
<%args>
form
ck_state
%args>
<& breadcrumb, form = form, ck_state=ck_state &>
<&| forms.myc:form, name="checkout", action="checkout/" &>
% if ck_state==shoppingcontroller.CHECKOUT_BILLING or ck_state==shoppingcontroller.CHECKOUT_SHIPPING:
<& existingaddress, form = form &>
<& address.myc, form=form &>
<& go &>
% elif ck_state == shoppingcontroller.CHECKOUT_PAYMENT:
<& ccard.myc, form=form &>
<& go &>
% else:
whoops, todo !
state: <% ck_state %>
<& go &>
%
&>
<%def existingaddress>
<%args>form%args>
% if len(form.elements['useaddress'].options):
<& forms.myc:select, field=form.elements['useaddress'] &>
<& go &>
%
%def>
<%method breadcrumb>
<%args>
form = None
ck_state
%args>
%method>
<%method stepname trim="both">
<%args>
state
ck_state
form = None
%args>
% if ck_state > state:
% elif ck_state == state:
% if form is not None and form.is_valid() is False:
% else:
%
% else:
%
<% m.content() %>
%method>
<%method go>
<& forms.myc:submit, value="<<< Previous", onclick="document.checkout.cmd.value='%s'" % shoppingcontroller.CMD_PREVIOUS &>
<& forms.myc:submit, value="Next >>>" &>
%method>