diff --git a/modules/node/cms_node_api.e b/modules/node/cms_node_api.e index ab2f96a..5942337 100644 --- a/modules/node/cms_node_api.e +++ b/modules/node/cms_node_api.e @@ -411,6 +411,7 @@ feature -- Change: Node delete_node (a_node: CMS_NODE) -- Delete `a_node'. + --! remove the node from the storage. do reset_error if a_node.has_id then @@ -429,7 +430,7 @@ feature -- Change: Node trash_node (a_node: CMS_NODE) -- Trash node `a_node'. - --! remove the node from the storage. + -- Soft delete do reset_error node_storage.trash_node (a_node) diff --git a/modules/node/handler/cms_node_type_webform_manager.e b/modules/node/handler/cms_node_type_webform_manager.e index dac05b6..43209db 100644 --- a/modules/node/handler/cms_node_type_webform_manager.e +++ b/modules/node/handler/cms_node_type_webform_manager.e @@ -274,7 +274,7 @@ feature -- Output if a_node.status = {CMS_NODE_API}.trashed then - create lnk.make ("Trash", node_api.node_path (a_node) + "/trash") + create lnk.make ("Delete", node_api.node_path (a_node) + "/delete") lnk.set_weight (2) a_response.add_to_primary_tabs (lnk) elseif a_node.has_id then @@ -291,9 +291,9 @@ feature -- Output end if - node_api.has_permission_for_action_on_node ("delete", a_node, l_user) + node_api.has_permission_for_action_on_node ("trash", a_node, l_user) then - create lnk.make ("Delete", node_api.node_path (a_node) + "/delete") + create lnk.make ("Trash", node_api.node_path (a_node) + "/trash") lnk.set_weight (3) a_response.add_to_primary_tabs (lnk) end diff --git a/modules/node/handler/node_handler.e b/modules/node/handler/node_handler.e index 03d61b2..ac3762a 100644 --- a/modules/node/handler/node_handler.e +++ b/modules/node/handler/node_handler.e @@ -205,8 +205,8 @@ feature -- HTTP Methods send_not_implemented ("REST API not yet implemented", req, res) end - do_delete (req: WSF_REQUEST; res: WSF_RESPONSE) - -- + do_trash (req: WSF_REQUEST; res: WSF_RESPONSE) + -- Trash a node, soft delete. do if attached current_user (req) as l_user then if attached {WSF_STRING} req.path_parameter ("id") as l_id then @@ -214,8 +214,8 @@ feature -- HTTP Methods l_id.is_integer and then attached node_api.node (l_id.integer_value) as l_node then - if node_api.has_permission_for_action_on_node ("delete", l_node, current_user (req)) then - node_api.delete_node (l_node) + if node_api.has_permission_for_action_on_node ("trash", l_node, current_user (req)) then + node_api.trash_node (l_node) res.send (create {CMS_REDIRECTION_RESPONSE_MESSAGE}.make (req.absolute_script_url (""))) else send_access_denied (req, res) @@ -240,8 +240,8 @@ feature -- HTTP Methods feature {NONE} -- Trash:Restore - do_trash (req: WSF_REQUEST; res: WSF_RESPONSE) - -- Trash a node from the database. + do_delete (req: WSF_REQUEST; res: WSF_RESPONSE) + -- Delete a node from the database. do if attached current_user (req) as l_user then if attached {WSF_STRING} req.path_parameter ("id") as l_id then @@ -249,8 +249,8 @@ feature {NONE} -- Trash:Restore l_id.is_integer and then attached node_api.node (l_id.integer_value) as l_node then - if node_api.has_permission_for_action_on_node ("trash", l_node, current_user (req)) then - node_api.trash_node (l_node) + if node_api.has_permission_for_action_on_node ("delete", l_node, current_user (req)) then + node_api.delete_node (l_node) res.send (create {CMS_REDIRECTION_RESPONSE_MESSAGE}.make (req.absolute_script_url (""))) else send_access_denied (req, res) diff --git a/modules/node/persistence/cms_node_storage_sql.e b/modules/node/persistence/cms_node_storage_sql.e index ee4d821..f159e7c 100644 --- a/modules/node/persistence/cms_node_storage_sql.e +++ b/modules/node/persistence/cms_node_storage_sql.e @@ -321,7 +321,7 @@ feature -- Change: Node store_node (a_node) end - delete_node_by_id (a_id: INTEGER_64) + trash_node_by_id (a_id: INTEGER_64) -- Remove node by id `a_id'. local l_parameters: STRING_TABLE [ANY] @@ -333,10 +333,10 @@ feature -- Change: Node l_parameters.put (create {DATE_TIME}.make_now_utc, "changed") l_parameters.put ({CMS_NODE_API}.trashed, "status") l_parameters.put (a_id, "nid") - sql_change (sql_delete_node, l_parameters) + sql_change (sql_trash_node, l_parameters) end - trash_node_by_id (a_id: INTEGER_64) + delete_node_by_id (a_id: INTEGER_64) -- local l_parameters: STRING_TABLE [ANY] @@ -348,7 +348,7 @@ feature -- Change: Node error_handler.reset create l_parameters.make (1) l_parameters.put (a_id, "nid") - sql_change (sql_trash_node, l_parameters) + sql_change (sql_delete_node, l_parameters) end restore_node_by_id (a_id: INTEGER_64) @@ -492,10 +492,10 @@ feature {NONE} -- Queries sql_update_node : STRING = "UPDATE nodes SET revision=:revision, type=:type, title=:title, summary=:summary, content=:content, format=:format, publish=:publish, changed=:changed, status=:status, author=:author WHERE nid=:nid;" -- SQL update node. - sql_delete_node: STRING = "UPDATE nodes SET changed=:changed, status =:status WHERE nid=:nid" + sql_trash_node: STRING = "UPDATE nodes SET changed=:changed, status =:status WHERE nid=:nid" -- Soft deletion with free metadata. - sql_trash_node: STRING = "DELETE FROM nodes WHERE nid=:nid" + sql_delete_node: STRING = "DELETE FROM nodes WHERE nid=:nid" -- Physical deletion with free metadata. sql_restore_node: STRING = "UPDATE nodes SET changed=:changed, status =:status WHERE nid=:nid"