client/js/router.js
author rougeronj
Wed, 03 Jun 2015 17:27:46 +0200
changeset 471 e0c7be5dc02c
child 473 6649d2d75a87
permissions -rw-r--r--
Add a router to handle fragment identifier Set up a listener of the router in the scene to update it Start Backbone.history (eventlistener of the router) when all the project is loaded Include router.js to all the test file
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
471
e0c7be5dc02c Add a router to handle fragment identifier
rougeronj
parents:
diff changeset
     1
(function(root) {
e0c7be5dc02c Add a router to handle fragment identifier
rougeronj
parents:
diff changeset
     2
    "use strict";
e0c7be5dc02c Add a router to handle fragment identifier
rougeronj
parents:
diff changeset
     3
    
e0c7be5dc02c Add a router to handle fragment identifier
rougeronj
parents:
diff changeset
     4
    var Backbone = root.Backbone;
e0c7be5dc02c Add a router to handle fragment identifier
rougeronj
parents:
diff changeset
     5
    
e0c7be5dc02c Add a router to handle fragment identifier
rougeronj
parents:
diff changeset
     6
    var Router = root.Rkns.Router = Backbone.Router.extend({
e0c7be5dc02c Add a router to handle fragment identifier
rougeronj
parents:
diff changeset
     7
        routes: {
e0c7be5dc02c Add a router to handle fragment identifier
rougeronj
parents:
diff changeset
     8
            '': 'index',
e0c7be5dc02c Add a router to handle fragment identifier
rougeronj
parents:
diff changeset
     9
            '*params': 'setParams'
e0c7be5dc02c Add a router to handle fragment identifier
rougeronj
parents:
diff changeset
    10
        },
e0c7be5dc02c Add a router to handle fragment identifier
rougeronj
parents:
diff changeset
    11
        
e0c7be5dc02c Add a router to handle fragment identifier
rougeronj
parents:
diff changeset
    12
        index: function(){
e0c7be5dc02c Add a router to handle fragment identifier
rougeronj
parents:
diff changeset
    13
            this.params = {};
e0c7be5dc02c Add a router to handle fragment identifier
rougeronj
parents:
diff changeset
    14
        },
e0c7be5dc02c Add a router to handle fragment identifier
rougeronj
parents:
diff changeset
    15
        setParams: function (parameters) {
e0c7be5dc02c Add a router to handle fragment identifier
rougeronj
parents:
diff changeset
    16
            var _this = this;
e0c7be5dc02c Add a router to handle fragment identifier
rougeronj
parents:
diff changeset
    17
            this.params = {};
e0c7be5dc02c Add a router to handle fragment identifier
rougeronj
parents:
diff changeset
    18
            
e0c7be5dc02c Add a router to handle fragment identifier
rougeronj
parents:
diff changeset
    19
            parameters.split('&').forEach(function(param){
e0c7be5dc02c Add a router to handle fragment identifier
rougeronj
parents:
diff changeset
    20
                _this.params[param.split('=')[0]] = param.split('=')[1] || null;
e0c7be5dc02c Add a router to handle fragment identifier
rougeronj
parents:
diff changeset
    21
                _this.trigger(param.split('=')[0], param.split('=')[1]);
e0c7be5dc02c Add a router to handle fragment identifier
rougeronj
parents:
diff changeset
    22
            });
e0c7be5dc02c Add a router to handle fragment identifier
rougeronj
parents:
diff changeset
    23
            
e0c7be5dc02c Add a router to handle fragment identifier
rougeronj
parents:
diff changeset
    24
        }  
e0c7be5dc02c Add a router to handle fragment identifier
rougeronj
parents:
diff changeset
    25
    });
e0c7be5dc02c Add a router to handle fragment identifier
rougeronj
parents:
diff changeset
    26
e0c7be5dc02c Add a router to handle fragment identifier
rougeronj
parents:
diff changeset
    27
})(window);