Added better id in feed item.

In node recent changes, return only the published entries.
This commit is contained in:
Jocelyn Fiat
2017-09-06 12:45:42 +02:00
parent 69894e8397
commit 0c119b6b5a
4 changed files with 24 additions and 4 deletions

View File

@@ -312,6 +312,7 @@ feature -- Hooks
if l_node_api.has_permission_for_action_on_node ("view", n, a_current_user) then
n := l_node_api.full_node (n)
create ch.make (n.content_type, create {CMS_LOCAL_LINK}.make (n.title, "node/" + n.id.out), n.modification_date)
ch.set_id (n.content_type + ":id" + n.id.out + "-rev" + n.revision.out)
if n.creation_date ~ n.modification_date then
l_info := "new"
if not n.is_published then

View File

@@ -214,7 +214,7 @@ feature -- Access
end
recent_node_changes_before (a_lower: INTEGER; a_count: INTEGER; a_date: DATE_TIME): LIST [CMS_NODE]
-- List of recent changes, before `a_date', according to `params' settings.
-- List of recent changes on published nodes, before `a_date', according to `params' settings.
local
l_parameters: STRING_TABLE [detachable ANY]
do
@@ -224,10 +224,11 @@ feature -- Access
write_information_log (generator + ".recent_node_changes_before")
from
create l_parameters.make (3)
create l_parameters.make (4)
l_parameters.put (a_count, "size")
l_parameters.put (a_lower, "offset")
l_parameters.put (a_date, "date")
l_parameters.put ({CMS_NODE_API}.published, "status")
sql_query (sql_select_recent_node_changes_before, l_parameters)
sql_start
@@ -613,9 +614,9 @@ feature {NONE} -- Queries nodes
end
sql_select_recent_node_changes_before: STRING
--
--published nodes before ':date'.
once
Result := sql_select_all_from_nodes + " WHERE changed <= :date ORDER BY changed DESC, nid DESC LIMIT :size OFFSET :offset ;"
Result := sql_select_all_from_nodes + " WHERE changed <= :date AND status=:status ORDER BY changed DESC, nid DESC LIMIT :size OFFSET :offset ;"
end
feature {NONE} -- Queries node revisions

View File

@@ -23,6 +23,9 @@ feature {NONE} -- Initialization
feature -- Access
id: detachable READABLE_STRING_32
-- Optional id, expected to be unique.
link: CMS_LOCAL_LINK
-- Local link associated with the resource.
@@ -51,6 +54,16 @@ feature -- Access
feature -- Element change
set_id (a_id: detachable READABLE_STRING_GENERAL)
-- Set `id` to `a_id`.
do
if a_id = Void then
id := Void
else
id := a_id.as_string_32
end
end
set_author_name (n: like author_name)
-- Set `author_name' to `n'.
do

View File

@@ -132,6 +132,7 @@ feature -- Hook
create l_feed_name.make_from_string (a_response.api.setup.site_name)
l_feed_name.append_string ({STRING_32} " : recent changes")
create l_feed.make (l_feed_name)
l_feed.set_id (a_response.api.absolute_url (a_response.request.path_info, Void))
l_feed.set_date (create {DATE_TIME}.make_now_utc)
nb := a_size
across
@@ -143,6 +144,10 @@ feature -- Hook
create l_feed_item.make (ch.link.title)
l_feed_item.set_date (ch.date)
if attached ch.id as l_ch_id then
l_feed_item.set_id (l_ch_id)
end
create s.make_empty
if attached ch.information as l_information then
s.append_string_general (l_information)