admin_it 1.2.1 → 1.2.2
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/README.md +6 -0
- data/admin_it.gemspec +6 -6
- data/app/assets/javascript/admin_it/admin_it.js +8 -0
- data/app/assets/javascript/admin_it/index.js +1 -0
- data/app/assets/stylesheets/admin_it/index.css +1 -0
- data/app/views/admin_it/editors/_combo.html.slim +11 -0
- data/lib/admin_it/data/active_record/field.rb +3 -1
- data/lib/admin_it/data/active_record/single_context.rb +4 -6
- data/lib/admin_it/field/field.rb +9 -2
- data/lib/admin_it/version.rb +1 -1
- metadata +16 -15
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: e96e6d9fe0799703b334eb063cf44a1ee7498ae0
|
4
|
+
data.tar.gz: 2d67207520e2cf2cdad5409a96711587b63abdb6
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: ef9256ae9ff7ac5710c74fdbad74a401c72d1fa0c6b45942869cef6bf1e4fce353ca393ebe574d71cda077fa1525b75162869b57af8d5b8a37effb104aefa66b
|
7
|
+
data.tar.gz: 9638a3aef76d5b3f5a24d1463c08f60049dfc2e17b5a3402c37d4d531073e82cc893badb83a1ca1cf168bc11a30bc9760a0e115ec658f570373460d965b9571f
|
data/README.md
CHANGED
data/admin_it.gemspec
CHANGED
@@ -9,25 +9,25 @@ Gem::Specification.new do |spec|
|
|
9
9
|
spec.version = AdminIt::VERSION
|
10
10
|
spec.authors = ['Alexey Ovchinnikov']
|
11
11
|
spec.email = ['alexiss@cybernetlab.ru']
|
12
|
-
spec.description = %q
|
13
|
-
spec.summary = %q
|
12
|
+
spec.description = %q(Admin interface)
|
13
|
+
spec.summary = %q(Admin interface)
|
14
14
|
spec.homepage = 'https://github.com/cybernetlab/admin_it'
|
15
15
|
spec.license = 'MIT'
|
16
16
|
spec.metadata = {
|
17
17
|
'issue_tracker' => 'https://github.com/cybernetlab/admin_it/issues'
|
18
18
|
}
|
19
19
|
|
20
|
-
spec.files = `git ls-files`.split(
|
21
|
-
spec.executables = spec.files.grep(
|
22
|
-
spec.test_files = spec.files.grep(
|
20
|
+
spec.files = `git ls-files`.split($INPUT_RECORD_SEPARATOR)
|
21
|
+
spec.executables = spec.files.grep(/^bin\//) { |f| File.basename(f) }
|
22
|
+
spec.test_files = spec.files.grep(/^(test|spec|features)\//)
|
23
23
|
spec.require_paths = ['lib']
|
24
24
|
|
25
|
-
spec.add_dependency 'sprockets'
|
26
25
|
spec.add_dependency 'rails', '~> 4.0'
|
27
26
|
spec.add_dependency 'devise'
|
28
27
|
spec.add_dependency 'wrap_it'
|
29
28
|
spec.add_dependency 'ensure_it'
|
30
29
|
spec.add_dependency 'aws-sdk'
|
30
|
+
spec.add_dependency 'select2-rails'
|
31
31
|
|
32
32
|
spec.add_development_dependency 'bundler', '~> 1.3'
|
33
33
|
spec.add_development_dependency 'sqlite3'
|
@@ -120,6 +120,12 @@ var initImageUploads = function() {
|
|
120
120
|
});
|
121
121
|
}
|
122
122
|
|
123
|
+
var initSelects = function() {
|
124
|
+
$('.select2:not(.select2-container)').select2({
|
125
|
+
minimumResultsForSearch: -1 // disable search
|
126
|
+
});
|
127
|
+
}
|
128
|
+
|
123
129
|
$(document).on('ready page:load', function() {
|
124
130
|
initPartials();
|
125
131
|
// initDialogs();
|
@@ -128,6 +134,7 @@ $(document).on('ready page:load', function() {
|
|
128
134
|
initPopups();
|
129
135
|
initLinks();
|
130
136
|
initImageUploads();
|
137
|
+
initSelects();
|
131
138
|
// allow dialog content reloading
|
132
139
|
$('.modal').on('hidden.bs.modal', function() { $(this).removeData(); })
|
133
140
|
.on('loaded.bs.modal', function() {
|
@@ -144,5 +151,6 @@ $(document).on('ready page:load', function() {
|
|
144
151
|
});
|
145
152
|
}
|
146
153
|
initImageUploads();
|
154
|
+
initSelects();
|
147
155
|
})
|
148
156
|
});
|
@@ -0,0 +1,11 @@
|
|
1
|
+
- for_context ||= context
|
2
|
+
- name ||= "#{for_context.resource.name}[#{field.name}]"
|
3
|
+
- id ||= "#{for_context.resource.name}_#{field.name}"
|
4
|
+
- value ||= field.read(for_context.entity)
|
5
|
+
- options = for_context.entity.class.enumerized_attributes[field.name].options
|
6
|
+
- opts = { name: name, id: id }
|
7
|
+
|
8
|
+
select.select2 *opts
|
9
|
+
- options.each do |option|
|
10
|
+
- selected = option[1] == value ? { selected: 'selected' } : {}
|
11
|
+
option value=option[1] *selected = option[0]
|
@@ -46,11 +46,13 @@ module AdminIt
|
|
46
46
|
I18n.t('admin_it.collection.no_data')
|
47
47
|
else
|
48
48
|
v = context.read(value.first)
|
49
|
-
v.nil? ? '' :
|
49
|
+
v.nil? ? '' : v + ' ...'
|
50
50
|
end
|
51
51
|
else
|
52
52
|
context.read(value)
|
53
53
|
end
|
54
|
+
elsif type == :enum
|
55
|
+
value.text
|
54
56
|
else
|
55
57
|
value
|
56
58
|
end
|
@@ -9,9 +9,8 @@ module AdminIt
|
|
9
9
|
entity = entity_class.find(identity)
|
10
10
|
controller.authorize(entity, "#{name}?") if AdminIt::Env.pundit?
|
11
11
|
if child?
|
12
|
-
fields
|
13
|
-
.select { |f| f.
|
14
|
-
f.assoc.klass == parent.entity_class }
|
12
|
+
fields(scope: :relation)
|
13
|
+
.select { |f| f.assoc.klass == parent.entity_class }
|
15
14
|
.each do |f|
|
16
15
|
if f.assoc.collection?
|
17
16
|
entity.send(f.name) << parent.entity
|
@@ -53,9 +52,8 @@ module AdminIt
|
|
53
52
|
def self.included(base)
|
54
53
|
base.after_initialize do
|
55
54
|
if child?
|
56
|
-
fields
|
57
|
-
.select { |f| f.
|
58
|
-
f.assoc.klass == parent.entity_class }
|
55
|
+
fields(scope: :relation)
|
56
|
+
.select { |f| f.assoc.klass == parent.entity_class }
|
59
57
|
.each do |f|
|
60
58
|
if f.assoc.collection?
|
61
59
|
entity.send(f.name) << parent.entity
|
data/lib/admin_it/field/field.rb
CHANGED
@@ -113,7 +113,10 @@ module AdminIt
|
|
113
113
|
end
|
114
114
|
|
115
115
|
def self.editor
|
116
|
-
@editor
|
116
|
+
return @editor unless @editor.nil?
|
117
|
+
return @editor = :image if type == :image
|
118
|
+
return @editor = :combo if type == :enum
|
119
|
+
@editor = EDITORS[0]
|
117
120
|
end
|
118
121
|
|
119
122
|
class_attr_reader :entity_class, :display_name, :type, :partial, :editor
|
@@ -212,7 +215,11 @@ module AdminIt
|
|
212
215
|
end
|
213
216
|
|
214
217
|
def show_value(entity)
|
215
|
-
|
218
|
+
if type == :enum
|
219
|
+
entity.send(name).text
|
220
|
+
else
|
221
|
+
read_value(entity)
|
222
|
+
end
|
216
223
|
end
|
217
224
|
|
218
225
|
def write_value(entity, value)
|
data/lib/admin_it/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: admin_it
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.2.
|
4
|
+
version: 1.2.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Alexey Ovchinnikov
|
@@ -10,20 +10,6 @@ bindir: bin
|
|
10
10
|
cert_chain: []
|
11
11
|
date: 2014-06-09 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
|
-
- !ruby/object:Gem::Dependency
|
14
|
-
name: sprockets
|
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'
|
27
13
|
- !ruby/object:Gem::Dependency
|
28
14
|
name: rails
|
29
15
|
requirement: !ruby/object:Gem::Requirement
|
@@ -94,6 +80,20 @@ dependencies:
|
|
94
80
|
- - ">="
|
95
81
|
- !ruby/object:Gem::Version
|
96
82
|
version: '0'
|
83
|
+
- !ruby/object:Gem::Dependency
|
84
|
+
name: select2-rails
|
85
|
+
requirement: !ruby/object:Gem::Requirement
|
86
|
+
requirements:
|
87
|
+
- - ">="
|
88
|
+
- !ruby/object:Gem::Version
|
89
|
+
version: '0'
|
90
|
+
type: :runtime
|
91
|
+
prerelease: false
|
92
|
+
version_requirements: !ruby/object:Gem::Requirement
|
93
|
+
requirements:
|
94
|
+
- - ">="
|
95
|
+
- !ruby/object:Gem::Version
|
96
|
+
version: '0'
|
97
97
|
- !ruby/object:Gem::Dependency
|
98
98
|
name: bundler
|
99
99
|
requirement: !ruby/object:Gem::Requirement
|
@@ -266,6 +266,7 @@ files:
|
|
266
266
|
- app/views/admin_it/context/_table.html.slim
|
267
267
|
- app/views/admin_it/context/_tiles.html.slim
|
268
268
|
- app/views/admin_it/edit.html.slim
|
269
|
+
- app/views/admin_it/editors/_combo.html.slim
|
269
270
|
- app/views/admin_it/editors/_hidden.html.slim
|
270
271
|
- app/views/admin_it/editors/_image.html.slim
|
271
272
|
- app/views/admin_it/editors/_text.html.slim
|