function joomla_admin_settings in Joomla to Drupal 7.2
Same name and namespace in other branches
- 5 joomla.module \joomla_admin_settings()
- 6 joomla.module \joomla_admin_settings()
- 7 joomla.module \joomla_admin_settings()
Joomla admin settings.
1 string reference to 'joomla_admin_settings'
- joomla_menu in ./
joomla.module - Implements hook_menu().
File
- ./
joomla.module, line 92 - The joomla module used for migrate Joomla to Drupal.
Code
function joomla_admin_settings($form, &$form_state) {
// only administrators can access this function
$weight = -20;
$bundle = variable_get('joomla_default_static_nodetype', JOOMLA_DEFAULT_STATIC_NODETYPE);
// Generate the form - settings applying to all patterns first
$form['joomla_import_settings'] = array(
'#type' => 'fieldset',
'#weight' => $weight,
'#title' => t('Import defaults'),
'#collapsible' => FALSE,
'#collapsed' => FALSE,
'#description' => 'Set the default values for the ' . l('Import from Joomla', 'admin/content/joomla_import') . ' form',
);
$form['joomla_import_settings'][] = joomla_import_form_checkboxes();
$weight++;
$form['joomla_settings_database'] = array(
'#type' => 'fieldset',
'#weight' => $weight,
'#title' => t('Joomla settings'),
'#collapsible' => TRUE,
'#collapsed' => FALSE,
);
$form['joomla_settings_database']['joomla_database_host'] = array(
'#type' => 'textfield',
'#title' => 'Joomla database host name',
'#default_value' => variable_get('joomla_database_host', JOOMLA_DATABASE_HOST),
'#description' => 'Host name of Joomla database server.',
);
$form['joomla_settings_database']['joomla_database_name'] = array(
'#type' => 'textfield',
'#title' => 'Joomla database name',
'#default_value' => variable_get('joomla_database_name', JOOMLA_DATABASE_NAME),
'#description' => 'Joomla database name.',
);
$form['joomla_settings_database']['joomla_database_user'] = array(
'#type' => 'textfield',
'#title' => 'Joomla database user name',
'#default_value' => variable_get('joomla_database_user', JOOMLA_DATABASE_USER),
'#description' => 'User name for Joomla database server.',
);
$form['joomla_settings_database']['joomla_database_pass'] = array(
'#type' => 'textfield',
'#title' => 'Joomla database password',
'#default_value' => variable_get('joomla_database_pass', JOOMLA_DATABASE_PASS),
'#description' => 'Password for Joomla database server.',
);
$form['joomla_settings_database']['advanced'] = array(
'#type' => 'fieldset',
'#title' => t('Advanced database settings'),
'#collapsible' => TRUE,
'#collapsed' => TRUE,
);
$form['joomla_settings_database']['advanced']['joomla_database_port'] = array(
'#type' => 'textfield',
'#title' => 'Joomla database port number',
'#default_value' => variable_get('joomla_database_port', JOOMLA_DATABASE_PORT),
'#description' => 'Port number for Joomla database server. The default (3306) is usually fine.',
);
$form['joomla_settings_database']['advanced']['joomla_prefix'] = array(
'#type' => 'textfield',
'#title' => 'Table Prefix of Joomla',
'#default_value' => variable_get('joomla_prefix', JOOMLA_PREFIX),
'#description' => 'Table Prefix for Joomla tables.',
);
$form['joomla_settings_database']['joomla_path'] = array(
'#type' => 'textfield',
'#title' => 'Path of your Joomla installation',
'#default_value' => variable_get('joomla_path', JOOMLA_PATH),
'#description' => 'The path name where you install Joomla. Example:<br />' . '<ul><li>Apache: <b>/home/YOUR_USERNAME/public_html/joomla</b></li>' . '<li>Windows using WAMP: <b>c:/wamp/www/joomla</b></li>' . '<li>Windows using IIS: <b>C:/Inetpub/wwwroot/joomla</b></li></ul>',
);
$weight++;
$form['joomla_settings_content'] = array(
'#type' => 'fieldset',
'#weight' => $weight,
'#title' => t('Content settings'),
'#collapsible' => TRUE,
'#collapsed' => FALSE,
);
$filter_node_options = array();
foreach (node_type_get_types() as $key => $val) {
if (node_access('create', $key)) {
$filter_node_options[$key] = $val->name;
}
}
$form['joomla_settings_content']['joomla_default_static_nodetype'] = array(
'#type' => 'select',
'#title' => t('Default node type for static items'),
'#required' => TRUE,
'#options' => $filter_node_options,
'#default_value' => $bundle,
);
$form['joomla_settings_content']['joomla_default_blog_nodetype'] = array(
'#type' => 'select',
'#title' => t('Default node type for content items'),
'#required' => TRUE,
'#options' => $filter_node_options,
'#default_value' => variable_get('joomla_default_blog_nodetype', JOOMLA_DEFAULT_BLOG_NODETYPE),
);
$lang_options = language_list();
$langs['und'] = 'None (undefined)';
foreach ($lang_options as $code => $lang) {
$langs[$code] = $lang->name;
}
$form['joomla_settings_content']['joomla_default_language'] = array(
'#type' => 'select',
'#title' => t('Language to import your content to'),
'#required' => TRUE,
'#options' => $langs,
'#default_value' => variable_get('joomla_default_language', LANGUAGE_NONE),
);
$formats = array();
foreach (filter_formats() as $key => $format) {
$formats[$key] = $format->name;
}
$form['joomla_settings_content']['joomla_input_format'] = array(
'#type' => 'select',
'#title' => t('Input Format'),
'#default_value' => variable_get('joomla_input_format', JOOMLA_INPUT_FORMAT),
'#options' => $formats,
'#description' => t('The filter format selected below will be applied to all imported content and comments.'),
);
$form['joomla_settings_content']['joomla_img_folder'] = array(
'#type' => 'textfield',
'#title' => 'Image/Picture folder',
'#default_value' => variable_get('joomla_img_folder', JOOMLA_IMG_FOLDER),
'#description' => "A folder to save any images from Joomla contents. This folder related to Drupal 'files' folder, i.e: if you enter '<b>images</b>' then all imported images will be save to Drupal '<b>files/images</b>'.",
);
if ((bool) db_query_range('SELECT 1 FROM {joomla_categories}', 0, 1)
->fetchField()) {
db_set_active('joomla');
foreach (field_info_instances('node', $bundle) as $field_name => $field) {
$node_fields[$field_name] = $field['label'];
}
$vocabularies = taxonomy_vocabulary_load_multiple(FALSE);
foreach ($vocabularies as $vocabulary) {
$form['joomla_settings_content']['joomla_field_' . $vocabulary->machine_name] = array(
'#type' => 'select',
'#title' => t('Field to store @name associations', array(
'@name' => $vocabulary->name,
)),
'#options' => $node_fields,
'#empty_value' => FALSE,
'#default_value' => variable_get('joomla_field_' . $vocabulary->machine_name, JOOMLA_REAL_NAME_FIELD),
);
}
}
$weight++;
$form['joomla_settings_user'] = array(
'#type' => 'fieldset',
'#weight' => $weight,
'#title' => t('User settings'),
'#collapsible' => TRUE,
'#collapsed' => FALSE,
);
$user_fields = array();
foreach (field_info_instances('user', 'user') as $field_name => $field) {
$user_fields[$field_name] = $field['label'];
}
$form['joomla_settings_user']['joomla_real_name_field'] = array(
'#type' => 'select',
'#title' => t('Field to use to import user Real Name to'),
'#options' => $user_fields,
'#empty_value' => FALSE,
'#default_value' => variable_get('joomla_real_name_field', JOOMLA_REAL_NAME_FIELD),
);
return system_settings_form($form);
}