Example #1
0
// ask user for config values:
$config->ask();
$path_koala = $config->get_entry("PATH_KOALA")->get_answer();
if (is_string($path_koala)) {
    $path_koala = rtrim($path_koala, "/") . "/";
    $config->get_entry("PATH_KOALA")->set_answer($path_koala);
}
$path_server = $config->get_entry("PATH_SERVER")->get_answer();
if (is_string($path_server)) {
    $path_server = rtrim($path_server, "/");
    $config->get_entry("PATH_SERVER")->set_answer($path_server);
}
$undocumented_configs = array();
// ignore unspecified settings that are installation-specific:
$ignore_unspecified = array("STEAM_FACULTIES_GROUP", "STEAM_COURSES_GROUP", "STEAM_PUBLIC_GROUP", "STEAM_PRIVATE_GROUP");
foreach ($config->get_undocumented_entries() as $entry) {
    if (in_array($entry->get_config_key(), $ignore_unspecified)) {
        continue;
    }
    if (is_string($entry->get_config_answer()) && $entry->get_config_answer() == $entry->get_default_answer()) {
        continue;
    }
    $undocumented_configs[] = $entry;
}
if (count($undocumented_configs) > 0) {
    output("\nThe following settings are missing or differing in your config:\n(Missing values are marked with an asterisk '*')\n");
    foreach ($undocumented_configs as $entry) {
        output((is_string($entry->get_config_answer()) ? "  " : "* ") . $entry->get_config_key() . " = " . $entry->get_config_answer() . " (default: " . $entry->get_default_answer() . ")\n");
    }
    $ask_continue = new ConfigEntry("continue", "YesNo", "\nDo you want to insert or change any of these?");
    if ($ask_continue->ask() == "yes") {