Add initial initialisation of the local storage 3/head
authorPavlin Angelov <pavlin.angelov@miracl.com>
Mon, 7 Nov 2016 08:38:05 +0000 (10:38 +0200)
committerPavlin Angelov <pavlin.angelov@miracl.com>
Mon, 7 Nov 2016 15:37:04 +0000 (17:37 +0200)
This prevent some problems when trying to access it and the info is not
avaible

lib/mpin.js

index 12901c3..c3d7e89 100644 (file)
@@ -6,9 +6,9 @@
  to you under the Apache License, Version 2.0 (the
  "License"); you may not use this file except in compliance
  with the License.  You may obtain a copy of the License at
+
  http://www.apache.org/licenses/LICENSE-2.0
+
  Unless required by applicable law or agreed to in writing,
  software distributed under the License is distributed on an
  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
@@ -65,6 +65,16 @@ var mpinjs = (function () {
     var self = this, _initUrl;
 
     this.recover();
+
+    var mpinData = this.getData();
+    if (!mpinData) {
+      mpinData = {
+        version: "4",
+        accounts: {}
+      };
+      this.storeData(mpinData);
+    }
+
     if (this.opts.server.slice(-1) === "/") {
       _initUrl = this.opts.server;
     } else {
@@ -889,15 +899,7 @@ var mpinjs = (function () {
   Mpin.prototype.setData = function (userId, upData) {
     var mpinData = this.getData();
 
-    if (!mpinData) {
-      mpinData = {
-        version: "4",
-        accounts: {}
-      };
-    }
-
     var mpinId = upData.mpinId || Users[userId].mpinId;
-
     if (!mpinId) {
       return false;
     }