Beispiel #1
0
// list available updates
$cmd = new ReflectionClass('BasicModel');
$cmd = $cmd->getFileName();
$mods = AutoLoader::listModules('BasicModel');
$adds = 0;
$unknowns = 0;
$errors = 0;
echo '<ul>';
foreach ($mods as $class) {
    if ($class == 'ViewModel') {
        // just a helper subclass not an
        // actual structure
        continue;
    }
    $model = new $class(null);
    $db_name = InstallUtilities::normalizeDbName($model->preferredDB());
    if ($db_name === false) {
        echo '<li>Error: Unknown database "' . $model->preferredDB() . '" for model ' . $class;
        $errors++;
        continue;
    }
    ob_start();
    $changes = $model->normalize($db_name, BasicModel::NORMALIZE_MODE_CHECK);
    $details = ob_get_clean();
    if ($changes === false) {
        printf('<li>%s had errors.', $class);
        $errors++;
    } elseif ($changes > 0) {
        printf('<li>%s has updates available.', $class);
        $adds += $changes;
    } elseif ($changes < 0) {