$Install = new Install($Database); $Tools = new Tools($Database); $Result = new Result(); # verify that user is logged in $User->check_user_session(); # admin user is required $User->is_admin(true); # try to upgrade database if ($Install->upgrade_database() === true) { # print success $Result->show("success", _("Database upgraded successfully! <a class='btn btn-sm btn-default' href='" . create_link('dashboard') . "'>Dashboard</a>"), false); # migrate settings $User->migrate_domain_settings(); $User->migrate_ldap_settings(); # check for possible errors if (sizeof($errors = $Tools->verify_database()) > 0) { $esize = sizeof($errors['tableError']) + sizeof($errors['fieldError']); print '<div class="alert alert-danger">' . "\n"; # print table errors if (isset($errors['tableError'])) { print '<strong>' . _('Missing table') . 's:</strong>' . "\n"; print '<ul class="fix-table">' . "\n"; foreach ($errors['tableError'] as $table) { print '<li>' . $table . '</li>' . "\n"; } print '</ul>' . "\n"; } # print field errors if (isset($errors['fieldError'])) { print '<strong>' . _('Missing fields') . ':</strong>' . "\n"; print '<ul class="fix-field">' . "\n";
/** * Script to verify database structure * * should be used from CLI in case login is impossible * ****************************************/ # functions require_once dirname(__FILE__) . '/../functions.php'; # Classes $Database = new Database_PDO(); $Tools = new Tools($Database); # title print "\n" . 'Database structure verification' . "\n--------------------\n"; # check for errors $errors = $Tools->verify_database(); # print result if (!isset($errors['tableError']) && !isset($errors['fieldError'])) { print 'All tables and fields are installed properly' . "\n"; } else { # missing tables if (isset($errors['tableError'])) { print 'Missing tables:' . "\n"; foreach ($errors['tableError'] as $table) { print " - " . $table . "\n"; } } # missing fields if (isset($errors['fieldError'])) { print "\n" . 'Missing fields' . "\n"; foreach ($errors['fieldError'] as $table => $field) {