kablam 0.0.0 → 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/kablam/kablam_record.rb +60 -0
- data/lib/kablam.rb +2 -0
- metadata +17 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: '09febbe9182ed6f08661aa5fae4a8b5d5612cf5db8a3b677c6a7db469fd5e803'
|
4
|
+
data.tar.gz: 4e6b09be395b97a7c317780043d272363e5b51fc0a03a40b901ef948049a6557
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 0ac03d1ebc891c1909c5bbd515b47ea5388ca89bca54528d227428156a6d4842cbb7dedf6c35d16034ace744555294df87ef12497200d24feed3f5834eca99f5
|
7
|
+
data.tar.gz: ab1b5ef57a4a81b286d6177ac67b6ff75ef9cf545289a1e1bce776c7b25e66f8d94d467fbe759ffe3e46f88f22913182167de9ec118fe1f82415d03c1a5a60ab
|
@@ -0,0 +1,60 @@
|
|
1
|
+
class Kablam::KablamRecord < ActiveRecord::Base
|
2
|
+
self.abstract_class = true
|
3
|
+
|
4
|
+
def undoable?
|
5
|
+
attributes.include?("destroyed_at")
|
6
|
+
end
|
7
|
+
|
8
|
+
def standard_hash
|
9
|
+
serializable_hash.except("created_at",
|
10
|
+
"updated_at").reject{|k,v|v.blank?}
|
11
|
+
end
|
12
|
+
|
13
|
+
def identifier
|
14
|
+
send(self.class.fields.first)
|
15
|
+
end
|
16
|
+
|
17
|
+
def self.fields
|
18
|
+
result = self.attribute_names - ["id", "created_at", "updated_at"]
|
19
|
+
end
|
20
|
+
|
21
|
+
def self.field_set
|
22
|
+
field_types = {
|
23
|
+
input: [],
|
24
|
+
text: [],
|
25
|
+
hidden: [],
|
26
|
+
select: [],
|
27
|
+
checkbox_array: [],
|
28
|
+
checkbox_boolean: [],
|
29
|
+
multi_inputs: [],
|
30
|
+
file_upload: [],
|
31
|
+
exclude: ["id", "created_at", "updated_at", "destroyed_at"]
|
32
|
+
}
|
33
|
+
user_fields = set_fields
|
34
|
+
user_fields[:exclude] += field_types[:exclude] if user_fields[:exclude].present?
|
35
|
+
|
36
|
+
field_types.merge user_fields.select { |k| field_types.keys.include? k }
|
37
|
+
end
|
38
|
+
|
39
|
+
def self.prep_form_field
|
40
|
+
# This method will prepare hash of hashes
|
41
|
+
# for each data-field w/ the form input type.
|
42
|
+
# ex: date, radio, select, etc.
|
43
|
+
obj = self.new
|
44
|
+
hashy = {}
|
45
|
+
fields_array = self.fields
|
46
|
+
fields_array.each do |k|
|
47
|
+
hashy[k] = obj.column_for_attribute(k).type
|
48
|
+
hashy[k] = :input if [:string, :float, :integer].include? hashy[k]
|
49
|
+
hashy[k] = :checkbox_boolean if [:boolean].include? hashy[k]
|
50
|
+
self.field_set.keys.each{|type| hashy[k] = type if self.field_set[type].include?(k)}
|
51
|
+
end
|
52
|
+
hashy
|
53
|
+
end
|
54
|
+
|
55
|
+
def self.choices(field, locale)
|
56
|
+
c_set = self.form_choices[field]
|
57
|
+
return false if c_set.blank?
|
58
|
+
c_set.map{|choice| {value: choice[:value], label: (choice[:label][locale.to_s] || "CHOICE TRANSLATION NOT FOUND! PLEASE CONTACT STAFF!")}}
|
59
|
+
end
|
60
|
+
end
|
data/lib/kablam.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: kablam
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Sergio Rivas
|
@@ -9,7 +9,21 @@ autorequire:
|
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
11
|
date: 2018-09-14 00:00:00.000000000 Z
|
12
|
-
dependencies:
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: activerecord
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - ">="
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '0'
|
20
|
+
type: :runtime
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - ">="
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '0'
|
13
27
|
description: Gem to make development of everything in rails even faster.
|
14
28
|
email: sergiorivas@163.com
|
15
29
|
executables: []
|
@@ -17,6 +31,7 @@ extensions: []
|
|
17
31
|
extra_rdoc_files: []
|
18
32
|
files:
|
19
33
|
- lib/kablam.rb
|
34
|
+
- lib/kablam/kablam_record.rb
|
20
35
|
homepage: http://rubygems.org/gems/kablam
|
21
36
|
licenses:
|
22
37
|
- MIT
|