EMS work
This commit is contained in:
parent
1416aa76e8
commit
fcfc0bc9b4
2 changed files with 58 additions and 12 deletions
|
|
@ -183,6 +183,7 @@ sub addEMSTemplates {
|
|||
print "\tAdding Event Management System Templates.\n" unless ($quiet);
|
||||
|
||||
my $template = <<EOT1;
|
||||
|
||||
<a name="id<tmpl_var assetId>" id="id<tmpl_var assetId>"></a>
|
||||
|
||||
<tmpl_if session.var.adminOn>
|
||||
|
|
@ -190,20 +191,20 @@ my $template = <<EOT1;
|
|||
</tmpl_if>
|
||||
<tmpl_if canManageEvents>
|
||||
<a href='<tmpl_var manageEvents.url>'><tmpl_var manageEvents.label></a>
|
||||
</tmpl_if>
|
||||
</tmpl_if>
|
||||
|
||||
<tmpl_loop events_loop>
|
||||
<tmpl_var title> <tmpl_var description> <tmpl_var price><br>
|
||||
</tmpl_loop>
|
||||
<tmpl_loop events_loop>
|
||||
<tmpl_var event>
|
||||
</tmpl_loop>
|
||||
|
||||
<tmpl_var paginateBar>
|
||||
<tmpl_var paginateBar>
|
||||
EOT1
|
||||
|
||||
my $template2 = <<EOT2;
|
||||
|
||||
<h1><tmpl_var title></h1><br>
|
||||
<tmpl_var description> <tmpl_var price><br>
|
||||
|
||||
|
||||
<a href="<tmpl_var purchase.url>"><tmpl_var purchase.label></a>
|
||||
EOT2
|
||||
my $in = WebGUI::Asset->getImportNode($session);
|
||||
$in->addChild({
|
||||
|
|
|
|||
|
|
@ -21,6 +21,7 @@ use WebGUI::HTMLForm;
|
|||
use WebGUI::International;
|
||||
use WebGUI::Commerce::ShoppingCart;
|
||||
use WebGUI::Commerce::Item;
|
||||
use Data::Dumper;
|
||||
#-------------------------------------------------------------------
|
||||
|
||||
=head2 checkRequiredFields ( requiredFields )
|
||||
|
|
@ -284,6 +285,49 @@ sub getRequiredEventNames {
|
|||
return $self->session->db->buildArrayRef($sql);
|
||||
}
|
||||
|
||||
#------------------------------------------------------------------
|
||||
sub getSubEvents {
|
||||
my $self = shift;
|
||||
my $eventId = shift;
|
||||
my @subEvents;
|
||||
|
||||
my @prerequisites = $self->session->db->buildArray("
|
||||
select prerequisiteId from EventManagementSystem_prerequisites
|
||||
where productId=".$self->session->db->quote($eventId));
|
||||
print "<pre>".Dumper(@prerequisites)."</pre>";
|
||||
|
||||
foreach my $prerequisite (@prerequisites) {
|
||||
|
||||
my $sth = $self->session->db->read("
|
||||
select p.productId, p.title, pr.operator
|
||||
from products as p, EventManagementSystem_prerequisites as pr, EventManagementSystem_prerequisiteEvents as pe
|
||||
where
|
||||
p.productId = pe.requiredProductId and
|
||||
pr.prerequisiteId = pe.prerequisiteId and
|
||||
pr.prerequisiteId =".$self->session->db->quote($prerequisite));
|
||||
my %eventList;
|
||||
my $operator;
|
||||
while (my $hashRef = $sth->hashRef) {
|
||||
$eventList{$hashRef->{productId}} = $hashRef->{title};
|
||||
$operator = $hashRef->{operator} #overwritten each itteration with same value
|
||||
}
|
||||
push (@subEvents, {
|
||||
'eventList' => \%eventList,
|
||||
'operator' => $operator
|
||||
});
|
||||
}
|
||||
|
||||
print "<pre>".Dumper(@subEvents)."</pre>";
|
||||
return \@subEvents;
|
||||
}
|
||||
|
||||
#------------------------------------------------------------------
|
||||
sub startCheckoutWizard {
|
||||
my $self = shift;
|
||||
my $eventId = shift;
|
||||
my $subEvents = $self->getSubEvents($eventId);
|
||||
}
|
||||
|
||||
#------------------------------------------------------------------
|
||||
|
||||
=head2 validateEditEventForm ( )
|
||||
|
|
@ -335,6 +379,7 @@ Method that will add an event to the users shopping cart.
|
|||
sub www_addToCart {
|
||||
my $self = shift;
|
||||
my $eventId = $self->session->form->get("pid");
|
||||
$self->startCheckoutWizard($eventId);
|
||||
|
||||
WebGUI::Commerce::ShoppingCart->new($self->session)->add($eventId, 'Event');
|
||||
|
||||
|
|
@ -509,7 +554,7 @@ sub www_editEvent {
|
|||
$f->dateTime(
|
||||
-name => "endDate",
|
||||
-value => $self->session->form->get("endDate") || $event->{endDate},
|
||||
-defaultValue => "32472169200",
|
||||
-defaultValue => time()+3600, #one hour from start date
|
||||
-hoverHelp => $i18n->get('add/edit event end date description'),
|
||||
-label => $i18n->get('add/edit event end date')
|
||||
);
|
||||
|
|
@ -540,10 +585,10 @@ sub www_editEvent {
|
|||
|
||||
$f->radioList(
|
||||
-name => "requirement",
|
||||
-options => { "and" => $i18n->get("and"),
|
||||
"or" => $i18n->get("or"),
|
||||
-options => { 'and' => $i18n->get("and"),
|
||||
'or' => $i18n->get("or"),
|
||||
},
|
||||
-defaultValue => "and"
|
||||
-value => 'and',
|
||||
-label => $i18n->get("add/edit event operator"),
|
||||
-hoverHelp => $i18n->get("add/edit event operator description"),
|
||||
);
|
||||
|
|
@ -784,7 +829,7 @@ sub view {
|
|||
where
|
||||
p.productId = e.productId and approved=1
|
||||
and e.assetId =".$self->session->db->quote($self->get("assetId"))."
|
||||
and p.productId not in (select distinct(productId) from EventManagementSystem_prerequisites)";
|
||||
and p.productId not in (select distinct(requiredProductId) from EventManagementSystem_prerequisiteEvents)";
|
||||
|
||||
my $p = WebGUI::Paginator->new($self->session,$self->getUrl,$self->get("paginateAfter"));
|
||||
$p->setDataByQuery($sql);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue