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 =
{}
[]
- @@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
- .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
- .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
311 312 313 314 |
# File 'app/raro_crud/raro_crud.rb', line 311 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
110 111 112 |
# File 'app/raro_crud/raro_crud.rb', line 110 def self.actions (@@actions[self.to_s.to_sym]) ? @@actions[self.to_s.to_sym] : [] end |
.actions_links ⇒ Object
114 115 116 |
# File 'app/raro_crud/raro_crud.rb', line 114 def self.actions_links (@@links[self.to_s.to_sym]) ? @@links[self.to_s.to_sym] : [] end |
.add_menus(menu) ⇒ Object
150 151 152 |
# File 'app/raro_crud/raro_crud.rb', line 150 def self.() << end |
.adicionar_endereco ⇒ Object
351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 |
# File 'app/raro_crud/raro_crud.rb', line 351 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
278 279 280 281 282 283 284 285 |
# File 'app/raro_crud/raro_crud.rb', line 278 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
269 270 271 272 273 274 275 276 |
# File 'app/raro_crud/raro_crud.rb', line 269 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
48 49 50 |
# File 'app/raro_crud/raro_crud.rb', line 48 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
36 37 38 |
# File 'app/raro_crud/raro_crud.rb', line 36 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
60 61 62 |
# File 'app/raro_crud/raro_crud.rb', line 60 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
87 88 89 90 91 92 |
# File 'app/raro_crud/raro_crud.rb', line 87 def self.description(type) case type when :index @@description_index[self.to_s.to_sym] end end |
.destroy_action ⇒ Object
40 41 42 43 44 45 46 |
# File 'app/raro_crud/raro_crud.rb', line 40 def self.destroy_action if @@destroy_action[self.to_s.to_sym] == false return false else return true end end |
.edicao(condicao) ⇒ Object
299 300 301 |
# File 'app/raro_crud/raro_crud.rb', line 299 def self.edicao(condicao) @@condition_edit_action[self.to_s.to_sym] = condicao end |
.edit_action ⇒ Object
28 29 30 31 32 33 34 |
# File 'app/raro_crud/raro_crud.rb', line 28 def self.edit_action if @@edit_action[self.to_s.to_sym] == false return false else return true end end |
.escopos(scopes) ⇒ Object
326 327 328 |
# File 'app/raro_crud/raro_crud.rb', line 326 def self.escopos(scopes) @@scopes[self.to_s.to_sym] = scopes end |
.exclusao(condicao) ⇒ Object
307 308 309 |
# File 'app/raro_crud/raro_crud.rb', line 307 def self.exclusao(condicao) @@condition_destroy_action[self.to_s.to_sym] = condicao end |
.form_fields ⇒ Object
122 123 124 |
# File 'app/raro_crud/raro_crud.rb', line 122 def self.form_fields (@@form_fields[self.to_s.to_sym]) ? @@form_fields[self.to_s.to_sym] : [] end |
.form_groups ⇒ Object
126 127 128 |
# File 'app/raro_crud/raro_crud.rb', line 126 def self.form_groups (@@form_group[self.to_s.to_sym]) ? @@form_group[self.to_s.to_sym] : [] end |
.form_scripts ⇒ Object
130 131 132 |
# File 'app/raro_crud/raro_crud.rb', line 130 def self.form_scripts (@@form_scripts[self.to_s.to_sym]) ? @@form_scripts[self.to_s.to_sym] : [] end |
.get_index_path ⇒ Object
72 73 74 |
# File 'app/raro_crud/raro_crud.rb', line 72 def self.get_index_path @@index_path end |
.grupo_formulario(attribute, name, fields = nil) ⇒ Object
330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 |
# File 'app/raro_crud/raro_crud.rb', line 330 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
98 99 100 |
# File 'app/raro_crud/raro_crud.rb', line 98 def self.index_fields (@@index_fields[self.to_s.to_sym]) ? @@index_fields[self.to_s.to_sym] : [] end |
.index_path(str) ⇒ Object
68 69 70 |
# File 'app/raro_crud/raro_crud.rb', line 68 def self.index_path str @@index_path = str end |
.links(name, options) ⇒ Object
316 317 318 319 |
# File 'app/raro_crud/raro_crud.rb', line 316 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
154 155 156 |
# File 'app/raro_crud/raro_crud.rb', line 154 def self. end |
.opcoes(link, desc, proc = nil) ⇒ Object
321 322 323 324 |
# File 'app/raro_crud/raro_crud.rb', line 321 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
118 119 120 |
# File 'app/raro_crud/raro_crud.rb', line 118 def self. ([self.to_s.to_sym]) ? [self.to_s.to_sym] : [] end |
.order_field ⇒ Object
102 103 104 |
# File 'app/raro_crud/raro_crud.rb', line 102 def self.order_field (@@order_field[self.to_s.to_sym]).present? ? @@order_field[self.to_s.to_sym] : "id" end |
.per_page ⇒ Object
106 107 108 |
# File 'app/raro_crud/raro_crud.rb', line 106 def self.per_page @@per_page[self.to_s.to_sym] end |
.root_path ⇒ Object
64 65 66 |
# File 'app/raro_crud/raro_crud.rb', line 64 def self.root_path "/crud/#{self.to_s.gsub('Crud', '').underscore}" end |
.scopes ⇒ Object
146 147 148 |
# File 'app/raro_crud/raro_crud.rb', line 146 def self.scopes (@@scopes[self.to_s.to_sym]) ? @@scopes[self.to_s.to_sym] : [] end |
.script_formulario(script) ⇒ Object
378 379 380 381 |
# File 'app/raro_crud/raro_crud.rb', line 378 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
138 139 140 |
# File 'app/raro_crud/raro_crud.rb', line 138 def self.search_fields (@@search_fields[self.to_s.to_sym]) ? @@search_fields[self.to_s.to_sym] : [] end |
.sem_edicao ⇒ Object
295 296 297 |
# File 'app/raro_crud/raro_crud.rb', line 295 def self.sem_edicao @@edit_action[self.to_s.to_sym] = false end |
.sem_exclusao ⇒ Object
303 304 305 |
# File 'app/raro_crud/raro_crud.rb', line 303 def self.sem_exclusao @@destroy_action[self.to_s.to_sym] = false end |
.sem_visualizacao ⇒ Object
287 288 289 |
# File 'app/raro_crud/raro_crud.rb', line 287 def self.sem_visualizacao @@view_action[self.to_s.to_sym] = false end |
.subtitle(type) ⇒ Object
80 81 82 83 84 85 |
# File 'app/raro_crud/raro_crud.rb', line 80 def self.subtitle(type) case type when :index @@subtitle_index[self.to_s.to_sym] end end |
.test_fields ⇒ Object
142 143 144 |
# File 'app/raro_crud/raro_crud.rb', line 142 def self.test_fields (@@test_fields[self.to_s.to_sym]) ? @@test_fields[self.to_s.to_sym] : [] end |
.title ⇒ Object
76 77 78 |
# File 'app/raro_crud/raro_crud.rb', line 76 def self.title @@title[self.to_s.to_sym] end |
.top_links ⇒ Object
94 95 96 |
# File 'app/raro_crud/raro_crud.rb', line 94 def self.top_links (@@top_links[self.to_s.to_sym]) ? @@top_links[self.to_s.to_sym] : [] end |
.view_action ⇒ Object
52 53 54 55 56 57 58 |
# File 'app/raro_crud/raro_crud.rb', line 52 def self.view_action if @@view_action[self.to_s.to_sym] == false return false else return true end end |
.view_fields ⇒ Object
134 135 136 |
# File 'app/raro_crud/raro_crud.rb', line 134 def self.view_fields (@@view_fields[self.to_s.to_sym]) ? @@view_fields[self.to_s.to_sym] : [] end |
.visualizacao(condicao) ⇒ Object
291 292 293 |
# File 'app/raro_crud/raro_crud.rb', line 291 def self.visualizacao(condicao) @@condition_view_action[self.to_s.to_sym] = condicao end |