function node_type_delete_confirm

Menu callback; delete a single content type.

Related topics

1 string reference to 'node_type_delete_confirm'
node_menu in modules/node/node.module
Implements hook_menu().

File

modules/node/content_types.inc, line 415

Code

function node_type_delete_confirm($form, &$form_state, $type) {
    $form['type'] = array(
        '#type' => 'value',
        '#value' => $type->type,
    );
    $form['name'] = array(
        '#type' => 'value',
        '#value' => $type->name,
    );
    $message = t('Are you sure you want to delete the content type %type?', array(
        '%type' => $type->name,
    ));
    $num_nodes = db_query("SELECT COUNT(*) FROM {node} WHERE type = :type", array(
        ':type' => $type->type,
    ))
        ->fetchField();
    if ($num_nodes) {
        drupal_set_title($message, PASS_THROUGH);
        $caption = '<p>' . format_plural($num_nodes, '%type is used by 1 piece of content on your site. You cannot remove this content type until you have removed all of the %type content.', '%type is used by @count pieces of content on your site. You cannot remove this content type until you have removed all of the %type content.', array(
            '%type' => $type->name,
        )) . '</p>';
        $form['description'] = array(
            '#markup' => $caption,
        );
        return $form;
    }
    $caption = '<p>' . t('This action cannot be undone.') . '</p>';
    return confirm_form($form, $message, 'admin/structure/types', $caption, t('Delete'));
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.