Trap any errors that may occur when trying to install a new identity provider and then reinstall the current one.

This commit is contained in:
Tim Almdal
2010-01-22 13:38:05 -08:00
parent df313cac56
commit eabeeeb126
2 changed files with 43 additions and 24 deletions

View File

@@ -76,21 +76,24 @@ class Admin_Modules_Controller extends Admin_Controller {
continue;
}
$desired = Input::instance()->post($module_name) == 1;
if ($info->active && !$desired && module::is_active($module_name)) {
$changes->deactivate[] = $module_name;
$deactivated_names[] = t($info->name);
module::deactivate($module_name);
} else if (!$info->active && $desired && !module::is_active($module_name)) {
$changes->activate[] = $module_name;
$activated_names[] = t($info->name);
if (module::is_installed($module_name)) {
module::upgrade($module_name);
} else {
module::install($module_name);
try {
$desired = Input::instance()->post($module_name) == 1;
if ($info->active && !$desired && module::is_active($module_name)) {
module::deactivate($module_name);
$changes->deactivate[] = $module_name;
$deactivated_names[] = t($info->name);
} else if (!$info->active && $desired && !module::is_active($module_name)) {
if (module::is_installed($module_name)) {
module::upgrade($module_name);
} else {
module::install($module_name);
}
module::activate($module_name);
$changes->activate[] = $module_name;
$activated_names[] = t($info->name);
}
module::activate($module_name);
} catch (Exception $e) {
Kohana_Log::add("error", (string)$e);
}
}