From 21be3958980d5524d6df5891601435be6707e43a Mon Sep 17 00:00:00 2001
From: blavenie <benoit.lavenier@e-is.pro>
Date: Wed, 28 Jun 2017 18:16:32 +0200
Subject: [PATCH] [fix] Config: Increase timeout (to 300s as usally in web
 browser) [fix] Config: remove unused properties [enh] Login: use assertive
 color when enabling "remember me" option

---
 app/config.json                      | 22 ++++++++++------------
 www/js/config.js                     |  7 +++----
 www/js/services/bma-services.js      |  2 ++
 www/templates/modal_login.html       | 22 +++++++++++++++++-----
 www/templates/settings/settings.html |  7 +++----
 5 files changed, 35 insertions(+), 25 deletions(-)

diff --git a/app/config.json b/app/config.json
index 1d640ab5a..8ee695da0 100644
--- a/app/config.json
+++ b/app/config.json
@@ -1,16 +1,15 @@
 {
   "default": {
-    "cacheTimeMs": 60000,
+    "cacheTimeMs": 300000,
     "fallbackLanguage": "en",
     "rememberMe": false,
     "showUDHistory": false,
-    "timeout": 10000,
+    "timeout": 300000,
     "timeWarningExpireMembership": 5184000,
     "timeWarningExpire": 7776000,
     "logoutIlde": 600,
     "useLocalStorage": true,
     "useRelative": false,
-    "initPhase": false,
     "expertMode": false,
     "decimalCount": 2,
     "httpsMode": false,
@@ -53,17 +52,16 @@
   },
 
   "default_fr": {
-    "cacheTimeMs": 60000,
+    "cacheTimeMs": 300000,
     "fallbackLanguage": "fr",
     "rememberMe": false,
     "showUDHistory": false,
-    "timeout": 10000,
+    "timeout": 300000,
     "timeWarningExpireMembership": 5184000,
     "timeWarningExpire": 7776000,
     "logoutIlde": 600,
     "useLocalStorage": true,
     "useRelative": false,
-    "initPhase": false,
     "expertMode": false,
     "decimalCount": 2,
     "httpsMode": false,
@@ -105,11 +103,11 @@
   },
 
   "g1-test": {
-    "cacheTimeMs": 60000,
+    "cacheTimeMs": 300000,
     "fallbackLanguage": "en",
     "rememberMe": false,
     "showUDHistory": false,
-    "timeout": 10000,
+    "timeout": 300000,
     "timeWarningExpireMembership": 5184000,
     "timeWarningExpire": 7776000,
     "useLocalStorage": true,
@@ -147,12 +145,12 @@
   },
 
   "dev": {
-    "cacheTimeMs": 60000,
+    "cacheTimeMs": 300000,
     "fallbackLanguage": "fr-FR",
     "defaultLanguage": "fr-FR",
     "rememberMe": true,
     "showUDHistory": false,
-    "timeout": 6000,
+    "timeout": 300000,
     "timeWarningExpireMembership": 5184000,
     "timeWarningExpire": 7776000,
     "useLocalStorage": true,
@@ -210,11 +208,11 @@
   },
 
   "dev_g1": {
-    "cacheTimeMs": 60000,
+    "cacheTimeMs": 300000,
     "fallbackLanguage": "en",
     "rememberMe": true,
     "showUDHistory": false,
-    "timeout": 10000,
+    "timeout": 300000,
     "timeWarningExpireMembership": 5184000,
     "timeWarningExpire": 7776000,
     "useLocalStorage": true,
diff --git a/www/js/config.js b/www/js/config.js
index da4daa147..6544dbe5e 100644
--- a/www/js/config.js
+++ b/www/js/config.js
@@ -9,17 +9,16 @@
 angular.module("cesium.config", [])
 
 .constant("csConfig", {
-	"cacheTimeMs": 60000,
+	"cacheTimeMs": 300000,
 	"fallbackLanguage": "en",
 	"rememberMe": false,
 	"showUDHistory": false,
-	"timeout": 10000,
+	"timeout": 300000,
 	"timeWarningExpireMembership": 5184000,
 	"timeWarningExpire": 7776000,
 	"logoutIlde": 600,
 	"useLocalStorage": true,
 	"useRelative": false,
-	"initPhase": false,
 	"expertMode": false,
 	"decimalCount": 2,
 	"httpsMode": false,
@@ -60,7 +59,7 @@ angular.module("cesium.config", [])
 		}
 	},
 	"version": "0.13.0",
-	"build": "2017-06-21T15:20:40.770Z",
+	"build": "2017-06-28T13:09:08.393Z",
 	"newIssueUrl": "https://github.com/duniter/cesium/issues/new?labels=bug"
 })
 
diff --git a/www/js/services/bma-services.js b/www/js/services/bma-services.js
index f4fe40952..bacb4f7aa 100644
--- a/www/js/services/bma-services.js
+++ b/www/js/services/bma-services.js
@@ -114,10 +114,12 @@ angular.module('cesium.bma.services', ['ngApi', 'cesium.http.services', 'cesium.
     }
 
     function closeWs() {
+      console.warn('[BMA] Closing all websockets...');
       _.keys(that.cache.wsByPath).forEach(function(key) {
         var sock = that.cache.wsByPath[key];
         sock.close();
       });
+      that.cache.wsByPath = {};
     }
 
     that.cleanCache = function() {
diff --git a/www/templates/modal_login.html b/www/templates/modal_login.html
index 269917dc3..91d0bd108 100644
--- a/www/templates/modal_login.html
+++ b/www/templates/modal_login.html
@@ -16,6 +16,9 @@
 
       <div class="list" ng-init="setForm(loginForm)">
 
+        <!-- avoid web browser to fill password automatically -->
+        <input type="password" name="fake-password" style="visibility:hidden; position:absolute;"/>
+
         <!-- salt (=username, to enable browser login cache) -->
         <label class="item item-input"
                ng-class="{ 'item-input-error': form.$submitted && form.username.$invalid}">
@@ -72,15 +75,20 @@
 
 
         <!-- remember me -->
-        <div class="item item-toggle dark hidden-xs">
-          <span translate>SETTINGS.REMEMBER_ME</span>
-          <label class="toggle toggle-calm">
+        <div class="item item-toggle  hidden-xs">
+          <div class="input-label " translate>SETTINGS.REMEMBER_ME</div>
+          <h4 class="gray text-wrap"
+              ng-class="{'assertive': formData.rememberMe}">
+            <i class="icon ion-alert-circled" ng-if="formData.rememberMe"></i>
+            <span ng-bind-html="'SETTINGS.REMEMBER_ME_HELP' | translate"></span>
+          </h4>
+          <label class="toggle toggle-assertive">
             <input type="checkbox" ng-model="formData.rememberMe">
             <div class="track">
               <div class="handle"></div>
             </div>
           </label>
-        </div>
+        </span>
 
 
         <!-- Show public key -->
@@ -112,15 +120,19 @@
         </button>
       </div>
 
+      <br class="visible-xs"/>
+
       <!-- Register ? -->
       <div class="text-center no-padding">
         {{'LOGIN.NO_ACCOUNT_QUESTION'|translate}}
-        <br class="visible-xs">
+        <br class="visible-xs"/>
         <a ng-click="showJoinModal()" translate>
           LOGIN.CREATE_ACCOUNT
         </a>
       </div>
 
+      <br class="visible-xs"/>
+
       <div class="text-center no-padding">
         <a ng-click="showAccountSecurityModal()" translate>
           LOGIN.FORGOTTEN_ID
diff --git a/www/templates/settings/settings.html b/www/templates/settings/settings.html
index fc9ef4b9b..43385d509 100644
--- a/www/templates/settings/settings.html
+++ b/www/templates/settings/settings.html
@@ -92,7 +92,6 @@
         {{'SETTINGS.AUTHENTICATION_SETTINGS' | translate}}
       </span>
 
-
       <div class="item item-toggle" >
         <div class="input-label" ng-class="{'gray': !formData.useLocalStorage}">
           {{'SETTINGS.REMEMBER_ME' | translate}}
@@ -102,9 +101,9 @@
           <i class="icon ion-alert-circled" ng-if="formData.rememberMe"></i>
           <span ng-bind-html="'SETTINGS.REMEMBER_ME_HELP' | translate"></span>
         </h4>
-        <label class="toggle" ng-class="{'toggle-stable': !formData.useLocalStorage, 'toggle-royal': formData.useLocalStorage}">
-          <input type="checkbox" ng-model="formData.rememberMe" ng-disabled="!formData.useLocalStorage"
-          >
+
+        <label class="toggle" ng-class="{'toggle-stable': !formData.useLocalStorage, 'toggle-assertive': formData.useLocalStorage}">
+          <input type="checkbox" ng-model="formData.rememberMe" ng-disabled="!formData.useLocalStorage">
           <div class="track">
             <div class="handle"></div>
           </div>
-- 
GitLab