Class: RaroCrud
- Inherits:
-
Object
- Object
- RaroCrud
- Defined in:
- app/raro_crud/raro_crud.rb
Constant Summary collapse
- @@order_field =
{}
- @@per_page =
{}
- @@index_fields =
{}
- @@form_fields =
{}
- @@form_group =
{}
- @@form_scripts =
{}
- @@view_fields =
{}
- @@listing_fields =
{}
- @@printing_fields =
{}
- @@search_fields =
{}
- @@test_fields =
{}
- @@top_links =
{}
- @@title =
{}
- @@subtitle_index =
{}
- @@description_index =
{}
- @@actions =
{}
- @@links =
{}
- @@edit_action =
{}
- @@condition_edit_action =
{}
- @@destroy_action =
{}
- @@condition_destroy_action =
{}
- @@view_action =
{}
- @@condition_view_action =
{}
- @@condition_listing_action =
{}
- @@condition_listing_excel =
{}
- @@condition_listing_pdf =
{}
- @@condition_printing_action =
{}
- @@options_link =
{}
- @@scopes =
{}
[]
- @@layout =
{}
- @@index_path =
nil
Class Method Summary collapse
- .acoes(method, desc, proc = nil, options = {}) ⇒ Object
- .actions ⇒ Object
- .actions_links ⇒ Object
- .add_menus(menu) ⇒ Object
- .adicionar_endereco ⇒ Object
- .agrupar_campos(attribute, opts = {}, &block) ⇒ Object
- .campo_busca(nome, opts = {}) ⇒ Object
- .campo_impressao(nome, opts = {}) ⇒ Object
- .campo_listagem(nome, opts = {}) ⇒ Object
- .campo_visualizacao(nome, opts = {}) ⇒ Object
- .condition_destroy_action ⇒ Object
- .condition_edit_action ⇒ Object
- .condition_listing_action ⇒ Object
- .condition_listing_excel ⇒ Object
- .condition_listing_pdf ⇒ Object
- .condition_printing_action ⇒ Object
- .condition_view_action ⇒ Object
- .description(type) ⇒ Object
- .destroy_action ⇒ Object
- .edicao(condicao) ⇒ Object
- .edit_action ⇒ Object
- .escopos(scopes) ⇒ Object
- .exclusao(condicao) ⇒ Object
- .form_fields ⇒ Object
- .form_groups ⇒ Object
- .form_scripts ⇒ Object
- .get_index_path ⇒ Object
- .grupo_formulario(attribute, name, fields = nil) ⇒ Object
- .impressao(condicao) ⇒ Object
- .index_fields ⇒ Object
- .index_path(str) ⇒ Object
- .layout ⇒ Object
- .links(name, options) ⇒ Object
- .listagem(condicao) ⇒ Object
- .listagem_excel(condicao = nil) ⇒ Object
- .listagem_pdf(condicao = nil) ⇒ Object
- .listing_fields ⇒ Object
- .menus ⇒ Object
- .opcoes(link, desc, proc = nil) ⇒ Object
- .options_link ⇒ Object
- .order_field ⇒ Object
- .per_page ⇒ Object
- .printing_fields ⇒ Object
- .root_path ⇒ Object
- .scopes ⇒ Object
- .script_formulario(script) ⇒ Object
- .search_fields ⇒ Object
- .sem_edicao ⇒ Object
- .sem_exclusao ⇒ Object
- .sem_visualizacao ⇒ Object
- .separar_formulario ⇒ Object
- .set_layout(desc, proc = nil) ⇒ Object
- .subtitle(type) ⇒ Object
- .test_fields ⇒ Object
- .title ⇒ Object
- .top_links ⇒ Object
- .view_action ⇒ Object
- .view_fields ⇒ Object
- .visualizacao(condicao) ⇒ Object
Instance Method Summary collapse
Class Method Details
.acoes(method, desc, proc = nil, options = {}) ⇒ Object
407 408 409 410 |
# File 'app/raro_crud/raro_crud.rb', line 407 def self.acoes(method, desc, proc = nil, ={}) @@actions[self.to_s.to_sym] = [] unless @@actions[self.to_s.to_sym] @@actions[self.to_s.to_sym].push({method: method, desc: desc, proc: proc, options: }) end |
.actions ⇒ Object
147 148 149 |
# File 'app/raro_crud/raro_crud.rb', line 147 def self.actions (@@actions[self.to_s.to_sym]) ? @@actions[self.to_s.to_sym] : [] end |
.actions_links ⇒ Object
151 152 153 |
# File 'app/raro_crud/raro_crud.rb', line 151 def self.actions_links (@@links[self.to_s.to_sym]) ? @@links[self.to_s.to_sym] : [] end |
.add_menus(menu) ⇒ Object
195 196 197 |
# File 'app/raro_crud/raro_crud.rb', line 195 def self.() << end |
.adicionar_endereco ⇒ Object
461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 |
# File 'app/raro_crud/raro_crud.rb', line 461 def self.adicionar_endereco @@form_fields[self.to_s.to_sym] = [] unless @@form_fields[self.to_s.to_sym] opts = {} opts[:fields] = [] [ {campo: :cep, input_html: {class: "mask-cep"}}, {campo: :logradouro}, {campo: :numero}, {campo: :complemento}, {campo: :bairro}, {campo: :estado, collection: Estado.order(:sigla).pluck(:sigla)}, {campo: :cidade_id, collection_if: Proc.new{|f| f.try(:object).try(:estado).try(:present?) ? (f.try(:object).try(:estado).try(:cidades) || []) : []}} ].each do |field| attribute = field[:campo] field.delete(:campo) field[:label] ||= "shared.#{attribute}" opts[:fields].push({attribute: attribute,sf: field}) end opts[:grupo] = true opts[:label] ||= "shared.adicionar_endereco" @@form_fields[self.to_s.to_sym].push( { attribute: :endereco }.merge({sf: opts}) ) @@form_scripts[self.to_s.to_sym] ||= [] @@form_scripts[self.to_s.to_sym] << "cidade_estado" end |
.agrupar_campos(attribute, opts = {}, &block) ⇒ Object
426 427 428 429 430 431 432 433 434 |
# File 'app/raro_crud/raro_crud.rb', line 426 def self.agrupar_campos(attribute, opts = {}, &block) if opts[:label] @agrupamento = opts[:label] else @agrupamento = "simple_form.labels.#{self.modelo.underscore}.#{attribute}" end block.call @agrupamento = nil end |
.campo_busca(nome, opts = {}) ⇒ Object
337 338 339 340 341 342 343 344 345 |
# File 'app/raro_crud/raro_crud.rb', line 337 def self.campo_busca nome, opts = {} @@search_fields[self.to_s.to_sym] = [] unless @@search_fields[self.to_s.to_sym] opts = set_default_label nome, opts @@search_fields[self.to_s.to_sym].push( { attribute: nome }.merge({sf: opts}) ) end |
.campo_impressao(nome, opts = {}) ⇒ Object
357 358 359 360 361 362 363 364 365 |
# File 'app/raro_crud/raro_crud.rb', line 357 def self.campo_impressao nome, opts = {} @@printing_fields[self.to_s.to_sym] = [] unless @@printing_fields[self.to_s.to_sym] opts = set_default_label nome, opts @@printing_fields[self.to_s.to_sym].push( { attribute: nome }.merge({sf: opts}) ) end |
.campo_listagem(nome, opts = {}) ⇒ Object
347 348 349 350 351 352 353 354 355 |
# File 'app/raro_crud/raro_crud.rb', line 347 def self.campo_listagem nome, opts = {} @@listing_fields[self.to_s.to_sym] = [] unless @@listing_fields[self.to_s.to_sym] opts = set_default_label nome, opts @@listing_fields[self.to_s.to_sym].push( { attribute: nome }.merge({sf: opts}) ) end |
.campo_visualizacao(nome, opts = {}) ⇒ Object
327 328 329 330 331 332 333 334 335 |
# File 'app/raro_crud/raro_crud.rb', line 327 def self.campo_visualizacao nome, opts = {} @@view_fields[self.to_s.to_sym] = [] unless @@view_fields[self.to_s.to_sym] opts = set_default_label nome, opts @@view_fields[self.to_s.to_sym].push( { attribute: nome }.merge({sf: opts}) ) end |
.condition_destroy_action ⇒ Object
73 74 75 |
# File 'app/raro_crud/raro_crud.rb', line 73 def self.condition_destroy_action (@@condition_destroy_action[self.to_s.to_sym]) ? @@condition_destroy_action[self.to_s.to_sym] : nil end |
.condition_edit_action ⇒ Object
61 62 63 |
# File 'app/raro_crud/raro_crud.rb', line 61 def self.condition_edit_action (@@condition_edit_action[self.to_s.to_sym]) ? @@condition_edit_action[self.to_s.to_sym] : nil end |
.condition_listing_action ⇒ Object
89 90 91 |
# File 'app/raro_crud/raro_crud.rb', line 89 def self.condition_listing_action (@@condition_listing_action[self.to_s.to_sym]) ? @@condition_listing_action[self.to_s.to_sym] : nil end |
.condition_listing_excel ⇒ Object
93 94 95 |
# File 'app/raro_crud/raro_crud.rb', line 93 def self.condition_listing_excel (@@condition_listing_excel[self.to_s.to_sym]) ? @@condition_listing_excel[self.to_s.to_sym] : nil end |
.condition_listing_pdf ⇒ Object
97 98 99 |
# File 'app/raro_crud/raro_crud.rb', line 97 def self.condition_listing_pdf (@@condition_listing_pdf[self.to_s.to_sym]) ? @@condition_listing_pdf[self.to_s.to_sym] : nil end |
.condition_printing_action ⇒ Object
101 102 103 |
# File 'app/raro_crud/raro_crud.rb', line 101 def self.condition_printing_action (@@condition_printing_action[self.to_s.to_sym]) ? @@condition_printing_action[self.to_s.to_sym] : nil end |
.condition_view_action ⇒ Object
85 86 87 |
# File 'app/raro_crud/raro_crud.rb', line 85 def self.condition_view_action (@@condition_view_action[self.to_s.to_sym]) ? @@condition_view_action[self.to_s.to_sym] : nil end |
.description(type) ⇒ Object
124 125 126 127 128 129 |
# File 'app/raro_crud/raro_crud.rb', line 124 def self.description(type) case type when :index @@description_index[self.to_s.to_sym] end end |
.destroy_action ⇒ Object
65 66 67 68 69 70 71 |
# File 'app/raro_crud/raro_crud.rb', line 65 def self.destroy_action if @@destroy_action[self.to_s.to_sym] == false return false else return true end end |
.edicao(condicao) ⇒ Object
379 380 381 |
# File 'app/raro_crud/raro_crud.rb', line 379 def self.edicao(condicao) @@condition_edit_action[self.to_s.to_sym] = condicao end |
.edit_action ⇒ Object
44 45 46 47 48 49 50 |
# File 'app/raro_crud/raro_crud.rb', line 44 def self.edit_action if @@edit_action[self.to_s.to_sym] == false return false else return true end end |
.escopos(scopes) ⇒ Object
422 423 424 |
# File 'app/raro_crud/raro_crud.rb', line 422 def self.escopos(scopes) @@scopes[self.to_s.to_sym] = scopes end |
.exclusao(condicao) ⇒ Object
387 388 389 |
# File 'app/raro_crud/raro_crud.rb', line 387 def self.exclusao(condicao) @@condition_destroy_action[self.to_s.to_sym] = condicao end |
.form_fields ⇒ Object
159 160 161 |
# File 'app/raro_crud/raro_crud.rb', line 159 def self.form_fields (@@form_fields[self.to_s.to_sym]) ? @@form_fields[self.to_s.to_sym] : [] end |
.form_groups ⇒ Object
163 164 165 |
# File 'app/raro_crud/raro_crud.rb', line 163 def self.form_groups (@@form_group[self.to_s.to_sym]) ? @@form_group[self.to_s.to_sym] : [] end |
.form_scripts ⇒ Object
167 168 169 |
# File 'app/raro_crud/raro_crud.rb', line 167 def self.form_scripts (@@form_scripts[self.to_s.to_sym]) ? @@form_scripts[self.to_s.to_sym] : [] end |
.get_index_path ⇒ Object
113 114 115 |
# File 'app/raro_crud/raro_crud.rb', line 113 def self.get_index_path @@index_path end |
.grupo_formulario(attribute, name, fields = nil) ⇒ Object
440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 |
# File 'app/raro_crud/raro_crud.rb', line 440 def self.grupo_formulario(attribute, name, fields=nil) if fields.nil? fields = name name = attribute.to_s.singularize.titleize end @@form_group[self.to_s.to_sym] ||= {} @@form_group[self.to_s.to_sym][attribute] = {fields: []} fields.each do |field| value = {} field.each do |atr| if atr[0] == :campo value[:attribute] = atr[1] else value[:sf] ||= {} value[:sf][atr[0]] = atr[1] end end @@form_group[self.to_s.to_sym][attribute][:fields].push({attribute: value[:attribute], sf: value[:sf]}) end end |
.impressao(condicao) ⇒ Object
403 404 405 |
# File 'app/raro_crud/raro_crud.rb', line 403 def self.impressao(condicao) @@condition_printing_action[self.to_s.to_sym] = condicao end |
.index_fields ⇒ Object
135 136 137 |
# File 'app/raro_crud/raro_crud.rb', line 135 def self.index_fields (@@index_fields[self.to_s.to_sym]) ? @@index_fields[self.to_s.to_sym] : [] end |
.index_path(str) ⇒ Object
109 110 111 |
# File 'app/raro_crud/raro_crud.rb', line 109 def self.index_path str @@index_path = str end |
.layout ⇒ Object
52 53 54 |
# File 'app/raro_crud/raro_crud.rb', line 52 def self.layout (@@layout[self.to_s.to_sym]) ? @@layout[self.to_s.to_sym] : [] end |
.links(name, options) ⇒ Object
412 413 414 415 |
# File 'app/raro_crud/raro_crud.rb', line 412 def self.links(name, ) @@links[self.to_s.to_sym] = [] unless @@links[self.to_s.to_sym] @@links[self.to_s.to_sym].push([name, ]) end |
.listagem(condicao) ⇒ Object
391 392 393 |
# File 'app/raro_crud/raro_crud.rb', line 391 def self.listagem(condicao) @@condition_listing_action[self.to_s.to_sym] = condicao end |
.listagem_excel(condicao = nil) ⇒ Object
395 396 397 |
# File 'app/raro_crud/raro_crud.rb', line 395 def self.listagem_excel(condicao = nil) @@condition_listing_excel[self.to_s.to_sym] = condicao end |
.listagem_pdf(condicao = nil) ⇒ Object
399 400 401 |
# File 'app/raro_crud/raro_crud.rb', line 399 def self.listagem_pdf(condicao = nil) @@condition_listing_pdf[self.to_s.to_sym] = condicao end |
.listing_fields ⇒ Object
175 176 177 |
# File 'app/raro_crud/raro_crud.rb', line 175 def self.listing_fields (@@listing_fields[self.to_s.to_sym]) ? @@listing_fields[self.to_s.to_sym] : [] end |
.menus ⇒ Object
199 200 201 |
# File 'app/raro_crud/raro_crud.rb', line 199 def self. end |
.opcoes(link, desc, proc = nil) ⇒ Object
417 418 419 420 |
# File 'app/raro_crud/raro_crud.rb', line 417 def self.opcoes(link, desc, proc = nil) [self.to_s.to_sym] = [] unless [self.to_s.to_sym] [self.to_s.to_sym].push([link, desc, proc]) end |
.options_link ⇒ Object
155 156 157 |
# File 'app/raro_crud/raro_crud.rb', line 155 def self. ([self.to_s.to_sym]) ? [self.to_s.to_sym] : [] end |
.order_field ⇒ Object
139 140 141 |
# File 'app/raro_crud/raro_crud.rb', line 139 def self.order_field (@@order_field[self.to_s.to_sym]).present? ? @@order_field[self.to_s.to_sym] : "id" end |
.per_page ⇒ Object
143 144 145 |
# File 'app/raro_crud/raro_crud.rb', line 143 def self.per_page @@per_page[self.to_s.to_sym] end |
.printing_fields ⇒ Object
179 180 181 |
# File 'app/raro_crud/raro_crud.rb', line 179 def self.printing_fields (@@printing_fields[self.to_s.to_sym]) ? @@printing_fields[self.to_s.to_sym] : [] end |
.root_path ⇒ Object
105 106 107 |
# File 'app/raro_crud/raro_crud.rb', line 105 def self.root_path self.to_s.gsub('Crud', '').underscore end |
.scopes ⇒ Object
191 192 193 |
# File 'app/raro_crud/raro_crud.rb', line 191 def self.scopes (@@scopes[self.to_s.to_sym]) ? @@scopes[self.to_s.to_sym] : [] end |
.script_formulario(script) ⇒ Object
490 491 492 493 |
# File 'app/raro_crud/raro_crud.rb', line 490 def self.script_formulario(script) @@form_scripts[self.to_s.to_sym] ||= [] @@form_scripts[self.to_s.to_sym] << script.to_s end |
.search_fields ⇒ Object
183 184 185 |
# File 'app/raro_crud/raro_crud.rb', line 183 def self.search_fields (@@search_fields[self.to_s.to_sym]) ? @@search_fields[self.to_s.to_sym] : [] end |
.sem_edicao ⇒ Object
375 376 377 |
# File 'app/raro_crud/raro_crud.rb', line 375 def self.sem_edicao @@edit_action[self.to_s.to_sym] = false end |
.sem_exclusao ⇒ Object
383 384 385 |
# File 'app/raro_crud/raro_crud.rb', line 383 def self.sem_exclusao @@destroy_action[self.to_s.to_sym] = false end |
.sem_visualizacao ⇒ Object
367 368 369 |
# File 'app/raro_crud/raro_crud.rb', line 367 def self.sem_visualizacao @@view_action[self.to_s.to_sym] = false end |
.separar_formulario ⇒ Object
436 437 438 |
# File 'app/raro_crud/raro_crud.rb', line 436 def self.separar_formulario @@form_fields[self.to_s.to_sym].last[:sf][:separador] = true end |
.set_layout(desc, proc = nil) ⇒ Object
56 57 58 59 |
# File 'app/raro_crud/raro_crud.rb', line 56 def self.set_layout(desc, proc = nil) @@layout[self.to_s.to_sym] = [] unless @@layout[self.to_s.to_sym] @@layout[self.to_s.to_sym] = [desc, proc] end |
.subtitle(type) ⇒ Object
117 118 119 120 121 122 |
# File 'app/raro_crud/raro_crud.rb', line 117 def self.subtitle(type) case type when :index @@subtitle_index[self.to_s.to_sym] end end |
.test_fields ⇒ Object
187 188 189 |
# File 'app/raro_crud/raro_crud.rb', line 187 def self.test_fields (@@test_fields[self.to_s.to_sym]) ? @@test_fields[self.to_s.to_sym] : [] end |
.title ⇒ Object
40 41 42 |
# File 'app/raro_crud/raro_crud.rb', line 40 def self.title I18n.t("rarocrud.#{self.modelo.underscore}.title") end |
.top_links ⇒ Object
131 132 133 |
# File 'app/raro_crud/raro_crud.rb', line 131 def self.top_links (@@top_links[self.to_s.to_sym]) ? @@top_links[self.to_s.to_sym] : [] end |
.view_action ⇒ Object
77 78 79 80 81 82 83 |
# File 'app/raro_crud/raro_crud.rb', line 77 def self.view_action if @@view_action[self.to_s.to_sym] == false return false else return true end end |
.view_fields ⇒ Object
171 172 173 |
# File 'app/raro_crud/raro_crud.rb', line 171 def self.view_fields (@@view_fields[self.to_s.to_sym]) ? @@view_fields[self.to_s.to_sym] : [] end |
.visualizacao(condicao) ⇒ Object
371 372 373 |
# File 'app/raro_crud/raro_crud.rb', line 371 def self.visualizacao(condicao) @@condition_view_action[self.to_s.to_sym] = condicao end |
Instance Method Details
#modelo ⇒ Object
36 37 38 |
# File 'app/raro_crud/raro_crud.rb', line 36 def modelo self.to_s.gsub("Crud", "").constantize end |