ems performance improvements
This commit is contained in:
parent
36ed3f9209
commit
e1a0b462a1
4 changed files with 28 additions and 12 deletions
|
|
@ -3,6 +3,8 @@
|
|||
subroutines directly in their files. See
|
||||
WebGUI::Operation::FormHelpers::www_formHelper and
|
||||
WebGUI::Operation::Workflow::www_activityHelper for details.
|
||||
- Added pagination to purchase history in commerce.
|
||||
- improved performance of EMS
|
||||
- rfe: snippets should have titles too!
|
||||
- Added a mechanism for using external folders for custom code. See
|
||||
sbin/preload.custom.example for details.
|
||||
|
|
|
|||
|
|
@ -3262,7 +3262,7 @@ sub www_addEventsToBadge {
|
|||
my ($purchaseId) = $self->session->db->quickArray("select purchaseId from EventManagementSystem_registrations where badgeId=? and productId=? and purchaseId != '' and returned=0 and purchaseId is not null limit 1",[$bid,$eventId]);
|
||||
$self->session->scratch->set("currentPurchase",$purchaseId);
|
||||
$self->session->db->write(
|
||||
"INSERT INTO EventManagementSystem_sessionPurchaseRef (sessionId, purchaseId, badgeId) VALUES (?,?,?)",
|
||||
"REPLACE INTO EventManagementSystem_sessionPurchaseRef (sessionId, purchaseId, badgeId) VALUES (?,?,?)",
|
||||
[$self->session->getId, $purchaseId, $bid]
|
||||
);
|
||||
}
|
||||
|
|
@ -3803,7 +3803,7 @@ sub www_search {
|
|||
my $showAllFlag;
|
||||
my $addToBadgeMessage;
|
||||
if ($eventAdded) {
|
||||
$showAllFlag = 1;
|
||||
#$showAllFlag = 1;
|
||||
$addToBadgeMessage = sprintf $i18n->get('add to badge message'), $eventAdded;
|
||||
}
|
||||
if ($var{badgeSelected}) {
|
||||
|
|
@ -3839,9 +3839,17 @@ sub www_search {
|
|||
if (scalar(@keys)) {
|
||||
#$searchPhrases = " and ( ";
|
||||
my $count = 0;
|
||||
foreach (@keys) {
|
||||
foreach my $word (@keys) {
|
||||
if ($count) {
|
||||
if ($word =~ m/^\d+$/) { # searching for a bunch of skus, so let's do an or instead
|
||||
$searchPhrases .= ' or ';
|
||||
}
|
||||
else {
|
||||
$searchPhrases .= ' and ';
|
||||
}
|
||||
}
|
||||
$searchPhrases .= ' and ' if $count;
|
||||
my $val = $self->session->db->quote('%'.$_.'%');
|
||||
my $val = $self->session->db->quote('%'.$word.'%');
|
||||
$searchPhrases .= "(p.title like $val or p.description like $val or p.sku like $val)";
|
||||
$count++;
|
||||
}
|
||||
|
|
@ -4042,7 +4050,8 @@ sub www_search {
|
|||
$eventFields{'purchase.label'} = $i18n->get('add to cart');
|
||||
}
|
||||
my $masterEventId = $cfilter_t0 || $self->session->form->get("cfilter_t0");
|
||||
$eventFields{'purchase.url'} = $self->getUrl('func=addToScratchCart;pid='.$event->{'productId'}.";mid=".$masterEventId.";pn=".$self->session->form->get("pn"));
|
||||
$eventFields{'purchase.url'} =
|
||||
$self->getUrl('func=addToScratchCart;pid='.$event->{'productId'}.";mid=".$masterEventId.";pn=".$self->session->form->get("pn").";searchKeywords=".$self->session->form->get("searchKeywords"));
|
||||
%eventFields = ('event' => $self->processTemplate(\%eventFields, $event->{'templateId'}), %eventFields) if ($self->{_calledFromView} && $self->session->form->process('func') eq 'view');
|
||||
push (@events, \%eventFields);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -5,6 +5,7 @@ use WebGUI::Commerce::Transaction;
|
|||
use WebGUI::Asset::Template;
|
||||
use WebGUI::Operation;
|
||||
use WebGUI::Form;
|
||||
use WebGUI::Paginator;
|
||||
|
||||
=head1 NAME
|
||||
|
||||
|
|
@ -32,12 +33,14 @@ This error message will be added to the template variables.
|
|||
|
||||
sub www_viewPurchaseHistory {
|
||||
my $session = shift;
|
||||
my (@history, @historyLoop, %var, %properties);
|
||||
|
||||
my (@historyLoop, %var, %properties);
|
||||
$var{errorMessage} = shift;
|
||||
|
||||
@history = @{WebGUI::Commerce::Transaction->new($session)->transactionsByUser($session->user->userId)};
|
||||
for my $transaction (@history) {
|
||||
my $p = WebGUI::Paginator->new($session, $session->url->page("op=viewPurchaseHistory"));
|
||||
|
||||
my @history = reverse @{WebGUI::Commerce::Transaction->new($session)->transactionsByUser($session->user->userId)};
|
||||
$p->setDataByArrayRef(\@history);
|
||||
$p->appendTemplateVars(\%var);
|
||||
for my $transaction (@{$p->getPageData}) {
|
||||
%properties = %{$transaction->get};
|
||||
$properties{initDate} = $session->datetime->epochToHuman($properties{initDate});
|
||||
$properties{completionDate} = $session->datetime->epochToHuman($properties{completionDate})
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@
|
|||
//input. Each file upload input is named "file" the control must be rendered in a form. The
|
||||
//Workspace id is the id of the div in the html page to render the control in.
|
||||
|
||||
function FileUploadControl(fieldName, imageArray, removeLabel, fileLimit) {
|
||||
function FileUploadControl(fieldName, imageArray, removeLabel, fileLimit, size) {
|
||||
|
||||
this.images = imageArray;
|
||||
this.fileLimit = fileLimit;
|
||||
|
|
@ -21,7 +21,9 @@ function FileUploadControl(fieldName, imageArray, removeLabel, fileLimit) {
|
|||
str +='<table style="display: none;">'
|
||||
|
||||
str += '<tr id="' + workspaceId + '.template" class="fileUploadRow"><td style="display:none;"><img src="' + imageArray["unknown"] + '" style="visibility: hidden;"></td>';
|
||||
str +='<td colspan="2"><input type="file" name="'+fieldName+'" size="40" onchange="FileUploadControl_valueChange(event)"></td><td><input type="button" value="' + removeLabel + '" onclick="FileUploadControl_removeButtonClick(event)"></td></tr>';
|
||||
str +='<td colspan="2"><input type="file" name="'+fieldName+'" ';
|
||||
str += ' size="'+ size + '" ';
|
||||
str +=' onchange="FileUploadControl_valueChange(event)"></td><td><input type="button" value="' + removeLabel + '" onclick="FileUploadControl_removeButtonClick(event)"></td></tr>';
|
||||
|
||||
str += '</table>';
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue