Same name and namespace in other branches
  1. 4.6.x modules/node.module \node_page_default()
  2. 4.7.x modules/node.module \node_page_default()
  3. 6.x modules/node/node.module \node_page_default()
  4. 7.x modules/node/node.module \node_page_default()

Menu callback; Generate a listing of promoted nodes.

1 string reference to 'node_page_default'
node_menu in modules/node/node.module
Implementation of hook_menu().

File

modules/node/node.module, line 2474
The core that allows content to be submitted to the site. Modules and scripts may programmatically submit nodes using the usual form API pattern.

Code

function node_page_default($arg = NULL) {

  // Prevent fallback to this page for node/*.
  if (isset($arg)) {
    return MENU_NOT_FOUND;
  }
  $result = pager_query(db_rewrite_sql('SELECT n.nid, n.sticky, n.created FROM {node} n WHERE n.promote = 1 AND n.status = 1 ORDER BY n.sticky DESC, n.created DESC'), variable_get('default_nodes_main', 10));
  if (db_num_rows($result)) {
    $feed_url = url('rss.xml', NULL, NULL, TRUE);
    drupal_add_feed($feed_url, variable_get('site_name', 'Drupal') . ' ' . t('RSS'));
    $output = '';
    while ($node = db_fetch_object($result)) {
      $output .= node_view(node_load($node->nid), 1);
    }
    $output .= theme('pager', NULL, variable_get('default_nodes_main', 10));
  }
  else {

    // Check for existence of admin account.
    $admin = db_result(db_query('SELECT uid FROM {users} WHERE uid = 1'));
    $default_message = t('<h1 class="title">Welcome to your new Drupal website!</h1><p>Please follow these steps to set up and start using your website:</p>');
    $default_message .= '<ol>';
    if (!$admin) {
      $default_message .= '<li>' . t('<strong>Create your administrator account</strong> To begin, <a href="@register">create the first account</a>. This account will have full administration rights and will allow you to configure your website.', array(
        '@register' => url('user/register'),
      )) . '</li>';
    }
    $default_message .= '<li>' . t('<strong>Configure your website</strong> Once logged in, visit the <a href="@admin">administration section</a>, where you can <a href="@config">customize and configure</a> all aspects of your website.', array(
      '@admin' => url('admin'),
      '@config' => url('admin/settings'),
    )) . '</li>';
    $default_message .= '<li>' . t('<strong>Enable additional functionality</strong> Next, visit the <a href="@modules">module list</a> and enable features which suit your specific needs. You can find additional modules in the <a href="@download_modules">Drupal modules download section</a>.', array(
      '@modules' => url('admin/build/modules'),
      '@download_modules' => 'http://drupal.org/project/Modules',
    )) . '</li>';
    $default_message .= '<li>' . t('<strong>Customize your website design</strong> To change the "look and feel" of your website, visit the <a href="@themes">themes section</a>. You may choose from one of the included themes or download additional themes from the <a href="@download_themes">Drupal themes download section</a>.', array(
      '@themes' => url('admin/build/themes'),
      '@download_themes' => 'http://drupal.org/project/Themes',
    )) . '</li>';
    $default_message .= '<li>' . t('<strong>Start posting content</strong> Finally, you can <a href="@content">create content</a> for your website. This message will disappear once you have promoted a post to the front page.', array(
      '@content' => url('node/add'),
    )) . '</li>';
    $default_message .= '</ol>';
    $default_message .= '<p>' . t('For more information, please refer to the <a href="@help">help section</a>, or the <a href="@handbook">online Drupal handbooks</a>. You may also post at the <a href="@forum">Drupal forum</a>, or view the wide range of <a href="@support">other support options</a> available.', array(
      '@help' => url('admin/help'),
      '@handbook' => 'http://drupal.org/handbooks',
      '@forum' => 'http://drupal.org/forum',
      '@support' => 'http://drupal.org/support',
    )) . '</p>';
    $output = '<div id="first-time">' . $default_message . '</div>';
  }
  drupal_set_title('');
  return $output;
}