rails_liff 0.2.0 → 0.3.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 65df082c3bbf2c06d16048a80d700d8451708b3a6bb8e95e60d91574aded649a
4
- data.tar.gz: aa5d0454763a0a6904f4701847021d9ee2aa3461077a60704343f11a9ed3d7aa
3
+ metadata.gz: f6a70867681f033e0a3ce9c0232082aebdf337f38589fd69b79773f40ee3bf2f
4
+ data.tar.gz: 51631c9ed993c9cd5fc4671bb687bd8f7fd5c63c02831d813e4522f68c4ee336
5
5
  SHA512:
6
- metadata.gz: 347c210ec8c5c21050a7504200f091c392932fbc5527f154acde5121d3e2282c1bb15e9599dfab19f0d5a3213854ec1bd2784ceec468767f1eb2c9c1a05e9dbf
7
- data.tar.gz: 7c3f62e038b8c2bdc4d4f86ec11cfbdc82bf2a7dfe3a016036a0d84924cb36b842a3e3bc1b046e215bf2fc7e1670e463d08e6abd78b916633f9f895325dc754c
6
+ metadata.gz: 4765ab5d3e3f766b9a08d189db96973047304e600bd3cfd6c49e52caf5f3fe6f894bd063c7360ecf278859fdd89dd8a249add590445db57b2382cd39cd151753
7
+ data.tar.gz: 43bcc0e7f4873643821fbf6aa9fa76d2bfd10657df3151294a3c18a0e5db046023b101d92252e99e047a0ab6f328d8e62a613ec6db9103fa6f77db0127abcf2e
@@ -19,5 +19,58 @@
19
19
  <div class="container-fluid">
20
20
  <%= yield %>
21
21
  </div>
22
+
23
+ <script>
24
+ $(function(){
25
+ $('input[type="submit"]').click(function(e){
26
+ e.preventDefault();
27
+ send_message(get_request_text($("form")));
28
+ })
29
+
30
+ function send_message(text){
31
+ liff.sendMessages(
32
+ [
33
+ {
34
+ type: 'text',
35
+ text: text
36
+ }
37
+ ]
38
+ ).then(() => {
39
+ liff.closeWindow();
40
+ })
41
+ .catch((err) => {
42
+ alert('error', err);
43
+ });
44
+ }
45
+
46
+ function get_request_text(form_element){
47
+ var data = get_form_data(form_element);
48
+ var json = JSON.stringify(data);
49
+ var method = form_element.attr("method").toUpperCase();
50
+ var url = form_element.attr("action");
51
+ return `${method} ${url}\n${json}`;
52
+ }
53
+
54
+ function get_form_data(form_element){
55
+ var excpet = ["utf8","authenticity_token"];
56
+ var form = form_element.serializeArray();
57
+ form = form.filter((a)=>{ return !excpet.includes(a.name) })
58
+ var data = {}
59
+ form.forEach((a)=>{ set_object_value(data, a.name, a.value) })
60
+ return data;
61
+ }
62
+
63
+ function set_object_value(object, path, value){
64
+ var o = object;
65
+ var p = path.replace(/(\]\[)/g, "[").replace(/]$/g, "").split("[")
66
+ var last_key = p.pop();
67
+ p.forEach((key)=>{
68
+ o[key] = o[key] || {}
69
+ o = o[key]
70
+ })
71
+ o[last_key] = value;
72
+ }
73
+ });
74
+ </script>
22
75
  </body>
23
76
  </html>
@@ -1,3 +1,3 @@
1
1
  module RailsLiff
2
- VERSION = '0.2.0'
2
+ VERSION = '0.3.0'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rails_liff
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - etrex kuo
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-03-09 00:00:00.000000000 Z
11
+ date: 2019-03-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails