Class: Liquid::InvoiceDrop

Inherits:
Drop
  • Object
show all
Includes:
Memery
Defined in:
app/models/liquid/invoice_drop.rb

Instance Attribute Summary collapse

Delegated Instance Attributes collapse

Instance Method Summary collapse

Constructor Details

#initialize(invoice) ⇒ InvoiceDrop

Returns a new instance of InvoiceDrop.



29
30
31
# File 'app/models/liquid/invoice_drop.rb', line 29

def initialize(invoice)
  @invoice = invoice
end

Instance Attribute Details

#invoiceObject (readonly)

Returns the value of attribute invoice.



6
7
8
# File 'app/models/liquid/invoice_drop.rb', line 6

def invoice
  @invoice
end

Instance Method Details

#balance_formattedObject

Methods that are only used in Liquid templates - implemented directly in drop



34
35
36
37
# File 'app/models/liquid/invoice_drop.rb', line 34

def balance_formatted
  return '0.00' unless invoice.respond_to?(:balance) && invoice.balance
  ActionController::Base.helpers.number_to_currency(invoice.balance).to_s
end

#customerObject

Alias for Invoice#customer

Returns:

  • (Object)

    Invoice#customer

See Also:



9
10
11
12
13
14
15
16
17
18
# File 'app/models/liquid/invoice_drop.rb', line 9

delegate :reference_number,
:customer,
:state,
:public_pay_link,
:public_pay_link_has_auth_token?,
:not_rma?,
:funded_by_rma?,
:funded_by_cod?,
:rma_awaiting_return?,
to: :invoice

#fully_funded_by_rma?Boolean

Returns:

  • (Boolean)


25
26
27
# File 'app/models/liquid/invoice_drop.rb', line 25

def fully_funded_by_rma?
  invoice.fully_funded_by_rma? rescue false
end

#funded_by_cod?Object

Alias for Invoice#funded_by_cod?

Returns:

  • (Object)

    Invoice#funded_by_cod?

See Also:



9
10
11
12
13
14
15
16
17
18
# File 'app/models/liquid/invoice_drop.rb', line 9

delegate :reference_number,
:customer,
:state,
:public_pay_link,
:public_pay_link_has_auth_token?,
:not_rma?,
:funded_by_rma?,
:funded_by_cod?,
:rma_awaiting_return?,
to: :invoice

#funded_by_rma?Object

Alias for Invoice#funded_by_rma?

Returns:

  • (Object)

    Invoice#funded_by_rma?

See Also:



9
10
11
12
13
14
15
16
17
18
# File 'app/models/liquid/invoice_drop.rb', line 9

delegate :reference_number,
:customer,
:state,
:public_pay_link,
:public_pay_link_has_auth_token?,
:not_rma?,
:funded_by_rma?,
:funded_by_cod?,
:rma_awaiting_return?,
to: :invoice

#has_return_instructions?Boolean

Alias methods for template compatibility

Returns:

  • (Boolean)


50
51
52
# File 'app/models/liquid/invoice_drop.rb', line 50

def has_return_instructions?
  return_instructions?
end

#has_return_labels?Boolean

Returns:

  • (Boolean)


54
55
56
# File 'app/models/liquid/invoice_drop.rb', line 54

def has_return_labels?
  return_labels?
end

#not_rma?Object

Alias for Invoice#not_rma?

Returns:

  • (Object)

    Invoice#not_rma?

See Also:



9
10
11
12
13
14
15
16
17
18
# File 'app/models/liquid/invoice_drop.rb', line 9

delegate :reference_number,
:customer,
:state,
:public_pay_link,
:public_pay_link_has_auth_token?,
:not_rma?,
:funded_by_rma?,
:funded_by_cod?,
:rma_awaiting_return?,
to: :invoice

Alias for Invoice#public_pay_link

Returns:

  • (Object)

    Invoice#public_pay_link

See Also:



9
10
11
12
13
14
15
16
17
18
# File 'app/models/liquid/invoice_drop.rb', line 9

delegate :reference_number,
:customer,
:state,
:public_pay_link,
:public_pay_link_has_auth_token?,
:not_rma?,
:funded_by_rma?,
:funded_by_cod?,
:rma_awaiting_return?,
to: :invoice


58
59
60
61
62
# File 'app/models/liquid/invoice_drop.rb', line 58

def 
  return nil unless invoice.order&.customer && invoice.order.customer..present?

  invoice.order.customer..email
end

Alias for Invoice#public_pay_link_has_auth_token?

Returns:

  • (Object)

    Invoice#public_pay_link_has_auth_token?

See Also:



9
10
11
12
13
14
15
16
17
18
# File 'app/models/liquid/invoice_drop.rb', line 9

delegate :reference_number,
:customer,
:state,
:public_pay_link,
:public_pay_link_has_auth_token?,
:not_rma?,
:funded_by_rma?,
:funded_by_cod?,
:rma_awaiting_return?,
to: :invoice

#reference_numberObject

Alias for Invoice#reference_number

Returns:

  • (Object)

    Invoice#reference_number

See Also:



9
10
11
12
13
14
15
16
17
18
# File 'app/models/liquid/invoice_drop.rb', line 9

delegate :reference_number,
:customer,
:state,
:public_pay_link,
:public_pay_link_has_auth_token?,
:not_rma?,
:funded_by_rma?,
:funded_by_cod?,
:rma_awaiting_return?,
to: :invoice

#return_instructions?Boolean

Returns:

  • (Boolean)


39
40
41
42
# File 'app/models/liquid/invoice_drop.rb', line 39

def return_instructions?
  return false unless invoice.order&.rma
  invoice.order.rma.return_instructions.present?
end

#return_labels?Boolean

Returns:

  • (Boolean)


44
45
46
47
# File 'app/models/liquid/invoice_drop.rb', line 44

def return_labels?
  return false unless invoice.order&.rma
  invoice.order.rma.return_label_required?
end

#rma_awaiting_return?Object

Alias for Invoice#rma_awaiting_return?

Returns:

  • (Object)

    Invoice#rma_awaiting_return?

See Also:



9
10
11
12
13
14
15
16
17
18
# File 'app/models/liquid/invoice_drop.rb', line 9

delegate :reference_number,
:customer,
:state,
:public_pay_link,
:public_pay_link_has_auth_token?,
:not_rma?,
:funded_by_rma?,
:funded_by_cod?,
:rma_awaiting_return?,
to: :invoice

#rma_numberObject

Safe wrapper methods for potentially problematic calls



21
22
23
# File 'app/models/liquid/invoice_drop.rb', line 21

def rma_number
  invoice.rma_number rescue nil
end

#stateObject

Alias for Invoice#state

Returns:

  • (Object)

    Invoice#state

See Also:



9
10
11
12
13
14
15
16
17
18
# File 'app/models/liquid/invoice_drop.rb', line 9

delegate :reference_number,
:customer,
:state,
:public_pay_link,
:public_pay_link_has_auth_token?,
:not_rma?,
:funded_by_rma?,
:funded_by_cod?,
:rma_awaiting_return?,
to: :invoice