'French', 'pt_BR' => 'Portuguese (Brazil)', 'es' => 'Spanish', ]; // Test if database is already installed first. if ( _configTableCheck() ) { $result = db_query( "SELECT CONFIG_VALUE FROM config WHERE TITLE='LOGIN';" ); $config_login = db_fetch_row( $result ); if ( empty( $_POST['lang'] ) || ! in_array( $_POST['lang'], array_keys( $lang ) ) || $config_login['CONFIG_VALUE'] !== 'No' ) { die( 'Database already installed.' ); } if ( $DatabaseType === 'mysql' ) { // @since 10.2 MySQL fix character encoding when translating database db_query( "SET NAMES utf8mb4 COLLATE utf8mb4_unicode_520_ci" ); // @since 10.4.3 MySQL always use InnoDB (default), avoid MyISAM db_query( "SET default_storage_engine=InnoDB;" ); } $addons_sql = $rosariosis_sql = ''; $rosariosis_sql_file = 'rosariosis_' . $_POST['lang'] . '.sql'; $addons_sql_file = 'rosariosis_addons_' . $_POST['lang'] . '.sql'; // Translate Database. if ( file_exists( $rosariosis_sql_file ) ) { // Same translation files for both MySQL & PostgreSQL. $rosariosis_sql = file_get_contents( $rosariosis_sql_file ); if ( file_exists( $addons_sql_file ) ) { $addons_sql = _getAddonsSQL( $addons_sql_file ); } } if ( $rosariosis_sql ) { db_query( $rosariosis_sql ); } if ( $addons_sql ) { db_query( $addons_sql ); } die( 'Success: database translated. Access RosarioSIS' ); } $sql_file = $DatabaseType === 'mysql' ? 'rosariosis_mysql.sql' : 'rosariosis.sql'; if ( ! file_exists( $sql_file ) ) { die( 'Error: ' . $sql_file . ' file not found.' ); } $rosariosis_sql = file_get_contents( $sql_file ); if ( $DatabaseType === 'mysql' ) { // @since 10.0 Remove DELIMITER $$ declarations before procedures or functions. $rosariosis_sql = MySQLRemoveDelimiter( $rosariosis_sql ); // @since 10.5 MySQL change database charset to utf8mb4 and collation to utf8mb4_unicode_520_ci db_query( "ALTER DATABASE " . DBEscapeIdentifier( $DatabaseName ) . " CHARACTER SET 'utf8mb4' COLLATE 'utf8mb4_unicode_520_ci'" ); } db_query( $rosariosis_sql ); if ( filter_var( $RosarioNotifyAddress, FILTER_VALIDATE_EMAIL ) ) { // @since 11.1 Set email for default admin user so he can reset his password db_query( "UPDATE staff SET EMAIL='" . DBEscapeString( $RosarioNotifyAddress ) . "' WHERE USERNAME='admin';" ); } if ( file_exists( 'rosariosis_addons.sql' ) ) { // @since 5.1 Install add-ons. // Same add-ons file for both MySQL & PostgreSQL. $addons_sql = _getAddonsSQL( 'rosariosis_addons.sql' ); db_query( $addons_sql ); } ?>