1060, ); } static function update() { Updater::updateDatabase(__FILE__, self::getSql()); try { self::migrateConfigSuperUserToDb(); } catch (\Exception $e) { throw new UpdaterErrorException($e->getMessage()); } } private static function migrateConfigSuperUserToDb() { $config = \Piwik\Config::getInstance(); $superUser = $config->superuser; if (empty($superUser)) { throw new UpdaterErrorException('Unable to migrate superUser to database. Entry in config is missing.'); } $userApi = UsersManagerApi::getInstance(); Db::get()->insert(Common::prefixTable('user'), array( 'login' => $superUser['login'], 'password' => $superUser['password'], 'alias' => $superUser['login'], 'email' => $superUser['email'], 'token_auth' => $userApi->getTokenAuth($superUser['login'], $superUser['password']), 'date_registered' => Date::now()->getDatetime(), 'superuser_access' => 1 ) ); if (array_key_exists('salt', $superUser)) { $salt = $superUser['salt']; } else { $salt = Common::generateUniqId(); } $config->General['salt'] = $salt; $config->superuser = array(); $config->forceSave(); } }