my %Mode = (
default => \&default,
something => \&something,
another => \&another
);
if(exists($Mode{$q->param('mode')})) {
$Mode{$q->param('mode')}->(); #call the correct subroutine
}else{
&default;
}
####
#!/usr/bin/perl -w
use strict;
use Cart::ShoppingCart;
my $sc = Cart::ShoppingCart->new();
$sc->run();
##
##
my $q = $self->query();
##
##
my $q = CGI->new;
##
##
sub add_to_cart {
my $self = shift;
my $q = $self->query();
my $basket_id = $self->basket_id_from_cookie;
my $inv = Cart::Inventory->new;
my $basket = Cart::Basket->new(-basket_id => $basket_id);
$basket->add_item(-basket_vars => {product_id => $q->param('id'),
var_color => $q->param('var_color'),
var_size => $q->param('var_size'),
var_quantity => $q->param('var_quantity'),
});
$self->header_type('redirect');
$self->header_props(-cookie => $self->create_basket_cookie($basket_id),
-uri => $C{URLS}->{cart_summary_url});
}
##
##
print $q->redirect(-uri => $some_url);
##
##
sub cart_summary {
my $self = shift;
my $q = $self->query();
my $html;
my $basket_id = $self->basket_id_from_cookie;
my $template = Template->new({INCLUDE_PATH => $C{TT_TEMPLATES}->{INCLUDE_PATH},});
my $vars->{cart} = $self->cart_vars;
my $file = $C{TT_TEMPLATES}->{cart_summary};
$self->header_props(-cookie => $self->create_basket_cookie($basket_id));
$template->process($file, $vars, \$html) || die "Template process failed: ", $template->error(), "\n";
return $html;
}
##
##
[% WRAPPER basic_admin_page.html %]
Order# [% customer_info.customer_id %]
[% INCLUDE cart_summary_table.tt_html %]
[% INCLUDE billing_info_table.html %]
[% INCLUDE cc_info_table.html %]
<div style="text-align:center">
[% INCLUDE remove_button.html %]
</div>
[% END %]
##
##
[% INCLUDE basic_page.html %]