Project:
View Issue Details[ Jump to Notes ] | [ Issue History ] [ Print ] | |||||||
ID | ||||||||
0039462 | ||||||||
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 | RR18Q2.4 | |||
Status | closed | Fix in branch | Fixed in SCM revision | d00466c4832e | ||||
Projection | none | ETA | none | Target Version | RR18Q2.4 | |||
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 | 0039462: 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 | |
(0107343) hgbot (developer) 2018-10-16 16:30 |
Repository: retail/backports/3.0RR18Q2.4/org.openbravo.mobile.core Changeset: 52cdba1acbb71c362cf34eaf4f975f7e0d00ba03 Author: Miguel de Juana <miguel.dejuana <at> openbravo.com> Date: Tue Oct 16 16:30:35 2018 +0200 URL: http://code.openbravo.com/retail/backports/3.0RR18Q2.4/org.openbravo.mobile.core/rev/52cdba1acbb71c362cf34eaf4f975f7e0d00ba03 [^] Fixed issue 0039462: 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 --- |
(0107344) hgbot (developer) 2018-10-16 16:31 |
Repository: retail/backports/3.0RR18Q2.4/org.openbravo.retail.posterminal Changeset: d00466c4832ea47c4a4373dd9193e2d683b594fa Author: Miguel de Juana <miguel.dejuana <at> openbravo.com> Date: Tue Oct 16 16:30:06 2018 +0200 URL: http://code.openbravo.com/retail/backports/3.0RR18Q2.4/org.openbravo.retail.posterminal/rev/d00466c4832ea47c4a4373dd9193e2d683b594fa [^] Fixed issue 0039462: 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 |