Class: Caracal::Core::Models::PageNumberModel

Inherits:
BaseModel
  • Object
show all
Defined in:
lib/caracal/core/models/page_number_model.rb

Overview

This class handles block options passed to the page_numbers method.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(options = {}, &block) ⇒ PageNumberModel

initialization



29
30
31
32
33
34
35
36
37
# File 'lib/caracal/core/models/page_number_model.rb', line 29

def initialize(options={}, &block)
  @page_number_align        = DEFAULT_PAGE_NUMBER_ALIGN
  @page_number_label        = nil
  @page_number_label_size   = nil
  @page_number_number_size  = nil
  @page_number_show         = DEFAULT_PAGE_NUMBER_SHOW

  super options, &block
end

Instance Attribute Details

#page_number_alignObject (readonly)

accessors



22
23
24
# File 'lib/caracal/core/models/page_number_model.rb', line 22

def page_number_align
  @page_number_align
end

#page_number_labelObject (readonly)

Returns the value of attribute page_number_label.



23
24
25
# File 'lib/caracal/core/models/page_number_model.rb', line 23

def page_number_label
  @page_number_label
end

#page_number_label_sizeObject (readonly)

Returns the value of attribute page_number_label_size.



24
25
26
# File 'lib/caracal/core/models/page_number_model.rb', line 24

def page_number_label_size
  @page_number_label_size
end

#page_number_number_sizeObject (readonly)

Returns the value of attribute page_number_number_size.



25
26
27
# File 'lib/caracal/core/models/page_number_model.rb', line 25

def page_number_number_size
  @page_number_number_size
end

#page_number_showObject (readonly)

Returns the value of attribute page_number_show.



26
27
28
# File 'lib/caracal/core/models/page_number_model.rb', line 26

def page_number_show
  @page_number_show
end

Instance Method Details

#align(value) ⇒ Object

SETTERS ==============================


46
47
48
# File 'lib/caracal/core/models/page_number_model.rb', line 46

def align(value)
  @page_number_align = value.to_s.to_sym
end

#label(value) ⇒ Object



50
51
52
# File 'lib/caracal/core/models/page_number_model.rb', line 50

def label(value)
  @page_number_label = value.to_s.strip   # renderer will enforce trailing space
end

#label_size(value) ⇒ Object



54
55
56
57
# File 'lib/caracal/core/models/page_number_model.rb', line 54

def label_size(value)
  v = value.to_i
  @page_number_label_size = (v == 0) ? nil : v
end

#number_size(value) ⇒ Object



59
60
61
62
# File 'lib/caracal/core/models/page_number_model.rb', line 59

def number_size(value)
  v = value.to_i
  @page_number_number_size = (v == 0) ? nil : v
end

#show(value) ⇒ Object



64
65
66
# File 'lib/caracal/core/models/page_number_model.rb', line 64

def show(value)
  @page_number_show = !!value
end

#size(value) ⇒ Object



68
69
70
71
72
# File 'lib/caracal/core/models/page_number_model.rb', line 68

def size(value)
  v = value.to_i
  @page_number_label_size  = (v == 0) ? nil : v
  @page_number_number_size = (v == 0) ? nil : v
end

#valid?Boolean

VALIDATION ===========================

Returns:

  • (Boolean)


77
78
79
# File 'lib/caracal/core/models/page_number_model.rb', line 77

def valid?
  (!page_number_show || [:left, :center, :right].include?(page_number_align))
end