Slide 34
Slide 34 text
wxpay & actioncable
# order action cable( order_channel.rb )
class OrderChannel < ApplicationCable::Channel
def subscribed
stream_from "order_for_#{params[:order_id]}"
end
end
# order.rb
class Order
def send_cable_notify
ActionCable.server.broadcast "order_for_#{self.id}", {}
ActionCable.server.broadcast "user_post_for_user_#{self.reader_id}_and_post_#{self.post_id}", {
end
end
// javascripts/pay_helper.js
function showSpin(order_id){
window.App.order_channel = window.App.cable.subscriptions.
create( {channel: 'OrderChannel', order_id: order_id}, {
received: function(){
$('#spin').spin(false);
Turbolinks.visit();
}
});
$('#spin').css('z-index', 1).spin().css('background-color', 'rgba(0,0,0,0.2)');
};
function hideSpin(){
$('#spin').css('z-index', -1).spin(false).css('background-color', 'transparent');
}