adminpanel 2.2.2 → 2.2.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +2 -2
- data/app/controllers/adminpanel/analytics_controller.rb +30 -33
- data/app/controllers/adminpanel/application_controller.rb +1 -1
- data/app/controllers/adminpanel/sections_controller.rb +1 -1
- data/app/controllers/adminpanel/sessions_controller.rb +8 -1
- data/app/helpers/adminpanel/adminpanel_form_builder.rb +3 -1
- data/app/helpers/adminpanel/application_helper.rb +1 -5
- data/app/helpers/adminpanel/router_helper.rb +8 -0
- data/app/models/adminpanel/permission.rb +11 -2
- data/app/models/adminpanel/section.rb +0 -1
- data/app/models/adminpanel/user.rb +8 -4
- data/app/models/concerns/adminpanel/base.rb +9 -4
- data/app/views/adminpanel/galleries/index.html.erb +3 -3
- data/app/views/adminpanel/galleries/move_worst.js.erb +1 -1
- data/app/views/shared/_show_icon_button.html.erb +1 -0
- data/config/locales/es.yml +12 -7
- data/config/routes.rb +15 -4
- data/lib/adminpanel/version.rb +1 -1
- data/lib/generators/adminpanel/migration/migration_generator.rb +8 -1
- data/lib/generators/adminpanel/resource/resource_generator.rb +2 -3
- data/lib/generators/adminpanel/resource/resource_generator_helper.rb +3 -3
- data/lib/generators/adminpanel/resource/templates/adminpanel_resource_template.rb +2 -2
- data/test/generators/resource_generator_test.rb +21 -31
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 1507bc64df02e756c6142e0222e98ebe33b1bf09
|
4
|
+
data.tar.gz: 32e379878e099ac52116affe5515589d39f83e91
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 621fed57774947e6ab5aefbde93243d572bde6bb5fc26112e4c75ef0ca37a1e33ca7098ed5990e27c26d9d47f160f9f0437fb4d2871ba6514cb7a87b923d4dd1
|
7
|
+
data.tar.gz: e71a1faf210481f8c792ffbf137ca4d70d6481119d6911b9f9f4b93f31c41998cbcb20ebcff0404c989c62e114835a003aef8becd8c173ca91cce3a1296f90c4
|
data/README.md
CHANGED
@@ -1,10 +1,10 @@
|
|
1
|
-
# Adminpanel
|
1
|
+
# [![CoDN](http://cl.ly/image/130Q0E153d2G/codn180.png)](http://www.codn.mx "CoDN") Adminpanel
|
2
2
|
|
3
3
|
CMS for Rails 4, for rails 3.x check the corresponding branch.
|
4
4
|
|
5
5
|
[![Gem Version](https://badge.fury.io/rb/adminpanel.svg)](http://badge.fury.io/rb/adminpanel)
|
6
6
|
[![Build Status](https://travis-ci.org/joseramonc/adminpanel.svg?branch=master)](https://travis-ci.org/joseramonc/adminpanel)
|
7
|
-
[![Code Climate](https://codeclimate.com/github/joseramonc/adminpanel.
|
7
|
+
[![Code Climate](https://codeclimate.com/github/joseramonc/adminpanel/badges/gpa.svg)](https://codeclimate.com/github/joseramonc/adminpanel)
|
8
8
|
<!-- [![Dependency Status](https://gemnasium.com/joseramonc/adminpanel.svg)](https://gemnasium.com/joseramonc/adminpanel) -->
|
9
9
|
## Installation
|
10
10
|
|
@@ -83,49 +83,46 @@ module Adminpanel
|
|
83
83
|
def fb
|
84
84
|
authorize! :read, Adminpanel::Analytic
|
85
85
|
auth = Adminpanel::Auth.find_by_key('facebook')
|
86
|
-
if !auth.nil? && auth.value != '' # not nil & not void
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
86
|
+
redirect_via_turbolinks_to analytics_path if !auth.nil? && auth.value != '' # not nil & not void
|
87
|
+
if params[:insight].present?
|
88
|
+
period = params[:insight]
|
89
|
+
else
|
90
|
+
period = 'day' #default period
|
91
|
+
end
|
92
|
+
page_graph = Koala::Facebook::API.new(auth.value)
|
93
|
+
@impressions,
|
94
|
+
@impressions_unique,
|
95
95
|
|
96
|
-
|
97
|
-
|
96
|
+
@new_likes,
|
97
|
+
@total_likes,
|
98
98
|
|
99
|
-
|
100
|
-
|
99
|
+
@hidden,
|
100
|
+
@hidden_unique,
|
101
101
|
|
102
|
-
|
103
|
-
|
102
|
+
@consumptions,
|
103
|
+
@consumptions_unique,
|
104
104
|
|
105
|
-
|
106
|
-
|
105
|
+
@views,
|
106
|
+
@views_unique,
|
107
107
|
|
108
|
-
|
109
|
-
|
110
|
-
|
111
|
-
|
108
|
+
@stories = page_graph.batch do |api|
|
109
|
+
#all information on same request
|
110
|
+
api.get_connections('me', 'insights', metric: 'page_impressions', period: period) #eye
|
111
|
+
api.get_connections('me', 'insights', metric: 'page_impressions_unique', period: period) #eye
|
112
112
|
|
113
|
-
|
114
|
-
|
113
|
+
api.get_connections('me', 'insights', metric: 'page_fan_adds') #fb-thumb
|
114
|
+
api.get_connections('me', 'insights', metric: 'page_fans') #fb-thumb
|
115
115
|
|
116
|
-
|
117
|
-
|
116
|
+
api.get_connections('me', 'insights', metric: 'page_negative_feedback', period: period)
|
117
|
+
api.get_connections('me', 'insights', metric: 'page_negative_feedback_unique', period: period)
|
118
118
|
|
119
|
-
|
120
|
-
|
119
|
+
api.get_connections('me', 'insights', metric: 'page_consumptions', period: period)
|
120
|
+
api.get_connections('me', 'insights', metric: 'page_consumptions_unique', period: period)
|
121
121
|
|
122
|
-
|
123
|
-
|
122
|
+
api.get_connections('me', 'insights', metric: 'page_views')
|
123
|
+
api.get_connections('me', 'insights', metric: 'page_views_unique')
|
124
124
|
|
125
|
-
|
126
|
-
end
|
127
|
-
else
|
128
|
-
redirect_to analytics_path
|
125
|
+
api.get_connections('me', 'insights', metric: 'page_stories', period: period)
|
129
126
|
end
|
130
127
|
end
|
131
128
|
|
@@ -14,8 +14,8 @@ module Adminpanel
|
|
14
14
|
include Adminpanel::FacebookActions
|
15
15
|
include Adminpanel::TwitterActions
|
16
16
|
include Adminpanel::SitemapActions
|
17
|
-
private
|
18
17
|
|
18
|
+
private
|
19
19
|
def strong_params_for_cancan
|
20
20
|
resource = controller_name.singularize.to_sym
|
21
21
|
method = "#{resource}_params"
|
@@ -1,6 +1,8 @@
|
|
1
1
|
module Adminpanel
|
2
2
|
class SessionsController < ActionController::Base
|
3
3
|
include SessionsHelper
|
4
|
+
include ApplicationHelper
|
5
|
+
|
4
6
|
protect_from_forgery
|
5
7
|
layout 'admin-login'
|
6
8
|
before_action :configure_instagram, only:[:instagram_login, :instagram_callback]
|
@@ -13,7 +15,12 @@ module Adminpanel
|
|
13
15
|
if user && user.authenticate(params[:session][:password])
|
14
16
|
sign_in user
|
15
17
|
flash[:success] = I18n.t('authentication.signin_success')
|
16
|
-
|
18
|
+
permission = user.rol.permissions.first
|
19
|
+
if permission.nil?
|
20
|
+
redirect_to root_url
|
21
|
+
else
|
22
|
+
redirect_to [route_symbol(permission.resource)]
|
23
|
+
end
|
17
24
|
else
|
18
25
|
flash.now[:error] = I18n.t('authentication.signin_error')
|
19
26
|
render 'new'
|
@@ -72,11 +72,13 @@ module Adminpanel
|
|
72
72
|
end
|
73
73
|
|
74
74
|
def enum_field name, *args
|
75
|
-
select name, self.object.class.actions.map{|action, value| [I18n.t("
|
75
|
+
select name, self.object.class.actions.map{|action, value| [I18n.t("#{self.object.class.name.demodulize.downcase}.#{action}"), action]}, *args
|
76
76
|
end
|
77
77
|
|
78
78
|
def resource_select name, *args
|
79
79
|
select name, Adminpanel.displayable_resources.map{|resource| [symbol_class(resource).display_name, resource.to_s]}, *args
|
80
|
+
# select name, Adminpanel.displayable_resources.map{|resource| ['resource', 'resource']}, *args
|
81
|
+
|
80
82
|
end
|
81
83
|
|
82
84
|
def select(name, select_options, *args)
|
@@ -23,11 +23,7 @@ module Adminpanel
|
|
23
23
|
def is_current_section?(display_name)
|
24
24
|
display_name == params[:controller].classify.constantize.display_name ? 'active' : nil
|
25
25
|
end
|
26
|
-
|
27
|
-
def section_is_login(section_name)
|
28
|
-
section_name.downcase == 'login'
|
29
|
-
end
|
30
|
-
|
26
|
+
|
31
27
|
def link_to_add_fields(name, f, association)
|
32
28
|
new_object = f.object.send(association).klass.new
|
33
29
|
id = new_object.object_id
|
@@ -16,6 +16,14 @@ module Adminpanel
|
|
16
16
|
resource_class(resource).twitter_share?
|
17
17
|
end
|
18
18
|
|
19
|
+
def member_routes(resource)
|
20
|
+
resource_class(resource).member_routes
|
21
|
+
end
|
22
|
+
|
23
|
+
def collection_routes(resource)
|
24
|
+
resource_class(resource).collection_routes
|
25
|
+
end
|
26
|
+
|
19
27
|
def rest_path_names
|
20
28
|
{
|
21
29
|
path_names: {
|
@@ -9,9 +9,19 @@ module Adminpanel
|
|
9
9
|
belongs_to :rol
|
10
10
|
|
11
11
|
def name
|
12
|
-
"#{
|
12
|
+
"#{action} #{symbol_class(self['resource']).display_name}"
|
13
13
|
end
|
14
14
|
|
15
|
+
# def action
|
16
|
+
# Permission.actions.each do |key, value|
|
17
|
+
# return I18n.t("permission.#{key}") if value == self['action']
|
18
|
+
# end
|
19
|
+
# end
|
20
|
+
|
21
|
+
# def resource
|
22
|
+
# symbol_class(self['resource']).display_name.to_s.pluralize(I18n.default_locale)
|
23
|
+
# end
|
24
|
+
|
15
25
|
def self.form_attributes
|
16
26
|
[
|
17
27
|
{
|
@@ -34,7 +44,6 @@ module Adminpanel
|
|
34
44
|
'label' => I18n.t('permission.resource'),
|
35
45
|
}
|
36
46
|
},
|
37
|
-
|
38
47
|
]
|
39
48
|
end
|
40
49
|
|
@@ -12,12 +12,12 @@ module Adminpanel
|
|
12
12
|
validates_length_of :name, :maximum => 25
|
13
13
|
|
14
14
|
#password validations
|
15
|
-
validates_confirmation_of :password
|
16
|
-
validates_presence_of :password
|
17
|
-
validates_length_of :password, :minimum => 6
|
15
|
+
validates_confirmation_of :password, :on => :create
|
16
|
+
validates_presence_of :password, :on => :create
|
17
|
+
validates_length_of :password, :minimum => 6, :on => :create
|
18
18
|
|
19
19
|
#password_confirmation validations
|
20
|
-
validates_presence_of :password_confirmation
|
20
|
+
validates_presence_of :password_confirmation, :on => :create
|
21
21
|
|
22
22
|
#email validations
|
23
23
|
validates_presence_of :email
|
@@ -76,6 +76,10 @@ module Adminpanel
|
|
76
76
|
]
|
77
77
|
end
|
78
78
|
|
79
|
+
def root_url
|
80
|
+
self.rol.permissions.first
|
81
|
+
end
|
82
|
+
|
79
83
|
def self.display_name
|
80
84
|
'Usuario'
|
81
85
|
end
|
@@ -86,10 +86,7 @@ module Adminpanel
|
|
86
86
|
end
|
87
87
|
|
88
88
|
def routes_options
|
89
|
-
{ path:
|
90
|
-
display_name.pluralize(I18n.default_locale).downcase
|
91
|
-
).tr(' ', '-')
|
92
|
-
}
|
89
|
+
{ path: display_name.pluralize(I18n.default_locale).parameterize }
|
93
90
|
end
|
94
91
|
|
95
92
|
def has_route?(route)
|
@@ -108,6 +105,14 @@ module Adminpanel
|
|
108
105
|
false
|
109
106
|
end
|
110
107
|
|
108
|
+
def member_routes
|
109
|
+
[]
|
110
|
+
end
|
111
|
+
|
112
|
+
def collection_routes
|
113
|
+
[]
|
114
|
+
end
|
115
|
+
|
111
116
|
private
|
112
117
|
def exlude?(route)
|
113
118
|
if routes_options[:except].nil?
|
@@ -25,9 +25,9 @@
|
|
25
25
|
<div class="row-fluid">
|
26
26
|
<div class="widget widget-padding span12">
|
27
27
|
<div class="widget-header">
|
28
|
-
|
29
|
-
|
30
|
-
|
28
|
+
<%= content_tag :i, nil, class: "fa fa-#{@model.icon}" %>
|
29
|
+
<h5><%= @model.display_name.pluralize(I18n.default_locale) %></h5>
|
30
|
+
</div>
|
31
31
|
<div class="widget-body">
|
32
32
|
<div class="dataTables_wrapper form-inline">
|
33
33
|
<table class="table table-striped table-bordered dataTable">
|
@@ -1 +1 @@
|
|
1
|
-
$("#galleries-content").html("<%= escape_javascript(render '
|
1
|
+
$("#galleries-content").html("<%= escape_javascript(render 'services_table', :locals => { :galleries => @galleries } ) %>");
|
data/config/locales/es.yml
CHANGED
@@ -42,6 +42,18 @@ es:
|
|
42
42
|
description: 'Escriba la descripción aquí'
|
43
43
|
Panel title: 'Panel Administrativo'
|
44
44
|
permission:
|
45
|
+
0: 'Ver'
|
46
|
+
to_read: 'Ver'
|
47
|
+
1: 'Publicar en Redes Sociales'
|
48
|
+
to_publish: 'Publicar en Redes Sociales'
|
49
|
+
2: 'Crear'
|
50
|
+
to_create: 'Crear'
|
51
|
+
3: 'Actualizar'
|
52
|
+
to_update: 'Actualizar'
|
53
|
+
4: 'Borrar'
|
54
|
+
to_destroy: 'Borrar'
|
55
|
+
5: 'Administrar'
|
56
|
+
to_manage: 'Administrar'
|
45
57
|
rol: 'Rol'
|
46
58
|
action: 'Acción permitida'
|
47
59
|
resource: 'Módulo'
|
@@ -157,10 +169,3 @@ es:
|
|
157
169
|
page_select: 'Selecciona una cuenta para la publicación'
|
158
170
|
message: 'Mensaje de la publicación'
|
159
171
|
saved_token: 'Log in con Twitter exitoso, ya puedes publicar con la cuenta de Twitter'
|
160
|
-
enum:
|
161
|
-
to_read: 'Ver'
|
162
|
-
to_publish: 'Publicar en Redes Sociales'
|
163
|
-
to_create: 'Crear'
|
164
|
-
to_update: 'Actualizar'
|
165
|
-
to_destroy: 'Borrar'
|
166
|
-
to_manage: 'Ver, crear, actualizar y borrar'
|
data/config/routes.rb
CHANGED
@@ -41,13 +41,16 @@ Adminpanel::Engine.routes.draw do
|
|
41
41
|
end
|
42
42
|
end
|
43
43
|
|
44
|
-
# normal resource
|
45
|
-
resources resource, resources_parameters(resource).merge(rest_path_names)
|
46
|
-
|
47
|
-
# if resource is going to be shared on facebook
|
48
44
|
resources resource, resources_parameters(resource).merge(rest_path_names) do
|
49
45
|
member do
|
46
|
+
# adds custom member routes of the resource
|
47
|
+
member_routes(resource).each do |route|
|
48
|
+
route.each do |request_type, args|
|
49
|
+
send(request_type, args['path'].to_sym, args['args'])
|
50
|
+
end
|
51
|
+
end
|
50
52
|
if has_fb_share?(resource)
|
53
|
+
# if resource is going to be shared on facebook
|
51
54
|
get :fb_choose_page, as: 'fb_choose_page', path: 'publicar-a-pagina-en-fb'
|
52
55
|
post :fb_save_token, as: 'fb_save_token', path: 'guardar-token-fb'
|
53
56
|
post :fb_publish, to: "#{resource}#fb_publish", as: 'fb_publish', path: 'publicar-a-facebook'
|
@@ -56,6 +59,14 @@ Adminpanel::Engine.routes.draw do
|
|
56
59
|
post :twitter_publish, to: "#{resource}#twitter_publish", as: 'twitter_publish', path: 'publicar-a-twitter'
|
57
60
|
end
|
58
61
|
end
|
62
|
+
collection do
|
63
|
+
# add custom collection routes of the resource
|
64
|
+
collection_routes(resource).each do |route|
|
65
|
+
route.each do |request_type, args|
|
66
|
+
send(request_type, args['path'].to_sym, args['args'])
|
67
|
+
end
|
68
|
+
end
|
69
|
+
end
|
59
70
|
end
|
60
71
|
end
|
61
72
|
end
|
data/lib/adminpanel/version.rb
CHANGED
@@ -24,7 +24,14 @@ module Adminpanel
|
|
24
24
|
|
25
25
|
def generate_migration
|
26
26
|
parameters = fields
|
27
|
-
parameters.delete_if
|
27
|
+
parameters.delete_if do |pair|
|
28
|
+
if pair.split(':').second == 'has_many'
|
29
|
+
puts "migrations aren't supported yet, sorry :(, but you can do a pull request"
|
30
|
+
true
|
31
|
+
else
|
32
|
+
false
|
33
|
+
end
|
34
|
+
end
|
28
35
|
invoke :migration, [migration_name, parameters]
|
29
36
|
end
|
30
37
|
|
@@ -6,11 +6,10 @@ module Adminpanel
|
|
6
6
|
include ResourceGeneratorHelper
|
7
7
|
source_root File.expand_path('../templates', __FILE__)
|
8
8
|
desc 'Generate the resource files necessary to use a model'
|
9
|
-
class_option :'gallery',
|
9
|
+
class_option :'skip-gallery',
|
10
10
|
:type => :boolean,
|
11
|
-
:aliases => '-g',
|
12
11
|
:default => true,
|
13
|
-
:desc => '
|
12
|
+
:desc => 'Choose if we shoud create the gallery for this resource, default: true (skip gallery )'
|
14
13
|
|
15
14
|
argument :fields, :type => :array, :default => [], :banner => 'field[:type][:index] field[:type][:index]'
|
16
15
|
|
@@ -40,7 +40,7 @@ module Adminpanel
|
|
40
40
|
end
|
41
41
|
|
42
42
|
def has_gallery?
|
43
|
-
options[:'gallery']
|
43
|
+
!options[:'skip-gallery']
|
44
44
|
end
|
45
45
|
|
46
46
|
def resource_name
|
@@ -51,8 +51,8 @@ module Adminpanel
|
|
51
51
|
"#{resource_name}file" #ex: postfile
|
52
52
|
end
|
53
53
|
|
54
|
-
def
|
55
|
-
resource_name.
|
54
|
+
def camelized_resource
|
55
|
+
resource_name.camelize
|
56
56
|
end
|
57
57
|
|
58
58
|
def pluralized_name
|
@@ -1,5 +1,5 @@
|
|
1
1
|
module Adminpanel
|
2
|
-
class <%=
|
2
|
+
class <%= camelized_resource %> < ActiveRecord::Base
|
3
3
|
include Adminpanel::Base
|
4
4
|
|
5
5
|
<%= associations if has_associations? -%>
|
@@ -13,7 +13,7 @@ module Adminpanel
|
|
13
13
|
end
|
14
14
|
|
15
15
|
def self.display_name
|
16
|
-
'<%=
|
16
|
+
'<%= camelized_resource %>' #singular
|
17
17
|
end
|
18
18
|
|
19
19
|
# def self.icon
|
@@ -6,16 +6,27 @@ class ResourceGeneratorTest < Rails::Generators::TestCase
|
|
6
6
|
destination Rails.root.join('tmp/generators')
|
7
7
|
setup :prepare_destination
|
8
8
|
|
9
|
-
def
|
9
|
+
def test_default_not_generation_of_gallery
|
10
10
|
run_generator %w(
|
11
11
|
post
|
12
12
|
name
|
13
13
|
description:wysiwyg
|
14
14
|
number:float
|
15
|
-
--no-gallery
|
16
15
|
)
|
17
16
|
assert_no_file 'app/models/adminpanel/postfile.rb'
|
18
|
-
assert_no_migration
|
17
|
+
assert_no_migration 'db/migrate/create_adminpanel_postfiles.rb'
|
18
|
+
end
|
19
|
+
|
20
|
+
def test_generation_of_gallery
|
21
|
+
run_generator %w(
|
22
|
+
post
|
23
|
+
name
|
24
|
+
description:wysiwyg
|
25
|
+
number:float
|
26
|
+
--no-skip-gallery
|
27
|
+
)
|
28
|
+
assert_file 'app/models/adminpanel/postfile.rb'
|
29
|
+
assert_migration 'db/migrate/create_adminpanel_postfiles.rb'
|
19
30
|
end
|
20
31
|
|
21
32
|
# def test_initializer_update
|
@@ -32,30 +43,6 @@ class ResourceGeneratorTest < Rails::Generators::TestCase
|
|
32
43
|
# )
|
33
44
|
# end
|
34
45
|
|
35
|
-
def test_correct_migration_attributes
|
36
|
-
generator = Adminpanel::ResourceGenerator.new %w(
|
37
|
-
post
|
38
|
-
name
|
39
|
-
description:wysiwyg
|
40
|
-
number:float
|
41
|
-
flag:boolean
|
42
|
-
quantity:integer
|
43
|
-
date:datepicker
|
44
|
-
)
|
45
|
-
|
46
|
-
# puts generator.generate_migration
|
47
|
-
|
48
|
-
# assert_migration(
|
49
|
-
# 'db/migrate/create_adminpanel_posts.rb',
|
50
|
-
# /t.string :name/,
|
51
|
-
# /t.float :number/,
|
52
|
-
# /t.boolean :flag/,
|
53
|
-
# /t.integer :quantity/,
|
54
|
-
# /t.string :date/,
|
55
|
-
# /t.text :description/
|
56
|
-
# )
|
57
|
-
end
|
58
|
-
|
59
46
|
def test_controller_generation
|
60
47
|
run_generator %w(
|
61
48
|
post
|
@@ -65,6 +52,7 @@ class ResourceGeneratorTest < Rails::Generators::TestCase
|
|
65
52
|
flag:boolean
|
66
53
|
quantity:integer
|
67
54
|
date:datepicker
|
55
|
+
--no-skip-gallery
|
68
56
|
)
|
69
57
|
assert_file(
|
70
58
|
'app/controllers/adminpanel/posts_controller.rb',
|
@@ -81,7 +69,7 @@ class ResourceGeneratorTest < Rails::Generators::TestCase
|
|
81
69
|
|
82
70
|
def test_model_generation
|
83
71
|
run_generator %w(
|
84
|
-
|
72
|
+
admin_post
|
85
73
|
name
|
86
74
|
description:wysiwyg
|
87
75
|
number:float
|
@@ -89,11 +77,13 @@ class ResourceGeneratorTest < Rails::Generators::TestCase
|
|
89
77
|
quantity:integer
|
90
78
|
date:datepicker
|
91
79
|
categories:has_many
|
80
|
+
--no-skip-gallery
|
92
81
|
)
|
93
82
|
assert_file(
|
94
|
-
'app/models/adminpanel/
|
83
|
+
'app/models/adminpanel/admin_post.rb',
|
84
|
+
/class AdminPost </,
|
95
85
|
/include Adminpanel::Base/,
|
96
|
-
/mount_images :
|
86
|
+
/mount_images :admin_postfiles/,
|
97
87
|
# form_fields generated correctly
|
98
88
|
/'description' => {/,
|
99
89
|
/'type' => 'wysiwyg_field',/,
|
@@ -107,7 +97,7 @@ class ResourceGeneratorTest < Rails::Generators::TestCase
|
|
107
97
|
/'type' => 'number_field',/,
|
108
98
|
/'date' => {/,
|
109
99
|
/'type' => 'datepicker',/,
|
110
|
-
/'
|
100
|
+
/'admin_postfiles' => {/,
|
111
101
|
/'type' => 'adminpanel_file_field',/,
|
112
102
|
/'category_ids' => {/,
|
113
103
|
/'type' => 'has_many'/,
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: adminpanel
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.2.
|
4
|
+
version: 2.2.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jose Ramon Camacho
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2014-
|
12
|
+
date: 2014-08-05 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: rails
|