diff --git a/modules/content_retriever/content_retriever.module b/modules/content_retriever/content_retriever.module index 2326fe9d578c416b5babc81b6db8440fd3e43072..c5f488c00548b095a1e2e7e4438d4834fc5cc801 100644 --- a/modules/content_retriever/content_retriever.module +++ b/modules/content_retriever/content_retriever.module @@ -647,11 +647,21 @@ function content_retriever_preprocess_page(&$variables) { /** * Implementation of hook_nodeapi(). * + * Warn when editing retrieved nodes. * Delete the record from the content_retriever table when a node * is deleted. */ function content_retriever_nodeapi(&$node, $op, $teaser, $page) { switch ($op) { + case 'prepare': + // If this is a node that has been retrieved from a remote site, warn + // a user about to edit it that their edits are not safe and may be + // overwritten by future updates. + $content_retriever_nid = db_result(db_query("SELECT nid FROM {content_retriever} WHERE nid = %d", $node->nid)); + if ($content_retriever_nid) { + drupal_set_message(t('This %type was originally retrieved from a remote site. Any changes you make here are liable to be overwritten when new content is fetched from the remote site.', array('%type' => node_get_types('name', $node))), 'warning'); + } + break; case 'delete': // remove db row from content_retriever db_query('DELETE FROM {content_retriever} WHERE nid = %d', $node->nid);