valid_options << :actions unless in_action
unknown_option_keys = options.keys - valid_options
- fail ActionController::ActionControllerError,
- "Unknown options: #{unknown_option_keys.join(', ')}" unless
- unknown_option_keys.empty?
+ unless unknown_option_keys.empty?
+ raise ActionController::ActionControllerError,
+ "Unknown options: #{unknown_option_keys.join(', ')}"
+ end
options[:singular_name] ||= ActiveSupport::Inflector.singularize(collection_id.to_s)
options[:class_name] ||= ActiveSupport::Inflector.camelize(options[:singular_name])
# than or equal to zero). The page CGI parameter for links defaults to
# "page" and can be overridden with +page_parameter+.
def initialize(controller, item_count, items_per_page, current_page = 1)
- fail ArgumentError, "must have at least one item per page" if
+ raise ArgumentError, "must have at least one item per page" if
items_per_page <= 0
@controller = controller
# not belong to this Paginator, an ArgumentError is raised.
def current_page=(page)
if page.is_a? Page
- fail ArgumentError, "Page/Paginator mismatch" unless
+ raise ArgumentError, "Page/Paginator mismatch" unless
page.paginator == self
end
page = page.to_i
1
else
q, r = @item_count.divmod(@items_per_page)
- r == 0 ? q : q + 1
+ r.zero? ? q : q + 1
end
end
# left-hand page comes after the right-hand page. Raises ArgumentError
# if the pages do not belong to the same Paginator object.
def <=>(other)
- fail ArgumentError unless @paginator == other.paginator
+ raise ArgumentError unless @paginator == other.paginator
@number <=> other.number
end