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 =
{}
- @@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 =
{}
- @@options_link =
{}
- @@scopes =
{}
[]
- @@layout =
{}
- @@index_path =
nil
Class Method Summary collapse
- .acoes(method, desc, proc = nil) ⇒ Object
- .actions ⇒ Object
- .actions_links ⇒ Object
- .add_menus(menu) ⇒ Object
- .adicionar_endereco ⇒ Object
- .campo_busca(nome, opts = nil) ⇒ Object
- .campo_visualizacao(nome, opts = nil) ⇒ Object
- .condition_destroy_action ⇒ Object
- .condition_edit_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
- .index_fields ⇒ Object
- .index_path(str) ⇒ Object
- .layout ⇒ Object
- .links(name, options) ⇒ Object
- .menus ⇒ Object
- .opcoes(link, desc, proc = nil) ⇒ Object
- .options_link ⇒ Object
- .order_field ⇒ Object
- .per_page ⇒ Object
- .root_path ⇒ Object
- .scopes ⇒ Object
- .script_formulario(script) ⇒ Object
- .search_fields ⇒ Object
- .sem_edicao ⇒ Object
- .sem_exclusao ⇒ Object
- .sem_visualizacao ⇒ 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
Class Method Details
.acoes(method, desc, proc = nil) ⇒ Object
321 322 323 324 |
# File 'app/raro_crud/raro_crud.rb', line 321 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,desc,proc]) end |
.actions ⇒ Object
120 121 122 |
# File 'app/raro_crud/raro_crud.rb', line 120 def self.actions (@@actions[self.to_s.to_sym]) ? @@actions[self.to_s.to_sym] : [] end |
.actions_links ⇒ Object
124 125 126 |
# File 'app/raro_crud/raro_crud.rb', line 124 def self.actions_links (@@links[self.to_s.to_sym]) ? @@links[self.to_s.to_sym] : [] end |
.add_menus(menu) ⇒ Object
160 161 162 |
# File 'app/raro_crud/raro_crud.rb', line 160 def self.() << end |
.adicionar_endereco ⇒ Object
361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 |
# File 'app/raro_crud/raro_crud.rb', line 361 def self.adicionar_endereco @@form_fields[self.to_s.to_sym] = [] unless @@form_fields[self.to_s.to_sym] opts = {} opts[:fields] = [] [ {campo: :cep, label: "CEP"}, {campo: :logradouro, label: "Endereço"}, {campo: :numero, label: "Número"}, {campo: :complemento, label: "Complemento"}, {campo: :bairro, label: "Bairro"}, {campo: :estado, label: "Estado", collection: Estado.order(:sigla).pluck(:sigla)}, {campo: :cidade_id, label: "Cidade", 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) opts[:fields].push({attribute: attribute,sf: field}) end opts[:grupo] = true @@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 |
.campo_busca(nome, opts = nil) ⇒ Object
288 289 290 291 292 293 294 295 |
# File 'app/raro_crud/raro_crud.rb', line 288 def self.campo_busca nome, opts = nil @@search_fields[self.to_s.to_sym] = [] unless @@search_fields[self.to_s.to_sym] @@search_fields[self.to_s.to_sym].push( { attribute: nome }.merge({sf: opts}) ) end |
.campo_visualizacao(nome, opts = nil) ⇒ Object
279 280 281 282 283 284 285 286 |
# File 'app/raro_crud/raro_crud.rb', line 279 def self.campo_visualizacao nome, opts = nil @@view_fields[self.to_s.to_sym] = [] unless @@view_fields[self.to_s.to_sym] @@view_fields[self.to_s.to_sym].push( { attribute: nome }.merge({sf: opts}) ) end |
.condition_destroy_action ⇒ Object
58 59 60 |
# File 'app/raro_crud/raro_crud.rb', line 58 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
46 47 48 |
# File 'app/raro_crud/raro_crud.rb', line 46 def self.condition_edit_action (@@condition_edit_action[self.to_s.to_sym]) ? @@condition_edit_action[self.to_s.to_sym] : nil end |
.condition_view_action ⇒ Object
70 71 72 |
# File 'app/raro_crud/raro_crud.rb', line 70 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
97 98 99 100 101 102 |
# File 'app/raro_crud/raro_crud.rb', line 97 def self.description(type) case type when :index @@description_index[self.to_s.to_sym] end end |
.destroy_action ⇒ Object
50 51 52 53 54 55 56 |
# File 'app/raro_crud/raro_crud.rb', line 50 def self.destroy_action if @@destroy_action[self.to_s.to_sym] == false return false else return true end end |
.edicao(condicao) ⇒ Object
309 310 311 |
# File 'app/raro_crud/raro_crud.rb', line 309 def self.edicao(condicao) @@condition_edit_action[self.to_s.to_sym] = condicao end |
.edit_action ⇒ Object
29 30 31 32 33 34 35 |
# File 'app/raro_crud/raro_crud.rb', line 29 def self.edit_action if @@edit_action[self.to_s.to_sym] == false return false else return true end end |
.escopos(scopes) ⇒ Object
336 337 338 |
# File 'app/raro_crud/raro_crud.rb', line 336 def self.escopos(scopes) @@scopes[self.to_s.to_sym] = scopes end |
.exclusao(condicao) ⇒ Object
317 318 319 |
# File 'app/raro_crud/raro_crud.rb', line 317 def self.exclusao(condicao) @@condition_destroy_action[self.to_s.to_sym] = condicao end |
.form_fields ⇒ Object
132 133 134 |
# File 'app/raro_crud/raro_crud.rb', line 132 def self.form_fields (@@form_fields[self.to_s.to_sym]) ? @@form_fields[self.to_s.to_sym] : [] end |
.form_groups ⇒ Object
136 137 138 |
# File 'app/raro_crud/raro_crud.rb', line 136 def self.form_groups (@@form_group[self.to_s.to_sym]) ? @@form_group[self.to_s.to_sym] : [] end |
.form_scripts ⇒ Object
140 141 142 |
# File 'app/raro_crud/raro_crud.rb', line 140 def self.form_scripts (@@form_scripts[self.to_s.to_sym]) ? @@form_scripts[self.to_s.to_sym] : [] end |
.get_index_path ⇒ Object
82 83 84 |
# File 'app/raro_crud/raro_crud.rb', line 82 def self.get_index_path @@index_path end |
.grupo_formulario(attribute, name, fields = nil) ⇒ Object
340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 |
# File 'app/raro_crud/raro_crud.rb', line 340 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] = {label: name, 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 |
.index_fields ⇒ Object
108 109 110 |
# File 'app/raro_crud/raro_crud.rb', line 108 def self.index_fields (@@index_fields[self.to_s.to_sym]) ? @@index_fields[self.to_s.to_sym] : [] end |
.index_path(str) ⇒ Object
78 79 80 |
# File 'app/raro_crud/raro_crud.rb', line 78 def self.index_path str @@index_path = str end |
.layout ⇒ Object
37 38 39 |
# File 'app/raro_crud/raro_crud.rb', line 37 def self.layout (@@layout[self.to_s.to_sym]) ? @@layout[self.to_s.to_sym] : [] end |
.links(name, options) ⇒ Object
326 327 328 329 |
# File 'app/raro_crud/raro_crud.rb', line 326 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 |
.menus ⇒ Object
164 165 166 |
# File 'app/raro_crud/raro_crud.rb', line 164 def self. end |
.opcoes(link, desc, proc = nil) ⇒ Object
331 332 333 334 |
# File 'app/raro_crud/raro_crud.rb', line 331 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
128 129 130 |
# File 'app/raro_crud/raro_crud.rb', line 128 def self. ([self.to_s.to_sym]) ? [self.to_s.to_sym] : [] end |
.order_field ⇒ Object
112 113 114 |
# File 'app/raro_crud/raro_crud.rb', line 112 def self.order_field (@@order_field[self.to_s.to_sym]).present? ? @@order_field[self.to_s.to_sym] : "id" end |
.per_page ⇒ Object
116 117 118 |
# File 'app/raro_crud/raro_crud.rb', line 116 def self.per_page @@per_page[self.to_s.to_sym] end |
.root_path ⇒ Object
74 75 76 |
# File 'app/raro_crud/raro_crud.rb', line 74 def self.root_path self.to_s.gsub('Crud', '').underscore end |
.scopes ⇒ Object
156 157 158 |
# File 'app/raro_crud/raro_crud.rb', line 156 def self.scopes (@@scopes[self.to_s.to_sym]) ? @@scopes[self.to_s.to_sym] : [] end |
.script_formulario(script) ⇒ Object
388 389 390 391 |
# File 'app/raro_crud/raro_crud.rb', line 388 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
148 149 150 |
# File 'app/raro_crud/raro_crud.rb', line 148 def self.search_fields (@@search_fields[self.to_s.to_sym]) ? @@search_fields[self.to_s.to_sym] : [] end |
.sem_edicao ⇒ Object
305 306 307 |
# File 'app/raro_crud/raro_crud.rb', line 305 def self.sem_edicao @@edit_action[self.to_s.to_sym] = false end |
.sem_exclusao ⇒ Object
313 314 315 |
# File 'app/raro_crud/raro_crud.rb', line 313 def self.sem_exclusao @@destroy_action[self.to_s.to_sym] = false end |
.sem_visualizacao ⇒ Object
297 298 299 |
# File 'app/raro_crud/raro_crud.rb', line 297 def self.sem_visualizacao @@view_action[self.to_s.to_sym] = false end |
.set_layout(desc, proc = nil) ⇒ Object
41 42 43 44 |
# File 'app/raro_crud/raro_crud.rb', line 41 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
90 91 92 93 94 95 |
# File 'app/raro_crud/raro_crud.rb', line 90 def self.subtitle(type) case type when :index @@subtitle_index[self.to_s.to_sym] end end |
.test_fields ⇒ Object
152 153 154 |
# File 'app/raro_crud/raro_crud.rb', line 152 def self.test_fields (@@test_fields[self.to_s.to_sym]) ? @@test_fields[self.to_s.to_sym] : [] end |
.title ⇒ Object
86 87 88 |
# File 'app/raro_crud/raro_crud.rb', line 86 def self.title @@title[self.to_s.to_sym] end |
.top_links ⇒ Object
104 105 106 |
# File 'app/raro_crud/raro_crud.rb', line 104 def self.top_links (@@top_links[self.to_s.to_sym]) ? @@top_links[self.to_s.to_sym] : [] end |
.view_action ⇒ Object
62 63 64 65 66 67 68 |
# File 'app/raro_crud/raro_crud.rb', line 62 def self.view_action if @@view_action[self.to_s.to_sym] == false return false else return true end end |
.view_fields ⇒ Object
144 145 146 |
# File 'app/raro_crud/raro_crud.rb', line 144 def self.view_fields (@@view_fields[self.to_s.to_sym]) ? @@view_fields[self.to_s.to_sym] : [] end |
.visualizacao(condicao) ⇒ Object
301 302 303 |
# File 'app/raro_crud/raro_crud.rb', line 301 def self.visualizacao(condicao) @@condition_view_action[self.to_s.to_sym] = condicao end |