Removed dependency from pagination to cms_data_query_parameters

TODO: review and fix any NATURAL_64 truncation.
This commit is contained in:
2015-06-02 15:56:27 +02:00
parent af8f410684
commit b8cfff487a
4 changed files with 17 additions and 20 deletions

View File

@@ -220,10 +220,10 @@ feature -- Access: Node
Result := node_storage.trashed_nodes (a_user.id)
end
recent_nodes (a_pagination: CMS_DATA_QUERY_PARAMETERS): ITERABLE [CMS_NODE]
recent_nodes (params: CMS_DATA_QUERY_PARAMETERS): ITERABLE [CMS_NODE]
-- List of the `a_rows' most recent nodes starting from `a_offset'.
do
Result := node_storage.recent_nodes (a_pagination.offset.to_integer_32, a_pagination.size.to_integer_32)
Result := node_storage.recent_nodes (params.offset.to_integer_32, params.size.to_integer_32)
end
node (a_id: INTEGER_64): detachable CMS_NODE

View File

@@ -65,12 +65,12 @@ feature -- HTTP Methods
l_page_helper.get_setting_from_request (req)
if l_page_helper.pages_count > 1 then
l_page_helper.append_to_html (l_response, s_pager)
if l_page_helper.page_size > 20 then
if l_page_helper.page_size > 25 then
s.append (s_pager)
end
end
if attached node_api.recent_nodes (l_page_helper.query_parameters) as lst then
if attached node_api.recent_nodes (create {CMS_DATA_QUERY_PARAMETERS}.make (l_page_helper.current_page_offset, l_page_helper.page_size)) as lst then
s.append ("<ul class=%"cms-nodes%">%N")
across
lst as ic

View File

@@ -14,7 +14,7 @@ create
feature {NONE} -- Initialization
make (a_offset: NATURAL; a_size: NATURAL)
make (a_offset: NATURAL_64; a_size: NATURAL)
do
offset := a_offset
size := a_size
@@ -28,7 +28,7 @@ feature -- Access
size: NATURAL assign set_size
-- Number of items per page.
offset: NATURAL assign set_offset
offset: NATURAL_64 assign set_offset
-- lower index of `items' pagination.
order_by: detachable READABLE_STRING_8
@@ -47,7 +47,7 @@ feature -- Element change
size_set: size = a_size
end
set_offset (a_offset: NATURAL)
set_offset (a_offset: NATURAL_64)
-- Set offset with `a_offset'.
do
offset := a_offset

View File

@@ -17,8 +17,6 @@ feature {NONE} -- Initialization
require
a_page_size > 0
do
create query_parameters.make (0, 25)
create resource.make (a_resource)
set_page_size (a_page_size)
set_upper (a_count)
@@ -40,9 +38,6 @@ feature -- Access
page_size: NATURAL
-- Number of items per page.
do
Result := query_parameters.size
end
upper: NATURAL_64
-- number of items.
@@ -51,8 +46,15 @@ feature -- Access
current_page_index: INTEGER
-- Current page index.
query_parameters: CMS_DATA_QUERY_PARAMETERS
-- Parameter for the associated query/resource.
current_page_offset: NATURAL_64
-- Lower index - 1 for current page.
do
if current_page_index > 1 then
Result := (current_page_index - 1).to_natural_32 * page_size
else
Result := 0
end
end
feature -- Status report
@@ -96,7 +98,7 @@ feature -- Element change
set_page_size (a_size: NATURAL)
-- Set `page_size' to `a_size'.
do
query_parameters.set_size (a_size)
page_size := a_size
end
set_upper (a_upper: NATURAL_64)
@@ -109,11 +111,6 @@ feature -- Element change
-- Set Current page index to `a_page_index'.
do
current_page_index := a_page_index
if a_page_index > 1 then
query_parameters.set_offset ((a_page_index - 1).to_natural_32 * page_size)
else
query_parameters.set_offset (0)
end
end
set_page_parameter_id (a_id: READABLE_STRING_8)