Attached Files | 45876_20Q2_loyaltyprograms_v1.diff [^] (18,327 bytes) 2021-02-22 18:03 [Show Content] [Hide Content]diff --git a/src-db/database/sourcedata/AD_MESSAGE.xml b/src-db/database/sourcedata/AD_MESSAGE.xml
index 6bcd60c..3482e12 100644
--- a/src-db/database/sourcedata/AD_MESSAGE.xml
+++ b/src-db/database/sourcedata/AD_MESSAGE.xml
@@ -265,6 +265,18 @@ Please press 'Save' button and then retry.]]></MSGTEXT>
<!--71763A14DA9C472282F5FB8042A0B8EC--> <ISINCLUDEINI18N><![CDATA[N]]></ISINCLUDEINI18N>
<!--71763A14DA9C472282F5FB8042A0B8EC--></AD_MESSAGE>
+<!--7186464B831C4695B14A240FC945BEB6--><AD_MESSAGE>
+<!--7186464B831C4695B14A240FC945BEB6--> <AD_MESSAGE_ID><![CDATA[7186464B831C4695B14A240FC945BEB6]]></AD_MESSAGE_ID>
+<!--7186464B831C4695B14A240FC945BEB6--> <AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
+<!--7186464B831C4695B14A240FC945BEB6--> <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
+<!--7186464B831C4695B14A240FC945BEB6--> <ISACTIVE><![CDATA[Y]]></ISACTIVE>
+<!--7186464B831C4695B14A240FC945BEB6--> <VALUE><![CDATA[OBRLP_EnterValitPoints]]></VALUE>
+<!--7186464B831C4695B14A240FC945BEB6--> <MSGTEXT><![CDATA[Please enter valid points!!!]]></MSGTEXT>
+<!--7186464B831C4695B14A240FC945BEB6--> <MSGTYPE><![CDATA[I]]></MSGTYPE>
+<!--7186464B831C4695B14A240FC945BEB6--> <AD_MODULE_ID><![CDATA[9A07DBDB8C5D40B2B1E091C55DB501DA]]></AD_MODULE_ID>
+<!--7186464B831C4695B14A240FC945BEB6--> <ISINCLUDEINI18N><![CDATA[N]]></ISINCLUDEINI18N>
+<!--7186464B831C4695B14A240FC945BEB6--></AD_MESSAGE>
+
<!--71BCC754F99246CEABBE6AD00C05C0BD--><AD_MESSAGE>
<!--71BCC754F99246CEABBE6AD00C05C0BD--> <AD_MESSAGE_ID><![CDATA[71BCC754F99246CEABBE6AD00C05C0BD]]></AD_MESSAGE_ID>
<!--71BCC754F99246CEABBE6AD00C05C0BD--> <AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
diff --git a/src/org/openbravo/retail/loyalty/programs/OBRLPComponentProvider.java b/src/org/openbravo/retail/loyalty/programs/OBRLPComponentProvider.java
index 6b85134..dc30ddb 100644
--- a/src/org/openbravo/retail/loyalty/programs/OBRLPComponentProvider.java
+++ b/src/org/openbravo/retail/loyalty/programs/OBRLPComponentProvider.java
@@ -54,6 +54,7 @@ public class OBRLPComponentProvider extends BaseComponentProvider {
grhelper.add("component/subscription-buttons.js");
grhelper.add("component/program-selection-popup.js");
grhelper.add("component/menu.js");
+ grhelper.add("component/numerickeyboard.js");
grhelper.add("component/addpoints-keyboard.js");
grhelper.add("utils/obrlputils.js");
grhelper.add("view/businesspartner-selectors.js");
diff --git a/web/org.openbravo.retail.loyalty.programs/css/loyalty.css b/web/org.openbravo.retail.loyalty.programs/css/loyalty.css
index 974410a..bf4d127 100644
--- a/web/org.openbravo.retail.loyalty.programs/css/loyalty.css
+++ b/web/org.openbravo.retail.loyalty.programs/css/loyalty.css
@@ -151,7 +151,9 @@
# Inherits: []
*/
-.obrlpUiAddPointsPopupBody {}
+.obrlpUiAddPointsPopupBody {
+ height: 100%;
+}
.obrlpUiAddPointsPopupBody-container1 {
text-align: center;
@@ -186,7 +188,9 @@
/* Inherits: [OB.UI.ScrollableTable] */
}
-.obrlpUiAddPointsPopupBody-rightBar-addPointsKeyboard {}
+.obrlpUiAddPointsPopupBody-rightBar-addPointsKeyboard {
+ height: 63%;
+}
.obrlpUiAddPointsPopupBody-rightBar-addPointsKeyboard-labelPtsAmt {
height: 30px;
@@ -330,32 +334,54 @@ li.selected > .obrlpUiAddPointsPopupBodyStepsButton {
.obUiAddPointReasonList {}
/*********************** ***********************/
-/* File: addpoints-keyboard.js */
+/* File: numerickeyboard.js */
/* Folder: component/ */
/*********************** ***********************/
-.obrlpUiAddPointsKeyboard {
- /*Inherits: [OB.UI.Keyboard]*/
- display: grid;
- grid-auto-flow: column;
- grid-template-columns: 0 1fr;
- column-gap: 0px;
-
- box-sizing: border-box;
- height: var(--keypad-height);
- padding: 10px 15px;
- justify-items: center;
+.obrlpUiNumberKeyboard {
+ height: 100%;
}
-.obrlpUiAddPointsKeyboard .obUiKeyboard-wrapper {
- width: 80%;
- min-width: 185px;
-}
+.obrlpUiNumberKeyboard-keyboardEditBox {}
-@media all and (max-aspect-ratio: 9/8) {
- .obrlpUiAddPointsKeyboard {
- padding: 2px 15px;
- }
+.obrlpUiNumberKeyboard-addqty {}
+
+.obrlpUiNumberKeyboard-removeqty {}
+
+.obrlpUiNumberKeyboard-backspace {}
+
+.obrlpUiNumberKeyboard-keyboardkey0 {}
+
+.obrlpUiNumberKeyboard-keyboardkey1 {}
+
+.obrlpUiNumberKeyboard-keyboardkey2 {}
+
+.obrlpUiNumberKeyboard-keyboardkey3 {}
+
+.obrlpUiNumberKeyboard-keyboardkey4 {}
+
+.obrlpUiNumberKeyboard-keyboardkey5 {}
+
+.obrlpUiNumberKeyboard-keyboardkey6 {}
+
+.obrlpUiNumberKeyboard-keyboardkey7 {}
+
+.obrlpUiNumberKeyboard-keyboardkey8 {}
+
+.obrlpUiNumberKeyboard-keyboardkey9 {}
+
+.obrlpUiNumberKeyboard-keyboardkeyPeriod {}
+
+.obrlpUiNumberKeyboard-keyboardkeyEnter {}
+
+
+/*********************** ***********************/
+/* File: addpoints-keyboard.js */
+/* Folder: component/ */
+/*********************** ***********************/
+
+.obrlpUiAddPointsKeyboard {
+ /*Inherits: [OBRLP.UI.NumberKeyboard]*/
}
/*********************** ***********************/
diff --git a/web/org.openbravo.retail.loyalty.programs/js/component/addpoints-keyboard.js b/web/org.openbravo.retail.loyalty.programs/js/component/addpoints-keyboard.js
index 39ef6e9..e08b75a 100644
--- a/web/org.openbravo.retail.loyalty.programs/js/component/addpoints-keyboard.js
+++ b/web/org.openbravo.retail.loyalty.programs/js/component/addpoints-keyboard.js
@@ -11,46 +11,22 @@
enyo.kind({
name: 'OBRLP.UI.AddPoints.Keyboard',
- kind: 'OB.UI.Keyboard',
+ kind: 'OBRLP.UI.NumberKeyboard',
classes: 'obrlpUiAddPointsKeyboard',
- keyMatcher: /^([0-9]|\.|,| |-|\/|[a-z]|[A-Z])$/,
- addPointsMode: false,
events: {
- onShowPopup: ''
+ onShowPopup: '',
+ onSetPointsAmt: ''
},
handlers: {
- onAddPointsKeyboardCommand: 'addPointsKeyboardCommand'
+ onSetValue: 'setValue'
},
init: function(model) {
this.model = model;
},
- addPointsKeyboardCommand: function(inSender, inEvent) {
- if (inEvent.status) {
- this.addPointsMode = true;
- } else {
- this.addPointsMode = false;
- }
- },
- globalKeypressHandler: function(inSender, inEvent) {
- return true;
+ setValue: function(inSender, inEvent) {
+ this.doSetPointsAmt({ points: inEvent.points });
},
initComponents: function() {
- var me = this;
this.inherited(arguments);
- this.disableCommandKey(this, {
- disabled: true,
- commands: ['/']
- });
- this.addCommand('addLoyaltyPoints', {
- action: function(keyboard, txt) {
- if (me.addPointsMode) {
- keyboard.owner.owner.owner.stepButtons[
- keyboard.owner.owner.owner.selectedStep
- ].assignStepValue(txt);
- keyboard.owner.owner.owner.setAddLPPoints(txt);
- }
- }
- });
- this.defaultcommand = 'addLoyaltyPoints';
}
});
diff --git a/web/org.openbravo.retail.loyalty.programs/js/component/numerickeyboard.js b/web/org.openbravo.retail.loyalty.programs/js/component/numerickeyboard.js
new file mode 100644
index 0000000..3e6dea1
--- /dev/null
+++ b/web/org.openbravo.retail.loyalty.programs/js/component/numerickeyboard.js
@@ -0,0 +1,222 @@
+/*
+ ************************************************************************************
+ * Copyright (C) 2020 Openbravo S.L.U.
+ * Licensed under the Openbravo Commercial License version 1.0
+ * You may obtain a copy of the License at http://www.openbravo.com/legal/obcl.html
+ * or in the legal folder of this module distribution.
+ ************************************************************************************
+ */
+
+/*global enyo*/
+
+enyo.kind({
+ name: 'OBRLP.UI.NumberKeyboard',
+ classes:
+ 'obUiGridKeyboard obObposPointOfSaleUiGridKeyboard obrlpUiNumberKeyboard',
+ events: {
+ onSetValue: ''
+ },
+ components: [
+ {
+ kind: 'OB.UI.KeyboardEditBox',
+ name: 'keyboardEditBox',
+ statename: 'editbox',
+ classes:
+ 'obObposPointOfSaleUiGridKeyboard-obUiActionEditBox-generic obObposPointOfSaleUiGridKeyboard-keyboardEditBox obUiActionEditBox .obUiActionEditBox_fontnormal obrlpUiNumberKeyboard-keyboardEditBox'
+ },
+ {
+ kind: 'OB.UI.Button',
+ name: 'addqty',
+ classes:
+ 'obObposPointOfSaleUiGridKeyboard-obUiActionButton-generic obObposPointOfSaleUiGridKeyboard-addqty obUiActionButton obrlpUiNumberKeyboard-addqty',
+ label: '+',
+ value: 'plus',
+ ontap: 'keyboardKeyPressed'
+ },
+ {
+ kind: 'OB.UI.Button',
+ name: 'removeqty',
+ classes:
+ 'obObposPointOfSaleUiGridKeyboard-obUiActionButton-generic obObposPointOfSaleUiGridKeyboard-removeqty obUiActionButton obrlpUiNumberKeyboard-removeqty',
+ label: '-',
+ value: 'minus',
+ ontap: 'keyboardKeyPressed'
+ },
+ {
+ kind: 'OB.UI.Button',
+ name: 'backspace',
+ classes:
+ 'obObposPointOfSaleUiGridKeyboard-obUiActionButton-generic obObposPointOfSaleUiGridKeyboard-backspace obUiActionButton obrlpUiNumberKeyboard-backspace',
+ value: 'del',
+ ontap: 'keyboardKeyPressed'
+ },
+ {
+ kind: 'OB.UI.Button',
+ name: 'keyboardkey0',
+ classes:
+ 'obObposPointOfSaleUiGridKeyboard-obUiActionButton-generic obObposPointOfSaleUiGridKeyboard-keyboardkey0 obUiActionButton obrlpUiNumberKeyboard-keyboardkey0',
+ value: '0',
+ label: '0',
+ ontap: 'keyboardKeyPressed'
+ },
+ {
+ kind: 'OB.UI.Button',
+ name: 'keyboardkey1',
+ classes:
+ 'obObposPointOfSaleUiGridKeyboard-obUiActionButton-generic obObposPointOfSaleUiGridKeyboard-keyboardkey1 obUiActionButton obrlpUiNumberKeyboard-keyboardkey1',
+ label: '1',
+ value: '1',
+ ontap: 'keyboardKeyPressed'
+ },
+ {
+ kind: 'OB.UI.Button',
+ name: 'keyboardkey2',
+ classes:
+ 'obObposPointOfSaleUiGridKeyboard-obUiActionButton-generic obObposPointOfSaleUiGridKeyboard-keyboardkey2 obUiActionButton obrlpUiNumberKeyboard-keyboardkey2',
+ label: '2',
+ value: '2',
+ ontap: 'keyboardKeyPressed'
+ },
+ {
+ kind: 'OB.UI.Button',
+ name: 'keyboardkey3',
+ classes:
+ 'obObposPointOfSaleUiGridKeyboard-obUiActionButton-generic obObposPointOfSaleUiGridKeyboard-keyboardkey3 obUiActionButton obrlpUiNumberKeyboard-keyboardkey3',
+ label: '3',
+ value: '3',
+ ontap: 'keyboardKeyPressed'
+ },
+ {
+ kind: 'OB.UI.Button',
+ name: 'keyboardkey4',
+ classes:
+ 'obObposPointOfSaleUiGridKeyboard-obUiActionButton-generic obObposPointOfSaleUiGridKeyboard-keyboardkey4 obUiActionButton obrlpUiNumberKeyboard-keyboardkey4',
+ label: '4',
+ value: '4',
+ ontap: 'keyboardKeyPressed'
+ },
+ {
+ kind: 'OB.UI.Button',
+ name: 'keyboardkey5',
+ classes:
+ 'obObposPointOfSaleUiGridKeyboard-obUiActionButton-generic obObposPointOfSaleUiGridKeyboard-keyboardkey5 obUiActionButton obrlpUiNumberKeyboard-keyboardkey5',
+ label: '5',
+ value: '5',
+ ontap: 'keyboardKeyPressed'
+ },
+ {
+ kind: 'OB.UI.Button',
+ name: 'keyboardkey6',
+ classes:
+ 'obObposPointOfSaleUiGridKeyboard-obUiActionButton-generic obObposPointOfSaleUiGridKeyboard-keyboardkey6 obUiActionButton obrlpUiNumberKeyboard-keyboardkey6',
+ label: '6',
+ value: '6',
+ ontap: 'keyboardKeyPressed'
+ },
+ {
+ kind: 'OB.UI.Button',
+ name: 'keyboardkey7',
+ classes:
+ 'obObposPointOfSaleUiGridKeyboard-obUiActionButton-generic obObposPointOfSaleUiGridKeyboard-keyboardkey7 obUiActionButton obrlpUiNumberKeyboard-keyboardkey7',
+ label: '7',
+ value: '7',
+ ontap: 'keyboardKeyPressed'
+ },
+ {
+ kind: 'OB.UI.Button',
+ name: 'keyboardkey8',
+ classes:
+ 'obObposPointOfSaleUiGridKeyboard-obUiActionButton-generic obObposPointOfSaleUiGridKeyboard-keyboardkey8 obUiActionButton obrlpUiNumberKeyboard-keyboardkey8',
+ label: '8',
+ value: '8',
+ ontap: 'keyboardKeyPressed'
+ },
+ {
+ kind: 'OB.UI.Button',
+ name: 'keyboardkey9',
+ classes:
+ 'obObposPointOfSaleUiGridKeyboard-obUiActionButton-generic obObposPointOfSaleUiGridKeyboard-keyboardkey9 obUiActionButton obrlpUiNumberKeyboard-keyboardkey9',
+ label: '9',
+ value: '9',
+ ontap: 'keyboardKeyPressed'
+ },
+ {
+ kind: 'OB.UI.Button',
+ name: 'keyboardkeyPeriod',
+ classes:
+ 'obObposPointOfSaleUiGridKeyboard-obUiActionButton-generic obObposPointOfSaleUiGridKeyboard-keyboardkeyPeriod obUiActionButton obrlpUiNumberKeyboard-keyboardkeyPeriod',
+ value: '.',
+ label: '.',
+ ontap: 'keyboardKeyPressed'
+ },
+ {
+ kind: 'OB.UI.Button',
+ name: 'keyboardkeyEnter',
+ classes:
+ 'obObposPointOfSaleUiGridKeyboard-obUiActionButton-generic obObposPointOfSaleUiGridKeyboard-keyboardkeyEnter obUiActionButton obrlpUiNumberKeyboard-keyboardkeyEnter',
+ value: 'enter',
+ ontap: 'keyboardKeyPressed'
+ }
+ ],
+ keyboardKeyPressed: function(inSender, inEvent) {
+ if (this.isFirstInput === true) {
+ if (inSender.value === 'enter') {
+ OB.UTIL.showError(OB.I18N.getLabel('OBRLP_EnterValitPoints'));
+ return false;
+ } else if (
+ inSender.value === 'del' ||
+ inSender.value === 'minus' ||
+ inSender.value === '0'
+ ) {
+ this.clearEditBox();
+ } else if (inSender.value === '.') {
+ this.$.keyboardEditBox.setContent('0' + inSender.value);
+ this.isFirstInput = false;
+ } else if (inSender.value === 'plus') {
+ this.$.keyboardEditBox.setContent('1');
+ this.isFirstInput = false;
+ } else {
+ this.$.keyboardEditBox.setContent(inSender.value);
+ this.isFirstInput = false;
+ }
+ } else {
+ let content = this.$.keyboardEditBox.getContent(),
+ contentLength = content.length;
+ if (inSender.value === 'del') {
+ if (contentLength === 1) {
+ this.clearEditBox();
+ } else if (contentLength > 0) {
+ this.$.keyboardEditBox.setContent(
+ content.substring(0, contentLength - 1)
+ );
+ }
+ } else if (inSender.value === '.' && content.indexOf('.') >= 0) {
+ return false;
+ } else if (inSender.value === 'plus') {
+ this.$.keyboardEditBox.setContent(
+ (Number(content) + Number(1)).toString()
+ );
+ } else if (inSender.value === 'minus') {
+ if (Number(content) > 0) {
+ this.$.keyboardEditBox.setContent(
+ (Number(content) - Number(1)).toString()
+ );
+ }
+ } else if (inSender.value === 'enter') {
+ if (contentLength > 0 && Number(content) > 0) {
+ this.doSetValue({ points: content });
+ } else {
+ OB.UTIL.showError(OB.I18N.getLabel('OBRLP_EnterValitPoints'));
+ return false;
+ }
+ } else {
+ this.$.keyboardEditBox.setContent(content + inSender.value);
+ }
+ }
+ return true;
+ },
+ clearEditBox: function(inSender, inEvent) {
+ this.$.keyboardEditBox.setContent('0');
+ this.isFirstInput = true;
+ }
+});
diff --git a/web/org.openbravo.retail.loyalty.programs/js/view/addpoints-popup.js b/web/org.openbravo.retail.loyalty.programs/js/view/addpoints-popup.js
index 03770a1..da42460 100644
--- a/web/org.openbravo.retail.loyalty.programs/js/view/addpoints-popup.js
+++ b/web/org.openbravo.retail.loyalty.programs/js/view/addpoints-popup.js
@@ -508,7 +508,8 @@ enyo.kind({
},
handlers: {
onChangeBPartner: 'changeBPartner',
- onSearchAction: 'searchAction'
+ onSearchAction: 'searchAction',
+ onSetPointsAmt: 'setPointsAmt'
},
initComponents: function() {
this.inherited(arguments);
@@ -551,6 +552,10 @@ enyo.kind({
searchAction: function(props) {
this.$.body.waterfall('onSearchAction', props);
},
+ setPointsAmt: function(inSender, inEvent) {
+ this.stepButtons[this.selectedStep].assignStepValue(inEvent.points);
+ this.setAddLPPoints(inEvent.points);
+ },
getFilterSelectorTableHeader: function() {
return this.$.body.$.addPointsBody.$.addPoints_Bp_Body.$
.stAddPointsBPAssignToReceipt.$.theader.$.modalBpSelectorScrollableHeader
@@ -589,7 +594,7 @@ enyo.kind({
this.$.body.$.addPointsBody.$.addPoints_Description.$.formElementAddPtEvent.coreElement.setValue(
''
);
- this.$.body.$.addPointsBody.$.keyboard.$.editbox.setContent('');
+ this.$.body.$.addPointsBody.$.keyboard.$.keyboardEditBox.setContent('');
},
enableApplyBtn: function(flag) {
if (flag) {
@@ -836,8 +841,6 @@ enyo.kind({
callback;
this.inherited(arguments);
- this.waterfall('onAddPointsKeyboardCommand', { status: true });
-
//Hide new customer button
this.$.body.$.addPointsBody.$.addPoints_Bp_Footer.$.newAction.hide();
//Hide filter combo
@@ -934,7 +937,6 @@ enyo.kind({
},
executeOnHide: function() {
this.inherited(arguments);
- this.waterfall('onAddPointsKeyboardCommand', { status: false });
this.clearAllStepsFocus();
//Clear all values
this.setAddLPCustomer(null);
@@ -1235,7 +1237,7 @@ enyo.kind({
name: 'keyboard',
kind: 'OBRLP.UI.AddPoints.Keyboard',
classes:
- 'obObposPointOfSaleUiRightBottomPanelWrapper-keyboardWrapper-keyboard obrlpUiAddPointsPopupBody-rightBar-addPointsKeyboard-keyboard'
+ 'obrlpUiAddPointsPopupBody-rightBar-addPointsKeyboard-keyboard'
}
],
load: function(context) {
@@ -1439,9 +1441,6 @@ enyo.kind({
name: 'subscriptionContainer',
classes:
'obrlpUiAddPointsPopupBodySubscriptionButton-subscriptionContainer',
- tap: function() {
- this.owner.model.trigger('click', this.owner.model);
- },
components: [
{
name: 'subscriptionInfo',
@@ -1467,7 +1466,10 @@ enyo.kind({
}
]
}
- ]
+ ],
+ tap: function() {
+ this.owner.model.trigger('click', this.owner.model);
+ }
}
]
}
|