goofansu/wechat-starter

View on GitHub
app/views/home/index.html.erb

Summary

Maintainability
Test Coverage
<script src="https://res.wx.qq.com/open/js/jweixin-1.6.0.js"></script>
<%= wechat_config_js debug: true, api: %w(hideMenuItems closeWindow chooseWXPay) -%>
<script type="application/javascript">
 wx.ready(function() {
   wx.hideOptionMenu();
 });
</script>

<div class="weui-msg">
  <div class="weui-msg__text-area">
    <h1 class="weui-msg__title">Hello, <%= current_user.nickname %></h1>
    <img src="<%= current_user.avatar %>" width="128" height="128">
  </div>
  <div class="weui-msg__opr-area">
    <p class="weui-btn-area">
      <% if Figaro.env.wechat_pay_mch_id %>
        <a href="javascript:wxpay();" class="weui-btn weui-btn_primary">Try wechat pay!</a>
      <% end %>
      <a href="javascript:wx.closeWindow();" class="weui-btn weui-btn_plain-default">Close</a>
    </p>
  </div>
</div>

<% if Figaro.env.wechat_pay_mch_id %>
  <script>
   function wxpay() {
     $.post('/wx_pay', function(data) {
       wx.chooseWXPay({
         timestamp: data.timeStamp,
         nonceStr: data.nonceStr,
         package: data.package,
         signType: data.signType,
         paySign: data.paySign,
         success: function (res) {
           alert(JSON.stringify(res));
         },
         error: function(e) {
           alert(JSON.stringify(e));
         }
       });
     });
   }
  </script>
<% end %>