function xbbcode_enable in Extensible BBCode 7
Implements hook_enable().
File
- ./
xbbcode.install, line 92 - Installation actions and database schema.
Code
function xbbcode_enable() {
// Check if a format with a different internal name is already called BBCode.
$bbcode_exists = db_query_range('SELECT 1 FROM {filter_format} WHERE name = :name AND format != :format', 0, 1, array(
':name' => 'BBCode',
':format' => 'xbbcode',
))
->fetchField();
$format = (object) array(
'format' => 'xbbcode',
'name' => $bbcode_exists ? 'Extensible BBCode' : 'BBCode',
'weight' => -10,
'filters' => array(
'filter_html_escape' => array(
'weight' => 0,
'status' => 1,
),
'xbbcode' => array(
'weight' => 1,
'status' => 1,
),
'filter_autop' => array(
'weight' => 2,
'status' => 1,
),
),
);
filter_format_save($format);
$permission = filter_permission_name($format);
user_role_grant_permissions(DRUPAL_ANONYMOUS_RID, array(
$permission,
));
user_role_grant_permissions(DRUPAL_AUTHENTICATED_RID, array(
$permission,
));
drupal_set_message(t('A <a href="@url">BBCode</a> text format has been created. All users have access to it.', array(
'@url' => url('admin/config/content/formats/' . $format->format),
)));
}