Project:
View Issue Details[ Jump to Notes ] | [ Issue History ] [ Print ] | |||||||
ID | ||||||||
0039428 | ||||||||
Type | Category | Severity | Reproducibility | Date Submitted | Last Update | |||
backport | [Retail Modules] Web POS | minor | always | 2018-07-20 12:46 | 2018-10-18 13:05 | |||
Reporter | migueldejuana | View Status | public | |||||
Assigned To | migueldejuana | |||||||
Priority | normal | Resolution | fixed | Fixed in Version | RR18Q3.2 | |||
Status | closed | Fix in branch | Fixed in SCM revision | 1198e2c11bb4 | ||||
Projection | none | ETA | none | Target Version | RR18Q3.2 | |||
OS | Any | Database | Any | Java version | ||||
OS Version | Database version | Ant version | ||||||
Product Version | SCM revision | |||||||
Review Assigned To | marvintm | |||||||
Regression level | ||||||||
Regression date | ||||||||
Regression introduced in release | ||||||||
Regression introduced by commit | ||||||||
Triggers an Emergency Pack | No | |||||||
Summary | 0039428: Do not set terminalName with empty value | |||||||
Description | Since we added localStorage API, we save items in localStorage with the appName as prefix (WEBPOS.terminalName). There is a case where we try to getItem but appName is not yet defined in OB.MobileApp.model, so we cannot get it from localStorage and we get null value. | |||||||
Steps To Reproduce | Put a breakpoint in login-model.js in the line: me.setTerminalName(OB.UTIL.localStorage.getItem('terminalAuthentication', me.get('appName')) === 'Y' ? OB.UTIL.localStorage.getItem('terminalName', me.get('appName')) : OB.UTIL.getParameterByName("terminal")); just before the line: OB.UTIL.HookManager.registerHook('OBMOBC_InitActions', function (args, c) { Load web Pos and see that: - OB.MobileApp.model is undefined so we cannot get the appName - OB.UTIL.localStorage.getItem('terminalAuthentication') is null - OB.UTIL.localStorage.getItem('terminalName') | |||||||
Proposed Solution | Change the localStorage API adding the ability pass the appName. After this fix, we will be able to load items from localStorage before appName is defined in OB.MobileApp.model. Example: me.setTerminalName(OB.UTIL.localStorage.getItem('terminalAuthentication', me.get('appName')) === 'Y' ? OB.UTIL.localStorage.getItem('terminalName', me.get('appName')) : OB.UTIL.getParameterByName("terminal")); | |||||||
Tags | No tags attached. | |||||||
Attached Files | ||||||||
Relationships [ Relation Graph ] [ Dependency Graph ] | ||||||||
|
Notes | |
(0107341) hgbot (developer) 2018-10-16 16:24 |
Repository: retail/backports/3.0RR18Q3.2/org.openbravo.mobile.core Changeset: 9c6008e24116a27620858cf38fb818f5401de608 Author: Miguel de Juana <miguel.dejuana <at> openbravo.com> Date: Tue Oct 16 16:22:24 2018 +0200 URL: http://code.openbravo.com/retail/backports/3.0RR18Q3.2/org.openbravo.mobile.core/rev/9c6008e24116a27620858cf38fb818f5401de608 [^] Fixed issue 0039428: Do not set terminalName with empty value - Add the ability to pass appName in case OB.MobileApp.model is not defined yet --- M web/org.openbravo.mobile.core/source/utils/ob-localStorage.js --- |
(0107342) hgbot (developer) 2018-10-16 16:24 |
Repository: retail/backports/3.0RR18Q3.2/org.openbravo.retail.posterminal Changeset: 1198e2c11bb4cba53468763f73d5fcb53a42576c Author: Miguel de Juana <miguel.dejuana <at> openbravo.com> Date: Tue Oct 16 16:23:15 2018 +0200 URL: http://code.openbravo.com/retail/backports/3.0RR18Q3.2/org.openbravo.retail.posterminal/rev/1198e2c11bb4cba53468763f73d5fcb53a42576c [^] Fixed issue 0039428: Do not set terminalName with empty value - At this point OB.MobileApp.model is not defined so we cannot get appName to get items from localStorage. All localStoragegetItem will return null because this problem(until OB.MobileApp.model is defined) As we already know the appName, pass it as parameter to loscalStorage API. --- M web/org.openbravo.retail.posterminal/js/login/model/login-model.js --- |
Copyright © 2000 - 2009 MantisBT Group |