coder_upgrade_conversions_form_submit($form, &$form_state)Submit handler for the module conversion form.
Execute the selected module conversion code on the selected file types in the selected directories or modules.
sites/all/modules/coder/coder_upgrade/coder_upgrade.module, line 349
<?php
function coder_upgrade_conversions_form_submit($form, &$form_state) {
// Rebuild form with user selections.
$form_state['rebuild'] = TRUE;
// Gather the submitted parameters.
list($upgrades, $extensions, $directories, $modules) = coder_upgrade_selections($form_state['values']);
// TODO Cache this list so we don't have to query all the files again.
$upgrades_all = _coder_upgrade_upgrades(TRUE);
foreach ($upgrades as $prefix => $upgrade) {
$upgrades[$prefix] = array(
'prefix' => $prefix,
'routines' => $upgrades_all[$prefix]['routines'],
);
}
$old_dir = file_directory_path() . '/' . variable_get('coder_upgrade_dir_old', DEADWOOD_OLD) . '/';
$new_dir = file_directory_path() . '/' . variable_get('coder_upgrade_dir_new', DEADWOOD_NEW) . '/';
// Combine directory and module items into a single list.
// Omit name from key so as to allow for duplicate names.
// TODO Handle duplicate names when making new conversion directories.
// Could intersect keys in $directories, $modules; then add counter suffix to new_dir???
// Use global counter??? Or copy $directories to files/dirs and $modules to files/modules???
$items = array();
foreach ($directories as $key => $directory) {
$items[] = array(
'name' => $key,
'old_dir' => $old_dir . $key,
'new_dir' => $new_dir . $key,
);
}
$rows = coder_upgrade_module_list();
foreach ($modules as $key => $module) {
if (isset($rows[$key])) {
$row = $rows[$key];
$items[] = array(
'name' => $key,
'old_dir' => $row['dir'],
'new_dir' => $new_dir . $key,
);
}
}
// Apply conversion functions.
if (coder_upgrade_start($upgrades, $extensions, $items)) {
drupal_set_message(t('Module conversion code was run.'));
drupal_set_message(t('Click to view the !log.', array('!log' => l(t('conversion log file'), coder_upgrade_log_path()))));
drupal_set_message(t('Patch files may be viewed by clicking on Name links in the Directories and Modules tabs below.'));
}
else {
drupal_set_message(t('Module conversion code was not run.'), 'error');
}
}
?>