diff options
author | Pratik Naik <pratiknaik@gmail.com> | 2015-02-12 20:47:26 +0530 |
---|---|---|
committer | Pratik Naik <pratiknaik@gmail.com> | 2015-02-12 20:47:26 +0530 |
commit | 2c0c9a17d07832e8a4a3a50b95e1f8f15ab22d5a (patch) | |
tree | 1e9f31f4c615a06db688b42de3267bd892e48313 /lib/assets/javascripts/channel.js.coffee | |
parent | 00aec9c8e8b30cfb40454ed44693465843b0d4b2 (diff) | |
download | rails-2c0c9a17d07832e8a4a3a50b95e1f8f15ab22d5a.tar.gz rails-2c0c9a17d07832e8a4a3a50b95e1f8f15ab22d5a.tar.bz2 rails-2c0c9a17d07832e8a4a3a50b95e1f8f15ab22d5a.zip |
Move assets to the gem
Diffstat (limited to 'lib/assets/javascripts/channel.js.coffee')
-rw-r--r-- | lib/assets/javascripts/channel.js.coffee | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/lib/assets/javascripts/channel.js.coffee b/lib/assets/javascripts/channel.js.coffee new file mode 100644 index 0000000000..058bcc03aa --- /dev/null +++ b/lib/assets/javascripts/channel.js.coffee @@ -0,0 +1,27 @@ +class @Cable.Channel + constructor: (params = {}) -> + @channelName ?= @underscore @constructor.name + + params['channel'] = @channelName + @channelIdentifier = JSON.stringify params + + cable.subscribe(@channelIdentifier, { + onConnect: @connected + onDisconnect: @disconnected + onReceiveData: @received + }) + + connected: => + # Override in the subclass + + disconnected: => + # Override in the subclass + + received: (data) => + # Override in the subclass + + send: (data) -> + cable.sendData @channelIdentifier, JSON.stringify data + + underscore: (value) -> + value.replace(/[A-Z]/g, (match) => "_#{match.toLowerCase()}").substr(1)
\ No newline at end of file |