Same name and namespace in other branches
- 4.7.x modules/aggregator.module \aggregator_menu()
- 5.x modules/aggregator/aggregator.module \aggregator_menu()
- 6.x modules/aggregator/aggregator.module \aggregator_menu()
- 7.x modules/aggregator/aggregator.module \aggregator_menu()
Implementation of hook_menu().
File
- modules/
aggregator.module, line 98 - Used to aggregate syndicated content (RSS and RDF).
Code
function aggregator_menu($may_cache) {
$items = array();
if ($may_cache) {
$edit = user_access('administer news feeds');
$view = user_access('access news feeds');
$items[] = array(
'path' => 'admin/aggregator',
'title' => t('aggregator'),
'callback' => 'aggregator_admin_overview',
'access' => $edit,
);
$items[] = array(
'path' => 'admin/aggregator/edit/feed',
'title' => t('edit feed'),
'callback' => 'aggregator_admin_edit_feed',
'access' => $edit,
'type' => MENU_CALLBACK,
);
$items[] = array(
'path' => 'admin/aggregator/edit/category',
'title' => t('edit category'),
'callback' => 'aggregator_admin_edit_category',
'access' => $edit,
'type' => MENU_CALLBACK,
);
$items[] = array(
'path' => 'admin/aggregator/remove',
'title' => t('remove items'),
'callback' => 'aggregator_admin_remove_feed',
'access' => $edit,
'type' => MENU_CALLBACK,
);
$items[] = array(
'path' => 'admin/aggregator/update',
'title' => t('update items'),
'callback' => 'aggregator_admin_refresh_feed',
'access' => $edit,
'type' => MENU_CALLBACK,
);
$items[] = array(
'path' => 'admin/aggregator/list',
'title' => t('list'),
'type' => MENU_DEFAULT_LOCAL_TASK,
'weight' => -10,
);
$items[] = array(
'path' => 'admin/aggregator/add/feed',
'title' => t('add feed'),
'callback' => 'aggregator_admin_edit_feed',
'access' => $edit,
'type' => MENU_LOCAL_TASK,
);
$items[] = array(
'path' => 'admin/aggregator/add/category',
'title' => t('add category'),
'callback' => 'aggregator_admin_edit_category',
'access' => $edit,
'type' => MENU_LOCAL_TASK,
);
$items[] = array(
'path' => 'aggregator',
'title' => t('news aggregator'),
'callback' => 'aggregator_page_last',
'access' => $view,
'weight' => 5,
);
$items[] = array(
'path' => 'aggregator/sources',
'title' => t('sources'),
'callback' => 'aggregator_page_sources',
'access' => $view,
);
$items[] = array(
'path' => 'aggregator/categories',
'title' => t('categories'),
'callback' => 'aggregator_page_categories',
'access' => $view,
'type' => MENU_ITEM_GROUPING,
);
// Sources:
$result = db_query('SELECT title, fid FROM {aggregator_feed} ORDER BY title');
while ($feed = db_fetch_object($result)) {
$items[] = array(
'path' => 'aggregator/sources/' . $feed->fid,
'title' => $feed->title,
'callback' => 'aggregator_page_source',
'access' => $view,
);
$items[] = array(
'path' => 'aggregator/sources/' . $feed->fid . '/view',
'title' => t('view'),
'type' => MENU_DEFAULT_LOCAL_TASK,
'weight' => -10,
);
$items[] = array(
'path' => 'aggregator/sources/' . $feed->fid . '/categorize',
'title' => t('categorize'),
'callback' => 'aggregator_page_source',
'access' => $edit,
'type' => MENU_LOCAL_TASK,
);
$items[] = array(
'path' => 'aggregator/sources/' . $feed->fid . '/configure',
'title' => t('configure'),
'callback' => 'aggregator_edit',
'access' => $edit,
'type' => MENU_LOCAL_TASK,
'weight' => 1,
);
}
// Categories:
$result = db_query('SELECT title, cid FROM {aggregator_category} ORDER BY title');
while ($category = db_fetch_object($result)) {
$items[] = array(
'path' => 'aggregator/categories/' . $category->cid,
'title' => $category->title,
'callback' => 'aggregator_page_category',
'access' => $view,
);
$items[] = array(
'path' => 'aggregator/categories/' . $category->cid . '/view',
'title' => t('view'),
'type' => MENU_DEFAULT_LOCAL_TASK,
'weight' => -10,
);
$items[] = array(
'path' => 'aggregator/categories/' . $category->cid . '/categorize',
'title' => t('categorize'),
'callback' => 'aggregator_page_category',
'access' => $edit,
'type' => MENU_LOCAL_TASK,
);
$items[] = array(
'path' => 'aggregator/categories/' . $category->cid . '/configure',
'title' => t('configure'),
'callback' => 'aggregator_edit',
'access' => $edit,
'type' => MENU_LOCAL_TASK,
'weight' => 1,
);
}
$items[] = array(
'path' => 'aggregator/opml',
'title' => t('opml'),
'callback' => 'aggregator_page_opml',
'access' => $view,
'type' => MENU_CALLBACK,
);
}
return $items;
}