summaryrefslogtreecommitdiff
path: root/modules/aggregator
diff options
context:
space:
mode:
Diffstat (limited to 'modules/aggregator')
-rw-r--r--modules/aggregator/aggregator.admin.inc24
-rw-r--r--modules/aggregator/aggregator.module4
2 files changed, 22 insertions, 6 deletions
diff --git a/modules/aggregator/aggregator.admin.inc b/modules/aggregator/aggregator.admin.inc
index 9d78e5491..2f1485cf5 100644
--- a/modules/aggregator/aggregator.admin.inc
+++ b/modules/aggregator/aggregator.admin.inc
@@ -176,15 +176,31 @@ function aggregator_form_feed_submit($form, &$form_state) {
}
}
+function aggregator_admin_remove_feed($form_state, $feed) {
+ return confirm_form(
+ array(
+ 'feed' => array(
+ '#type' => 'value',
+ '#value' => $feed,
+ ),
+ ),
+ t('Are you sure you want to remove all items from the feed %feed?', array('%feed' => $feed['title'])),
+ 'admin/content/aggregator',
+ t('This action cannot be undone.'),
+ t('Remove items'),
+ t('Cancel')
+ );
+}
+
/**
- * Menu callback; removes all items from a feed, then redirects to the overview page.
+ * Remove all items from a feed and redirect to the overview page.
*
* @param $feed
* An associative array describing the feed to be cleared.
*/
-function aggregator_admin_remove_feed($feed) {
- aggregator_remove($feed);
- drupal_goto('admin/content/aggregator');
+function aggregator_admin_remove_feed_submit($form, &$form_state) {
+ aggregator_remove($form_state['values']['feed']);
+ $form_state['redirect'] = 'admin/content/aggregator';
}
/**
diff --git a/modules/aggregator/aggregator.module b/modules/aggregator/aggregator.module
index b988e637b..ac827e927 100644
--- a/modules/aggregator/aggregator.module
+++ b/modules/aggregator/aggregator.module
@@ -106,8 +106,8 @@ function aggregator_menu() {
);
$items['admin/content/aggregator/remove/%aggregator_feed'] = array(
'title' => 'Remove items',
- 'page callback' => 'aggregator_admin_remove_feed',
- 'page arguments' => array(4),
+ 'page callback' => 'drupal_get_form',
+ 'page arguments' => array('aggregator_admin_remove_feed', 4),
'access arguments' => array('administer news feeds'),
'type' => MENU_CALLBACK,
'file' => 'aggregator.admin.inc',