diff --git a/app/assets/js/movim_websocket.js b/app/assets/js/movim_websocket.js index 5a2e72d59..1d222951e 100644 --- a/app/assets/js/movim_websocket.js +++ b/app/assets/js/movim_websocket.js @@ -25,10 +25,12 @@ var MovimWebsocket = { connection: null, attached: new Array(), registered: new Array(), - unregistered: false, attempts: 1, launchAttached : function() { + // We hide the Websocket error + MovimUtils.hideElement(document.getElementById('error_websocket')); + for(var i = 0; i < MovimWebsocket.attached.length; i++) { MovimWebsocket.attached[i](); } @@ -80,20 +82,16 @@ var MovimWebsocket = { if(e.code == 1006) { MovimWebsocket.reconnect(); } else if(e.code == 1000) { - if(MovimWebsocket.unregistered == false) { - MovimUtils.disconnect(); - } else { - MovimWebsocket.unregistered = false; - MovimWebsocket.init(); - } + MovimUtils.disconnect(); } }; this.connection.onerror = function(e) { - console.log(e.code); - console.log(e); console.log("Connection error!"); + // We hide the Websocket error + MovimUtils.showElement(document.getElementById('error_websocket')); + MovimWebsocket.reconnect(); // We prevent the onclose launch @@ -155,13 +153,12 @@ var MovimWebsocket = { }, unregister : function(reload) { - if(reload == false) this.unregistered = true; this.connection.unregister(); }, reconnect : function() { var interval = MovimWebsocket.generateInterval(); - console.log("Try to reconnect in " + interval); + console.log("Try to reconnect"); setTimeout(function () { // We've tried to reconnect so increment the attempts by 1 MovimWebsocket.attempts++; @@ -183,16 +180,7 @@ var MovimWebsocket = { } } -function remoteUnregister() -{ - MovimWebsocket.unregister(false); -} - -function remoteUnregisterReload() -{ - MovimWebsocket.unregister(true); -} - +/* document.addEventListener("visibilitychange", function () { if(!document.hidden) { if(MovimWebsocket.connection.readyState == 3) { @@ -200,7 +188,7 @@ document.addEventListener("visibilitychange", function () { } } }); - +*/ window.onbeforeunload = function() { MovimWebsocket.connection.onclose = function () {}; // disable onclose handler first MovimWebsocket.connection.close() diff --git a/app/controllers/AccountController.php b/app/controllers/AccountController.php index 102f4e86a..02e66c4da 100644 --- a/app/controllers/AccountController.php +++ b/app/controllers/AccountController.php @@ -7,6 +7,9 @@ class AccountController extends Base { } function dispatch() { + $session = \Sessionx::start(); + requestURL('http://localhost:1560/disconnect/', 2, ['sid' => $session->sessionid]); + $this->page->setTitle(__('page.account_creation')); } } diff --git a/app/controllers/LoginController.php b/app/controllers/LoginController.php index 995fc3ca2..bc8f1c997 100644 --- a/app/controllers/LoginController.php +++ b/app/controllers/LoginController.php @@ -8,7 +8,7 @@ class LoginController extends Base { function dispatch() { $session = \Sessionx::start(); - requestURL('http://localhost:1560/unregister/', 2, ['sid' => $session->sessionid]); + //requestURL('http://localhost:1560/unregister/', 2, ['sid' => $session->sessionid]); $this->page->setTitle(__('page.login')); diff --git a/app/models/sessionx/SessionxDAO.php b/app/models/sessionx/SessionxDAO.php index 66bb1bbf8..6f7af360c 100644 --- a/app/models/sessionx/SessionxDAO.php +++ b/app/models/sessionx/SessionxDAO.php @@ -3,7 +3,7 @@ namespace modl; class SessionxDAO extends SQL { - function init(Sessionx $s) {\movim_log($s->start); + function init(Sessionx $s) { $this->_sql = ' update sessionx set username = :username, diff --git a/app/views/login.tpl b/app/views/login.tpl index a6951693f..a015eb388 100644 --- a/app/views/login.tpl +++ b/app/views/login.tpl @@ -1,6 +1,5 @@ widget('Presence'); ?>
- widget('Header');?>
widget('Login'); ?> diff --git a/app/views/page.tpl b/app/views/page.tpl index 996dda885..8455644e3 100644 --- a/app/views/page.tpl +++ b/app/views/page.tpl @@ -53,6 +53,17 @@
+
+
    +
  • + + + +

    + +

    +
  • +
widget('Dialog');?> widget('Drawer');?> widget('Notification');?> diff --git a/app/widgets/AccountNext/AccountNext.php b/app/widgets/AccountNext/AccountNext.php index f18d79c64..1a0ec1ba4 100644 --- a/app/widgets/AccountNext/AccountNext.php +++ b/app/widgets/AccountNext/AccountNext.php @@ -93,7 +93,10 @@ class AccountNext extends \Movim\Widget\Base { function onServiceUnavailable() { Notification::append(null, $this->__('error.service_unavailable')); - RPC::call('remoteUnregister'); + + $session = \Sessionx::start(); + requestURL('http://localhost:1560/disconnect/', 2, ['sid' => $session->sessionid]); + RPC::call('MovimUtils.redirect', $this->route('account')); } diff --git a/app/widgets/AccountNext/_accountnext_registered.tpl b/app/widgets/AccountNext/_accountnext_registered.tpl index c4153e438..2140a0ffd 100644 --- a/app/widgets/AccountNext/_accountnext_registered.tpl +++ b/app/widgets/AccountNext/_accountnext_registered.tpl @@ -3,7 +3,8 @@

username@server.com

- + {$c->__('page.login')}
diff --git a/app/widgets/Login/_login_error.tpl b/app/widgets/Login/_login_error.tpl index a9af6de26..17db92736 100644 --- a/app/widgets/Login/_login_error.tpl +++ b/app/widgets/Login/_login_error.tpl @@ -4,5 +4,9 @@

{$error}

- {$c->__('button.return')} + + {$c->__('button.return')} +
diff --git a/app/widgets/Login/locales.ini b/app/widgets/Login/locales.ini index cce1fd2cc..f3c44da5a 100644 --- a/app/widgets/Login/locales.ini +++ b/app/widgets/Login/locales.ini @@ -10,7 +10,6 @@ session = Session error account_created = Account successfully created xmpp_unauthorized = Your XMPP server is unauthorized mec_error = The server takes too much time to respond -websocket = Movim cannot talk with the server, please try again later (Websocket connection error) impossible = Impossible login title = Oops! @@ -30,6 +29,6 @@ create_one = Create one ! another_account = Another account no_account = No account yet ? -whitelist.info = You can login with accounts from theses servers +whitelist_info = You can login with accounts from theses servers connected = Connected population = Population diff --git a/app/widgets/Login/login.js b/app/widgets/Login/login.js index aff1076ef..d7e100881 100644 --- a/app/widgets/Login/login.js +++ b/app/widgets/Login/login.js @@ -147,9 +147,6 @@ MovimWebsocket.attach(function() Login.init(); - // We hide the Websocket error - MovimUtils.hideElement(document.getElementById('error_websocket')); - // We enable the form var inputs = document.querySelectorAll('#login_widget div input[disabled]'); for (var i = 0; i < inputs.length; i++) diff --git a/app/widgets/Login/login.tpl b/app/widgets/Login/login.tpl index 70c4173f1..415d06da5 100644 --- a/app/widgets/Login/login.tpl +++ b/app/widgets/Login/login.tpl @@ -62,9 +62,10 @@ {/if} {if="isset($whitelist) && $whitelist != ''"} -