We can pretty much edit/add/manage prerequisites and events now!
This commit is contained in:
parent
a378270a80
commit
deb6b353d6
1 changed files with 39 additions and 10 deletions
|
|
@ -120,6 +120,23 @@ sub getPrerequisiteEventList {
|
||||||
return $self->session->db->buildHashRef($sql);
|
return $self->session->db->buildHashRef($sql);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#------------------------------------------------------------------
|
||||||
|
sub deleteOrphans {
|
||||||
|
my $self = shift;
|
||||||
|
|
||||||
|
#Check for orphaned prerequisite definitions
|
||||||
|
my @orphans = $self->session->db->quickArray("select p.prerequisiteId from EventManagementSystem_prerequisites as p
|
||||||
|
left join EventManagementSystem_prerequisiteEvents as pe
|
||||||
|
on p.prerequisiteId = pe.prerequisiteId
|
||||||
|
where pe.prerequisiteId is null");
|
||||||
|
foreach my $orphan (@orphans) {
|
||||||
|
$self->session->db->write("delete from EventManagementSystem_prerequisites where prerequisiteId=".
|
||||||
|
$self->session->db->quote($orphan));
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
#------------------------------------------------------------------
|
#------------------------------------------------------------------
|
||||||
sub validateEditEventForm {
|
sub validateEditEventForm {
|
||||||
my $self = shift;
|
my $self = shift;
|
||||||
|
|
@ -212,20 +229,32 @@ sub definition {
|
||||||
#-------------------------------------------------------------------
|
#-------------------------------------------------------------------
|
||||||
sub www_deleteEvent {
|
sub www_deleteEvent {
|
||||||
my $self = shift;
|
my $self = shift;
|
||||||
my $eventId = $self->session->form->get("id");
|
my $eventId = $self->session->form->get("pid");
|
||||||
|
|
||||||
#Remove this event as a prerequisite to any other event
|
#Remove this event as a prerequisite to any other event
|
||||||
$self->session->db->write("delete from EventManagementSystem_prerequisiteEvents where requiredEventId=".
|
$self->session->db->write("delete from EventManagementSystem_prerequisiteEvents where requiredProductId=".
|
||||||
|
$self->session->db->quote($eventId));
|
||||||
|
$self->deleteOrphans;
|
||||||
|
|
||||||
|
#Remove the event
|
||||||
|
$self->deleteCollateral('EventManagementSystem_products', 'productId', $eventId);
|
||||||
|
$self->session->db->write("delete from products where productId=".$self->session->db->quote($eventId));
|
||||||
|
$self->reorderCollateral('EventManagementSystem_products', 'productId');
|
||||||
|
|
||||||
|
return $self->www_manageEvents;
|
||||||
|
}
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------
|
||||||
|
sub www_deletePrerequisite {
|
||||||
|
my $self = shift;
|
||||||
|
my $eventId = $self->session->form->get("id");
|
||||||
|
|
||||||
|
$self->session->db->write("delete from EventManagementSystem_prerequisiteEvents where prerequisiteId=".
|
||||||
|
$self->session->db->quote($eventId));
|
||||||
|
$self->session->db->write("delete from EventManagementSystem_prerequisites where prerequisiteId=".
|
||||||
$self->session->db->quote($eventId));
|
$self->session->db->quote($eventId));
|
||||||
|
|
||||||
#Check for orphaned prerequisite definitions
|
return $self->www_editEvent;
|
||||||
my @orphans = $self->session->db->quickArray("select p.prerequisiteId from EventManagementSystem_prerequisites as p
|
|
||||||
left join EventManagementSystem_prerequisiteEvents as pe
|
|
||||||
on p.prerequisiteId = pe.prerequisiteId
|
|
||||||
where pe.prerequisiteId is null");
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#-------------------------------------------------------------------
|
#-------------------------------------------------------------------
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue