pinkman 0.9.9.9.2 → 0.9.9.9.3

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: 26b2352f1efe763891e31f6d339772e481d632c966c0f29e23054cdf61fd680d
4
- data.tar.gz: cefb2ab1d34c1f4350c914af19b9664a43abea464aab82b136534d55e77f6d04
3
+ metadata.gz: 2f842e53821c4c58ca54c1105996cd3b8aa4bfa639b8b5c381063ed942ca46d3
4
+ data.tar.gz: 7b4ab8589e018ba2b079a88c645306d46204fba7a4003b2598ed6a10ee626843
5
5
  SHA512:
6
- metadata.gz: f6fce98f764b57135076ec3e5f29e24c7838cfd7d11cff5465f81b642611b6c2eb5520e6e14474434b212e233cda8535371331d8b5f009f08b5bf7b91ea2696f
7
- data.tar.gz: 995648925ea96c74911ac0dc6818973a1547cd6d670aea3ca0e15bc8227252be12bd3ac6665424a13d544eb0db172f0e07820bd2224e74fd3c34b24db582eb0c
6
+ metadata.gz: ffb37332e2dd16e0015b2e9456bd213c7b33c3c3966de4cd121b74206896e2f4efdb3317ced1e7405ade122da66c0fb011c020a0fae4e9b91d99e9b764b2aefd
7
+ data.tar.gz: 1e492502ef0329444a55dd0c1f35d50fa7e1924e5d9224de2b2f3b7cc62cfb0c3460e5b7b5608f94765b5f7fd9cae74c1c78ffd4f9327adb64dd120fc36681ea
@@ -14,4 +14,5 @@ class window.PinkmanCache
14
14
  @get: (name) ->
15
15
  @_caching[name]
16
16
 
17
- window.$c = PinkmanCache
17
+ $(document).ready ->
18
+ window.$c = window.PinkmanCache
@@ -279,6 +279,9 @@ class window.PinkmanRouter
279
279
  @go: (args...) ->
280
280
  @force(args...)
281
281
 
282
+ @to: (args...) ->
283
+ @force(args...)
284
+
282
285
  @forward: ->
283
286
  window.history.forward() if window.history?
284
287
 
@@ -15,6 +15,7 @@ module Pinkman
15
15
  %/
16
16
  resources :#{api_name} do
17
17
  collection do
18
+ get 'get(\/:query)', action: 'get'
18
19
  get 'search(\/:query)', action: 'search'
19
20
  end
20
21
  end
@@ -13,6 +13,22 @@ class Api::<%= controller_name %> < ApiController
13
13
  def show
14
14
  render json: @<%= instance_name %>.json(current_scope)
15
15
  end
16
+
17
+ # get api/<%= api_name %>/get
18
+ def get
19
+ <%= collection_name %> = <%= active_record_model_name %>.get(handle_query_param)
20
+ render json: <%= collection_name %>.json(current_scope)
21
+ end
22
+
23
+ # --- TO DO: Revise this ---
24
+ def handle_query_param
25
+ if params[:query].is_a? ActionController::Parameters
26
+ params[:query].permit!
27
+ params[:query].to_h
28
+ else
29
+ params[:query]
30
+ end
31
+ end
16
32
 
17
33
  # get api/<%= api_name %>/search/:query
18
34
  def search
@@ -1,3 +1,3 @@
1
1
  module Pinkman
2
- VERSION = "0.9.9.9.2"
2
+ VERSION = "0.9.9.9.3"
3
3
  end
data/lib/pinkman.rb CHANGED
@@ -36,8 +36,10 @@ module Pinkman
36
36
  Slim::Engine.set_options attr_list_delims: {'(' => ')', '[' => ']'}
37
37
  end
38
38
 
39
- # Class method: serializer
39
+ # Extending ActiveRecord
40
40
  ActiveRecord::Base.singleton_class.class_eval do
41
+
42
+ # Serializer
41
43
  def serializer= value
42
44
  @serializer = value
43
45
  end
@@ -45,6 +47,22 @@ module Pinkman
45
47
  def serializer
46
48
  @serializer || (begin eval(self.to_s + 'Serializer') rescue nil end)
47
49
  end
50
+
51
+ # Get: Pinkman way of fetching records
52
+ def get query
53
+ if (begin Integer(query) rescue false end)
54
+ [find(query)]
55
+ elsif query.is_a? Hash
56
+ where(query)
57
+ elsif query.is_a? Array
58
+ where(id: query)
59
+ elsif query.is_a? String
60
+ search(query)
61
+ else
62
+ []
63
+ end
64
+ end
65
+
48
66
  end
49
67
 
50
68
  # Active Record Relation: json
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pinkman
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.9.9.9.2
4
+ version: 0.9.9.9.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Agilso Oliveira
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2018-03-26 00:00:00.000000000 Z
11
+ date: 2018-03-27 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler