www

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs

commit b5e94bc733faae2c1aff3df57b81ff38b88af1a5
parent fe0313492417260f9f2eb584ae1d7dce714d5cb0
Author: Georges Dupéron <jahvascriptmaniac+github@free.fr>
Date:   Thu, 28 Apr 2011 18:34:36 +0200

Et encore un bug à cause des guillemets.

Diffstat:
Mcode/serveur/php/ressources/pticlic.js | 8+++++---
1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/code/serveur/php/ressources/pticlic.js b/code/serveur/php/ressources/pticlic.js @@ -8,7 +8,7 @@ function State(init) { var futureHashChange = null; State.prototype.commit = function() { try { - futureHashChange = "#"+encodeURI($.JSON.encode(this)); + futureHashChange = "#"+encodeURI('"'+$.JSON.encode(this)); location.hash = futureHashChange; return this; } catch(e) {alert("Error State.prototype.commit");alert(e);} @@ -46,8 +46,10 @@ function hashchange() { if (futureHashChange === location.hash) { futureHashChange = null; } else { - var stateJSON = decodeURI(location.hash.substring(location.hash.indexOf("#") + 1)); - state = new State($.parseJSON(stateJSON)).validate(); + var stateJSON = location.hash.substring(location.hash.indexOf("#") + 1); + if (stateJSON.charAt(0) != '"') { stateJSON = decodeURI(stateJSON); } + stateJSON = stateJSON.substring(1); + state = new State($.parseJSON(stateJSON || '{}')).validate(); } } catch(e) {alert("Error hashchange");alert(e);} }