Skocz do zawartości
"Idzie nowe..." - o zmianach i nie tylko ×
Przeniesienie zakupów z IPS Marketplace / Moving bought items from IPS Marketplace ×

Rekomendowane odpowiedzi

  • Manager
Opublikowano

Jeśli z jakiś względów chcesz umożliwić gościom zmianę języka postępuj wg poniższej instrukcji.

Otwórz plik: index.php

Znajdź:

//--------------------------------
// Did we choose a language?
//--------------------------------

if ( (isset($ipsclass->input['setlanguage']) AND $ipsclass->input['setlanguage']) AND (isset($ipsclass->input['langid']) AND $ipsclass->input['langid']) AND $ipsclass->member['id'] )
{
if ( is_array( $ipsclass->cache['languages'] ) and count( $ipsclass->cache['languages'] ) )
{
	foreach( $ipsclass->cache['languages'] as $data )
	{
		if ( $data['ldir'] == $ipsclass->input['langid'] )
		{
			$ipsclass->DB->do_update( 'members', array( 'language' => $data['ldir'] ), 'id='.$ipsclass->member['id'] );
			$ipsclass->member['language'] = $data['ldir'];
		}
	}
}
}

Zamień na:

//--------------------------------
// Did we choose a language?
//--------------------------------

if ( (isset($ipsclass->input['setlanguage']) AND $ipsclass->input['setlanguage']) AND (isset($ipsclass->input['langid']) AND $ipsclass->input['langid']) )
{
if ( is_array( $ipsclass->cache['languages'] ) and count( $ipsclass->cache['languages'] ) )
{
	foreach( $ipsclass->cache['languages'] as $data )
	{
		if ( $data['ldir'] == $ipsclass->input['langid'] )
		{
			if( $ipsclass->member['id'] == 0 )
			{

				$ipsclass->my_setcookie( 'language', $data['ldir'] );
			}
			else
			{
				$ipsclass->DB->do_update( 'members', array( 'language' => $data['ldir'] ), 'id='.$ipsclass->member['id'] );
			}

			$ipsclass->member['language'] = $data['ldir'];
		}
	}
}
}

Zapisz i wyślij.

Otwórz plik: sources/ipsclass.php

Znajdź:

$this->lang_id = isset($this->member['language']) ? $this->member['language'] : $this->vars['default_language'];

Dodaj powyżej:

			if( $this->member['id'] == 0 )
		{
			$this->member['language'] = $this->my_getcookie( 'language' );
		}

Zapisz i wyślij.

Otwórz plik: sources/classes/class_display.php

Znajdź:

		//-----------------------------------------
	// Showing skin jump?
	//-----------------------------------------

	if ( $this->ipsclass->member['id'] > 0 )
	{
		$lang_jump = $this->ipsclass->compiled_templates['skin_global']->global_lang_chooser( $this->_build_language_list() );
	}
	else
	{
		$lang_jump = "";
	}

Zamień na:

		//-----------------------------------------
	// Showing skin jump?
	//-----------------------------------------


	$lang_jump = $this->ipsclass->compiled_templates['skin_global']->global_lang_chooser( $this->_build_language_list() );

Zapisz i wyślij.

Zobacz także:

intermedia - profesjonalne rozwiązania Invision Power Board

---

Chcesz uzyskać szybko i sprawnie pomoc? Uzupełnij wersję i adres w profilu.

  • 1 rok później...
Opublikowano

Hmm, mam problem ze zmianą języka dla gości... Skorzystałem z tutoriala: http://forum.invisionize.pl/topic/294-gocie-mog-zmienia-jzyk/

Problem w tym, ze po zmianie langu jako gość nic się nie dzieje, odswieża tylko strone ze starym langiem. Gdy wybiore ten sam lang po raz drugi, wtedy jest ok, gdy chce wrócić np z ENG na PL to musze wybrać odwrotnie, czyli 2x PL....

Po jednokrotnym wybraniu langa i wcisnieciem ctrl+r pojawia sie wybrany lang. Ale to nie załatwia sprawy bo ctrl+r to tylko wczytanie strony z pominieciem cachu przegladarki czy jakoś tak..

W czym mam kłopot? Wszystko zrobiłem idealnie wg tutoriala.

  • Manager
Opublikowano

Połączyłem Twój nowy temat z tutorialem - na przyszłość pisz tam gdzie jest 'źródło' Twoich pytań. :)

Tak, kiedyż już ktoś to zgłaszał. Spróbuj jeszcze to: Możliwość zmiany języka dla gości.

  • Lubię to 1

intermedia - profesjonalne rozwiązania Invision Power Board

---

Chcesz uzyskać szybko i sprawnie pomoc? Uzupełnij wersję i adres w profilu.

Opublikowano

Sorry, myślałem gdzie to wsadzić, wydawało mi sie, ze w tutorialach nie powinno sie pisać.

Ok, spróbuje tamtego. Dzieki za info.

Jeszcze co do tego tutoriala, faktycznie z nim jest coś nie tak bo sprawdzałem to na trzech przegladarkach i sprawdzał też załogant forum i to samo, trzeba wybrać lang 2x.

Po zalogowaniu sie nie ma już kłopotu, wchodzi lang za pierwszym razem.

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Umieściliśmy na Twoim urządzeniu pliki cookie, aby pomóc Ci usprawnić przeglądanie strony. Możesz dostosować ustawienia plików cookie, w przeciwnym wypadku zakładamy, że wyrażasz na to zgodę.