summaryrefslogtreecommitdiff
path: root/public/assets/js/vendor/view/Router.js
diff options
context:
space:
mode:
Diffstat (limited to 'public/assets/js/vendor/view/Router.js')
-rw-r--r--public/assets/js/vendor/view/Router.js82
1 files changed, 0 insertions, 82 deletions
diff --git a/public/assets/js/vendor/view/Router.js b/public/assets/js/vendor/view/Router.js
deleted file mode 100644
index 3b0d939..0000000
--- a/public/assets/js/vendor/view/Router.js
+++ /dev/null
@@ -1,82 +0,0 @@
-var Router = View.extend({
-
- routeByHash: false,
-
- go: function(url){
- this.parseRoute(url)
- },
-
- pushState: function(url){
- if (this.routeByHash) {
- window.location.hash = url
- }
- else if (window.history) {
- window.history.pushState(null, null, url)
- }
- },
-
- route: function(){
- var path = this.routeByHash ? window.location.hash.substr(0) : window.location.pathname
- path = path || "/"
- this.originalPath = path
- this.parseRoute(path)
- },
-
- parseRoute: function(pathname){
-
- pathname = pathname.replace(/^#/, "")
-
- if (pathname[0] !== "/") { pathname = "/" + pathname }
-
- var routes = this.routes,
- path = pathname.split("/");
-
- for (var i = 0; i < path.length; i++) {
- if (! path[i].length) {
- path[i] = null
- }
- }
-
- if (pathname in routes) {
- this[this.routes[pathname]]()
- return
- }
-
- if (path[path.length-1] == null) {
- path.pop()
- }
-
- for (var route in routes) {
- var routePath = route.split("/")
- if (routePath[1] == path[1]) {
- if (routePath[2] && routePath[2].indexOf(":") !== -1 && path[2] && (path[3] === routePath[3]) ) {
- this[this.routes[route]](path[2])
- return
- }
- else if (routePath[2] == path[2]) {
- if (routePath[3] && path[3]) {
- if (routePath[3].indexOf(":") !== -1) {
- this[this.routes[route]](path[3])
- return
- }
- else if (routePath[3] == path[3]) {
- this[this.routes[route]]()
- return
- }
- }
- else if (! routePath[3] && ! path[3]) {
- this[this.routes[route]]()
- return
- }
- }
- else if (! routePath[2] && (! path[2].length || ! path[2])) {
- this[this.routes[route]]()
- return
- }
- }
- }
- // Redirect to root on 404
- window.location = '/'
- }
-
-})