Module: Carload::ApplicationHelper

Included in:
DashboardController
Defined in:
app/helpers/carload/application_helper.rb

Instance Method Summary collapse

Instance Method Details

#id_or_ids(associated_model) ⇒ Object



22
23
24
25
26
27
28
29
# File 'app/helpers/carload/application_helper.rb', line 22

def id_or_ids associated_model
  case associated_model[:association_type]
  when :has_many
    "#{associated_model[:name]}_ids"
  else
    "#{associated_model[:name]}_id"
  end
end

#image?(attribute_name) ⇒ Boolean

Returns:

  • (Boolean)


18
19
20
# File 'app/helpers/carload/application_helper.rb', line 18

def image? attribute_name
  attribute_name.to_s =~ /image|logo|img/
end

#needs_upload?(model_name, attribute_name) ⇒ Boolean

Returns:

  • (Boolean)


3
4
5
6
7
8
9
# File 'app/helpers/carload/application_helper.rb', line 3

def needs_upload? model_name, attribute_name
  case Carload.upload_solution
  when :carrierwave
    model_class = model_name.to_s.classify.constantize
    not model_class.instance_methods.map(&:to_s).select { |x| x =~ /#{attribute_name}_url/ }.empty?
  end
end

#polymorphic?(attribute_name) ⇒ Boolean

Returns:

  • (Boolean)


11
12
13
14
15
16
# File 'app/helpers/carload/application_helper.rb', line 11

def polymorphic? attribute_name
  Dashboard.model(@model_name).associated_models.each_value do |associated_model|
    return associated_model[:name] if attribute_name =~ /#{associated_model[:name]}/ and associated_model[:polymorphic]
  end
  false
end