Sha256: 0d25ea110f0ff9d7965b88cfb064bed4cf8b002c57296b5ae57a4d9be3d54c3f

Contents?: true

Size: 1.76 KB

Versions: 56

Compression:

Stored size: 1.76 KB

Contents

module DocumentHelper

  # Returns new associated url or edit existing associated url based on object is associated with associated or not
  # @example Basic Usage - User without Image
  #   >>> upload_document_link(@user, :profile_picture, :admin)
  #   "/admin/documents/new"
  #
  # @example Basic Usage - User with Iamge
  #
  #   >>> upload_document_link(@user_with_document, :profile_picture, :admin)
  #   "/admin/documents/1/edit"
  #
  # @example Basic Usage - Custom Scope
  #
  #   >>> upload_document_link(@project, :profile_picture, :customer)
  #   "/customer/documents/new"
  #   >>> upload_document_link(@project_with_document, :profile_picture, :customer)
  #   "/customer/documents/1/edit"
  def upload_document_link(object, assoc_name=:associated, scope=:admin, **options)
    associated_object = nil
    associated_object =  object.send(assoc_name) if object.respond_to?(assoc_name)
    if associated_object.present? && associated_object.persisted?
      main_app.url_for([:edit, scope, :document, id: associated_object.id, documentable_id: object.id, documentable_type: object.class.to_s, document_type: associated_object.class.name])
    else
      associated_object = object.send("build_#{assoc_name}")
      main_app.url_for([:new, scope, :document, documentable_id: object.id, documentable_type: object.class.to_s, document_type: associated_object.class.name])
    end
  end

  def import_data_link(object, class_name, assoc_name=:associated, scope=nil, **options)
    if object.present?
      #main_app.url_for([:edit, scope, :import_data, data_type: class_name])
      edit_import_data_url(object, data_type: class_name)
    else
      #main_app.url_for([:new, scope, :import_data, data_type: class_name])
      new_import_data_url(data_type: class_name)
    end
  end

end

Version data entries

56 entries across 56 versions & 1 rubygems

Version Path
kuppayam-0.2.12.pre.materialize app/helpers/document_helper.rb
kuppayam-0.2.11.pre.materialize app/helpers/document_helper.rb
kuppayam-0.2.10.pre.materialize app/helpers/document_helper.rb
kuppayam-0.2.9.pre.materialize app/helpers/document_helper.rb
kuppayam-0.2.8.pre.materialize app/helpers/document_helper.rb
kuppayam-0.2.7.pre.materialize app/helpers/document_helper.rb
kuppayam-0.2.6.pre.materialize app/helpers/document_helper.rb
kuppayam-0.2.5.pre.materialize app/helpers/document_helper.rb
kuppayam-0.2.4.pre.materialize app/helpers/document_helper.rb
kuppayam-0.2.3.pre.materialize app/helpers/document_helper.rb
kuppayam-0.2.2.pre.materialize app/helpers/document_helper.rb
kuppayam-0.2.1.pre.materialize app/helpers/document_helper.rb
kuppayam-0.2.0.pre.materialize app/helpers/document_helper.rb
kuppayam-0.1.39 app/helpers/document_helper.rb
kuppayam-0.1.38 app/helpers/document_helper.rb
kuppayam-0.1.37 app/helpers/document_helper.rb
kuppayam-0.1.36 app/helpers/document_helper.rb
kuppayam-0.1.35 app/helpers/document_helper.rb
kuppayam-0.1.34 app/helpers/document_helper.rb
kuppayam-0.1.33 app/helpers/document_helper.rb