carnival 0.1.7 → 0.1.8

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: aeef6dc229604a422ea21576f1e9f38229b0efa1
4
- data.tar.gz: 998c57c81c831d6d27089381cb3e31cdbacc5a37
3
+ metadata.gz: c73e986f6ea765613317eca4b2db3a284c46b411
4
+ data.tar.gz: 509a5db0e41ac5ca5685b43930eac422c3837bb2
5
5
  SHA512:
6
- metadata.gz: 072e97a3b2f59c3627f5de8a81019c9ef986d7fe175704acd8f85c1686fe5e0a0008f4fff304288ccf932db4296412dd00439a8a274d0aa0f943c37a0c1ca3af
7
- data.tar.gz: 0770cd8a004bbc19314b6dce9957224f0bfa9e439a71532782a1bd363e24460b8859d63b2f0c3a373e4ed892a72d16ebb3850ccb78a086b6fdcf528ee5d6cc3d
6
+ metadata.gz: 4203a70cd1e1562d2a641435c2e158152bac8cac5868498fa9e92ff828dd4f865050814d452ecf9114b2acfbf4848a1b20da6777f6ec65a5e0ee1183504c4d1c
7
+ data.tar.gz: 3abe8e82e19d87cdef62f1c798a5ce2a0eac1e33c3bd27380204329a5dc9f31bd0b11cb8ebdf3ecbbbf1cd23925394aa29b536a19477e2db52ae296e803a19a1
@@ -50,7 +50,8 @@
50
50
  %select{"onchange" => "javascript:Carnival.sortIndexList(this)"}
51
51
  - @thead_renderer.columns.each do |column|
52
52
  - if column[:sort_function] != ''
53
- %option{ :selected => column[:name] == @query_form.sort_column , :data => {column_name: "#{column[:name]}", sort_dir: "#{column[:sort_dir]}"} , "class" => "#{column[:class]}"}= translate_field(presenter, column[:field])
53
+ %option{ :selected => column[:name] == @query_form.sort_column && 'asc' == @query_form.sort_direction, :data => {column_name: "#{column[:name]}", sort_dir: "asc"} , "class" => "#{column[:class]}"}= "#{translate_field(presenter, column[:field])} - ▲".html_safe
54
+ %option{ :selected => column[:name] == @query_form.sort_column && 'desc' == @query_form.sort_direction, :data => {column_name: "#{column[:name]}", sort_dir: "desc"} , "class" => "#{column[:class]}"}= "#{translate_field(presenter, column[:field])} - ▼".html_safe
54
55
 
55
56
  - if @records.any?
56
57
 
@@ -69,7 +70,7 @@
69
70
  = link_to t('download_as_csv'), presenter.model_path(:index, {:format => 'csv'}.merge(params)), :class => "carnival-action-button pdf" if presenter.has_action?(:csv)
70
71
  = link_to t('download_as_pdf'), presenter.model_path(:index, {:format => 'pdf'}.merge(params)), :class => "carnival-action-button csv" if presenter.has_action?(:pdf)
71
72
 
72
- - else
73
+ - else
73
74
  .empty-result
74
75
  %h1
75
76
  = t('no_results')
@@ -77,4 +78,4 @@
77
78
  %span
78
79
  Adicionar novo registro
79
80
  - presenter.actions_for_page.each do |key, action|
80
- = render '/carnival/shared/action_default', :label=>t("#{presenter.model_name}.#{action.name}", default: t("carnival.#{action.name}")), :path=> action.path(presenter)
81
+ = render '/carnival/shared/action_default', :label=>t("#{presenter.model_name}.#{action.name}", default: t("carnival.#{action.name}")), :path=> action.path(presenter)
@@ -22,4 +22,7 @@ en:
22
22
  paginate_previous: « Previous
23
23
  paginate_next: Next »
24
24
  paginate_last: Last
25
- paginate_total: Total
25
+ paginate_total: Total
26
+ sort_by: Sort by
27
+ asc: Crescent
28
+ desc: Decrescent
@@ -26,7 +26,9 @@ pt-BR:
26
26
  updated: Alterado com sucesso!
27
27
  select: Selecione
28
28
  minimize: Minimizar
29
- sort_by: Ordenar por
29
+ sort_by: Ordenar po
30
+ asc: Crescente
31
+ desc: Decrescente
30
32
  download_as_csv: Baixar como CSV
31
33
  download_as_pdf: Baixar como PDF
32
34
  no_results: Não foram encontrados resultados
@@ -257,4 +259,3 @@ pt-BR:
257
259
  even: "precisa ser par"
258
260
  models:
259
261
  admin_user: Usuário Administrador
260
-
@@ -1,3 +1,3 @@
1
1
  module Carnival
2
- VERSION = "0.1.7"
2
+ VERSION = "0.1.8"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: carnival
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.7
4
+ version: 0.1.8
5
5
  platform: ruby
6
6
  authors:
7
7
  - Vizir Software Studio
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-03-12 00:00:00.000000000 Z
11
+ date: 2015-03-18 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -447,7 +447,6 @@ files:
447
447
  - app/datatable/carnival/generic_datatable/column_sorter_creator.rb
448
448
  - app/datatable/carnival/generic_datatable/relation_column_sorter.rb
449
449
  - app/helpers/carnival/base_admin_helper.rb
450
- - app/helpers/carnival/base_admin_helper.rb.orig
451
450
  - app/helpers/carnival/field_renderers/field_renderer.rb
452
451
  - app/helpers/carnival/field_renderers/many_relation_renderer.rb
453
452
  - app/helpers/carnival/field_renderers/renderer_creator.rb
@@ -589,7 +588,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
589
588
  version: '0'
590
589
  requirements: []
591
590
  rubyforge_project:
592
- rubygems_version: 2.4.5
591
+ rubygems_version: 2.2.2
593
592
  signing_key:
594
593
  specification_version: 4
595
594
  summary: Carnival is an easy-to-use and extensible Rails Engine to speed the development
@@ -1,250 +0,0 @@
1
- module Carnival
2
- module BaseAdminHelper
3
- def set_resource_actived_if_current(path)
4
- (request.fullpath == path)? 'actived' : ''
5
- end
6
-
7
- def show_messages
8
- @messages = ''
9
- flash.each do |type, message|
10
- @messages = message
11
- @type = type
12
- end
13
- javascript = "noty({'text':'#{@messages}',
14
- 'layout':'bottom','type':'#{@type}',
15
- 'animation': {'close':{'height':'toggle'}, 'open':{'height':'toggle'},'speed':500},'timeout':4000,
16
- 'closeWith':['click', 'hover']});"
17
- return javascript if defined?(@type)
18
- ''
19
- end
20
-
21
- def caminho_modelo(action, extra_params=nil)
22
- params = {controller: controller.controller_name, action: action}
23
- params = params.merge(extra_params) if extra_params.present?
24
- url_for(params)
25
- end
26
-
27
- def carnival_render_if_exist partial_path
28
- if partial_exist?(partial_path)
29
- return render partial_path
30
- end
31
- end
32
-
33
- def partial_exist? partial_path
34
- File.exists?(get_partial_path(partial_path))
35
- end
36
-
37
- def has_many_relation? model, field
38
- klass = Carnival::KlassService.new model.class
39
- klass.is_a_has_many_relation?(field.to_sym)
40
- end
41
-
42
- def has_one_relation? model, field
43
- klass = Carnival::KlassService.new model.class
44
- klass.is_a_has_one_relation?(field.to_sym)
45
- end
46
-
47
- def many_to_many_relation? model, field
48
- klass = Carnival::KlassService.new model.class
49
- klass.is_a_many_to_many_relation?(field.to_sym)
50
- end
51
-
52
- def get_partial_path partial_path
53
- path = Rails.root.join('app', 'views')
54
- partial_path_array = partial_path.split('/')
55
- partial_path_array.each do |pp|
56
- if pp == partial_path_array.last
57
- path = path.join "_#{pp}.html.haml"
58
- else
59
- path = path.join pp
60
- end
61
- end
62
- path
63
- end
64
-
65
- def menu_link link
66
- link.strip!
67
- if link.to_s.end_with?('_path') or link.to_s.end_with?('_url')
68
- return eval link
69
- elsif link.index(/_path.+/) #path with arguments
70
- return eval link
71
- end
72
-
73
- link
74
- end
75
-
76
- def show_view(presenter, field)
77
- presenter.get_field(field).show_view
78
- end
79
-
80
- def show_as_list(presenter, field)
81
- current_type = presenter.field_type(field)
82
- if current_type != :relation
83
- false
84
- else
85
- presenter.get_field(field).show_as_list
86
- end
87
- end
88
-
89
- <<<<<<< HEAD
90
- def field_to_show(presenter, field_name, record, show_only_values=false)
91
- if presenter.fields[field_name].params[:as] == :partial
92
- raw(render field_name.to_s, record: record)
93
- else
94
- rendered = field_value_and_type presenter, field_name, record
95
- field_type = rendered[:field_type]
96
- value = rendered[:value]
97
-
98
- is_relation = presenter.relation_field?(field_name)
99
- =======
100
- def field_to_show(presenter, field_name, record, show_only_value=false)
101
- rendered = field_value_and_type presenter, field_name, record
102
- field_type = rendered[:field_type]
103
- value = rendered[:value]
104
-
105
- is_relation = presenter.relation_field?(field_name)
106
- >>>>>>> 43cbab7664a6b7fd7b42b86626ec2bb9953b5711
107
-
108
- unless value.nil?
109
- formatted_field = format_field(presenter, field_name, field_type, value)
110
- if is_relation and !show_only_values
111
- link_to(formatted_field, presenter.relation_path(field_name, record))
112
- else
113
- formatted_field
114
- end
115
- else
116
- nil
117
- end
118
- end
119
- end
120
-
121
- def field_value_and_type presenter, field_name, record
122
- renderer = FieldRenderers::RendererCreator
123
- .create_field_renderer(presenter, field_name)
124
-
125
- rendered = renderer.render_field(record)
126
- end
127
-
128
- def is_image? field_type, value
129
- field_type.nil? and value.class.to_s == "Paperclip::Attachment" and value.content_type.include? "image"
130
- end
131
-
132
- def format_field(presenter, field_name, field_type, value)
133
- if is_image?(field_type, value)
134
- "<img class='attr' src='#{value.url(:thumb)}' alt='#{translate_field(presenter, field_name)}' />"
135
- else
136
- case field_type
137
- when :datetime
138
- begin
139
- I18n.l(value, format: :long_date)
140
- rescue I18n::MissingTranslationData
141
- value.strftime("%d/%m/%y %H:%M:%S")
142
- end
143
- when :date
144
- begin
145
- I18n.l(value, format: :short_date)
146
- rescue I18n::MissingTranslationData
147
- value.strftime("%d/%m/%Y")
148
- end
149
- when :number
150
- number_with_precision(value, :precision => 2, :separator => ",")
151
- when :enum
152
- presenter.model_class.const_get(field_name.upcase)[value]
153
- else
154
- value
155
- end
156
- end
157
- end
158
-
159
- def translate_field(presenter, field_name)
160
- field = presenter.get_field(field_name)
161
- field_key = field.name_for_translation
162
- presenter.full_model_name.classify.constantize.human_attribute_name field_key
163
- end
164
-
165
- def list_cel(presenter, field, record, only_render_fields)
166
- result = field_to_show(presenter, field, record, only_render_fields)
167
- return result if only_render_fields
168
- td = "<td class='first-td'>"
169
- return "#{td}<span class='#{get_css_class(presenter, field, record)}'>#{result}</span></td>" if presenter.get_field(field).css_class.present?
170
- "#{td}#{result}</td>"
171
- end
172
-
173
- def grid_attr(presenter, field, record, only_render_fields)
174
- result = field_to_show(presenter, field, record, only_render_fields)
175
- return result if only_render_fields
176
- list_attr(presenter, field, record, only_render_fields)
177
- end
178
-
179
- def list_attr(presenter, field, record, only_render_fields)
180
- result = field_to_show(presenter, field, record, only_render_fields)
181
- return result if only_render_fields
182
- return "<div class='attr'><div class='label #{field}'>#{translate_field(presenter, field)}:</div><div class='field_value #{field} #{get_css_class(presenter, field, record)}'>#{result}</div></div>" if presenter.get_field(field).css_class.present?
183
- "<div class='attr'><div class='label #{field}'>#{translate_field(presenter, field)}:</div><div class='field_value #{field}'>#{result}</div></div>"
184
- end
185
-
186
- def get_css_class presenter, field, record
187
- css_class = presenter.get_field(field).css_class
188
- return '' if !css_class
189
- return record.send(css_class[:method]) if css_class.is_a? Hash
190
- return css_class if css_class.is_a? String
191
- return ''
192
- end
193
-
194
- def list_buttons(presenter, record)
195
- result = ""
196
- presenter.actions_for_record.each do |key, record_action|
197
- if presenter.before_action(record_action, params[:action])
198
- if record_action.show(record)
199
- if record_action.remote?
200
- result << button_action_remote(record_action, presenter, record)
201
- else
202
- result << button_action(record_action, presenter, record)
203
- end
204
- end
205
- end
206
- end
207
- result
208
- end
209
-
210
- def button_action(action, presenter, record)
211
- label = t("#{presenter.model_name.underscore}.#{action.name}", default: t("carnival.#{action.name}"))
212
- path = action.path(presenter, :id => record.id)
213
- if action.default_partial == :default
214
- "<a class='carnival-action-link #{label.parameterize}' href='#{path}'>#{label}</a>"
215
- elsif action.default_partial == :delete
216
- confirm = I18n.t("are_you_sure")
217
- "<a class='carnival-action-link apagar' data-confirm='#{confirm}' data-method='delete' href='#{path}' rel='nofollow'>#{label}</a>"
218
- end
219
- end
220
-
221
- def button_action_remote(action, presenter, record)
222
- name = action.name
223
- params = action.params
224
- label = t("#{presenter.model_name}.#{action.name}", default: t("carnival.#{action.name}"))
225
- path = action.path(presenter, :id => record.id)
226
-
227
- success_callback = "#{name}_success_callback"
228
- if params[:success]
229
- success_callback = params[:success]
230
- end
231
-
232
- error_callback = "#{name}_error_callback"
233
- if params[:error]
234
- error_callback = params[:error]
235
- end
236
-
237
- data_overlay = ''
238
- if params[:show_overlay]
239
- data_overlay = 'data-carnival-show-overlay=true'
240
- end
241
-
242
- params[:show_overlay] = false if params[:show_overlay].nil?
243
-
244
- remote_function = "Carnival.remoteFunction(\"#{path}\", \"#{success_callback}\", \"#{error_callback}\", \"#{params[:method]}\", {} ,#{params[:show_overlay]})"
245
-
246
- "<a class='carnival-action-link editar' href='javascript:#{remote_function}'>#{label}</a>"
247
- end
248
-
249
- end
250
- end