New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Installer step 5 umlauts bug #4453

Closed
wintstar opened this Issue Dec 31, 2017 · 13 comments

Comments

Projects
None yet
3 participants
@wintstar

wintstar commented Dec 31, 2017

Last Pull request:
#4445

Forum version: SMF 2.1 Beta 4 (more detailed)
Current SMF version: SMF 2.1 Beta 3
GD version: bundled (2.1.0 compatible)
MySQLi engine: MariaDB
MySQLi version: 10.1.25-MariaDB
Alternative PHP Cache: 5.1.2
PHP: 7.1.11 (more detailed)
Server version: Apache/2.4.29 (Win32) OpenSSL/1.0.2l PHP/7.1.11
Browser: Chrome Version 63.0.3239.108 (64-Bit)

Step 1 to 4 have the charset utf-8. But step 5 have charset ISO-8859-1. That makes the bug with the German umlauts. The German language files correspond to the file encoding utf-8.

umlauts_bug_installer

@albertlast

This comment has been minimized.

Show comment
Hide comment
@albertlast

albertlast Jan 1, 2018

Collaborator

Since the german translate didn't exists official i had to ask that you try the change directly by your side:
go to SMF2.1\Themes\default\languages\Install.german.php and edit here the
$txt['lang_character_set'] = 'ISO-8859-1';
to
$txt['lang_character_set'] = 'UTF-8';

Collaborator

albertlast commented Jan 1, 2018

Since the german translate didn't exists official i had to ask that you try the change directly by your side:
go to SMF2.1\Themes\default\languages\Install.german.php and edit here the
$txt['lang_character_set'] = 'ISO-8859-1';
to
$txt['lang_character_set'] = 'UTF-8';

@wintstar

This comment has been minimized.

Show comment
Hide comment
@wintstar

wintstar Jan 1, 2018

It's not the language file. This already contains charset utf-8. If the language file was wrongly encoded, why is the bug only in step 5? And why is the charset in step 5 ISO-8859-1 and in the other steps 1-4 utf-8?

// These should be the same as those in index.language.php.
$txt['lang_character_set'] = 'UTF-8';

There is this umlauts bug only in the installer at step 5, nowhere else. Download the language pack and check it out. Download link, look at the first post.

wintstar commented Jan 1, 2018

It's not the language file. This already contains charset utf-8. If the language file was wrongly encoded, why is the bug only in step 5? And why is the charset in step 5 ISO-8859-1 and in the other steps 1-4 utf-8?

// These should be the same as those in index.language.php.
$txt['lang_character_set'] = 'UTF-8';

There is this umlauts bug only in the installer at step 5, nowhere else. Download the language pack and check it out. Download link, look at the first post.

@albertlast

This comment has been minimized.

Show comment
Hide comment
@albertlast

albertlast Jan 1, 2018

Collaborator

Possible issue could be that he take the english language file,
you could check this by editing the english file also and set in the index and install language file to UTF-8

Collaborator

albertlast commented Jan 1, 2018

Possible issue could be that he take the english language file,
you could check this by editing the english file also and set in the index and install language file to UTF-8

@wintstar

This comment has been minimized.

Show comment
Hide comment
@wintstar

wintstar Jan 1, 2018

Yes, this fixes the bug. I have changed the character set in the index_english and install_english to utf-8.

wintstar commented Jan 1, 2018

Yes, this fixes the bug. I have changed the character set in the index_english and install_english to utf-8.

@albertlast

This comment has been minimized.

Show comment
Hide comment
@albertlast

albertlast Jan 1, 2018

Collaborator

I already open a issue with the question why we use iso-8895-1 on the english language file #4454,
lets take this issue with "key" issue that somehow the used language file is changed in the middle of the road.

Collaborator

albertlast commented Jan 1, 2018

I already open a issue with the question why we use iso-8895-1 on the english language file #4454,
lets take this issue with "key" issue that somehow the used language file is changed in the middle of the road.

@albertlast

This comment has been minimized.

Show comment
Hide comment
@albertlast

albertlast Jan 1, 2018

Collaborator

I provided a pr with the fix,
feel free to test this.
#4457

Collaborator

albertlast commented Jan 1, 2018

I provided a pr with the fix,
feel free to test this.
#4457

@wintstar

This comment has been minimized.

Show comment
Hide comment
@wintstar

wintstar Jan 1, 2018

I provided a pr with the fix,
feel free to test this.

I have changed the character set in the index_english and install_english to ISO-8895-1. Your fix not work. In the header is the charset ISO-8895-1.

wintstar commented Jan 1, 2018

I provided a pr with the fix,
feel free to test this.

I have changed the character set in the index_english and install_english to ISO-8895-1. Your fix not work. In the header is the charset ISO-8895-1.

@albertlast

This comment has been minimized.

Show comment
Hide comment
@albertlast

albertlast Jan 1, 2018

Collaborator

your are 100% sure that you apply this changes to the install.php which is directly in your root and not this one in the "other" dictory?

Collaborator

albertlast commented Jan 1, 2018

your are 100% sure that you apply this changes to the install.php which is directly in your root and not this one in the "other" dictory?

@wintstar

This comment has been minimized.

Show comment
Hide comment
@wintstar

wintstar Jan 1, 2018

I made the change as in their fix

	// And now include the actual language file itself.
	require_once(dirname(__FILE__) . '/Themes/default/languages/' . $_SESSION['installer_temp_lang']);

	// Which language we load? And also assume that he like his language.
	preg_match('~^Install\.(.+[^-utf8])\.php$~', $_SESSION['installer_temp_lang'], $matches);
	$user_info['language'] = $matches[1];
}

wintstar commented Jan 1, 2018

I made the change as in their fix

	// And now include the actual language file itself.
	require_once(dirname(__FILE__) . '/Themes/default/languages/' . $_SESSION['installer_temp_lang']);

	// Which language we load? And also assume that he like his language.
	preg_match('~^Install\.(.+[^-utf8])\.php$~', $_SESSION['installer_temp_lang'], $matches);
	$user_info['language'] = $matches[1];
}

@wintstar wintstar closed this Jan 1, 2018

@albertlast

This comment has been minimized.

Show comment
Hide comment
@albertlast

albertlast Jan 1, 2018

Collaborator

I assume that your want to say with the close that the fix is working,
this is nice.
But please keep the issue open until the pr is merged (it's get closed automaticly)

Collaborator

albertlast commented Jan 1, 2018

I assume that your want to say with the close that the fix is working,
this is nice.
But please keep the issue open until the pr is merged (it's get closed automaticly)

@wintstar

This comment has been minimized.

Show comment
Hide comment
@wintstar

wintstar Jan 1, 2018

Sorry was a false click. Is not fix.
I accidentally closed.

wintstar commented Jan 1, 2018

Sorry was a false click. Is not fix.
I accidentally closed.

@wintstar wintstar reopened this Jan 1, 2018

@albertlast

This comment has been minimized.

Show comment
Hide comment
@albertlast

albertlast Jan 1, 2018

Collaborator

Okay forgot to apply the changes to the global to install file in the other dict...
The pr is updated.

Collaborator

albertlast commented Jan 1, 2018

Okay forgot to apply the changes to the global to install file in the other dict...
The pr is updated.

@wintstar

This comment has been minimized.

Show comment
Hide comment
@wintstar

wintstar Jan 1, 2018

Now the fix #4457 works. Bug solved. Thanks.

wintstar commented Jan 1, 2018

Now the fix #4457 works. Bug solved. Thanks.

@Gwenwyfar Gwenwyfar added the Language label Jan 1, 2018

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment