{:uriI"file:///Users/matthewchang/work/call9/push_routes/vendor/assets/javascripts/push_routes_socket_io.js.erb?type=application/javascript&id=9be120af888bbd9cb7872ea767eaec4a52a9da21a3af19257aee6b7095a37484:ET:load_pathI"I/Users/matthewchang/work/call9/push_routes/vendor/assets/javascripts;T: filenameI"f/Users/matthewchang/work/call9/push_routes/vendor/assets/javascripts/push_routes_socket_io.js.erb;T: nameI"push_routes_socket_io;T:logical_pathI"push_routes_socket_io.js;T:content_typeI"application/javascript;T: sourceI"//TODO: configurable accross the application var PushRoutes = { socket: null, init: function(server,user_id,auth_token,callback) { var self = this; self.socket = io.connect(server, {secure: true}); self.socket.on('connect', function() { self.socket.connected = true; console.log("Connecting Socket"); self.socket.on('disconnect',function() { self.socket.connected = false; console.log('Socket Disconnected'); }); self.socket.on('unauthorized', function(err){ console.log("Authentication was rejected:", err.message); }); self.socket.on('authenticated', function() { console.log("Authentication successful"); }); self.socket.emit("authentication",{user_id: user_id, authentication_token: auth_token}, function(error,message) { console.log(error); console.log(message); }); }) }, subscriptions: {}, subscribe: function(route,on_update) { this.subscriptions[route] = on_update; this.socket.removeAllListeners(route); this.register_subscription(route,on_update); }, register_subscription: function(route,on_update) { if(this.socket && this.socket.connected) { this.socket.on(route,function(message) { on_update(message); }); this.socket.emit("subscribe",route,function() { console.log("Subscribed to "+route); }); } else { console.log("Socket not connected"); } }, unsubscribe: function(route) { delete this.subscriptions[route]; } } ;T: metadata{ :dependencieso:Set: @hash} I"environment-version;TTI"environment-paths;TTI"rails-env;TTI"Yprocessors:type=application/javascript&file_type=application/javascript&engines=.erb;TTI"tfile-digest:///Users/matthewchang/work/call9/push_routes/vendor/assets/javascripts/push_routes_socket_io.js.erb;TTI"gprocessors:type=application/javascript&file_type=application/javascript&engines=.erb&pipeline=self;TTF: linkso;;}F: included[I"file:///Users/matthewchang/work/call9/push_routes/vendor/assets/javascripts/push_routes_socket_io.js.erb?type=application/javascript&pipeline=self&id=6fcfc05c664c803bb31f4e55154ddb81153be44fc9df61473585b423c52dc431;T: charsetI" utf-8;F: digest"%tZ,)z*I&v?B: lengthi:dependencies_digest"%}:v(;1`f_H@TTNb]Y0:idI"E9be120af888bbd9cb7872ea767eaec4a52a9da21a3af19257aee6b7095a37484;F: mtimel+FV