Skocz do zawartości

Witamy na polskim forum Contao
Zarejestruj się teraz, aby skorzystać ze wszystkich funkcji forum. Kiedy się zalogujesz, będziesz mógł tworzyć tematy, pisać posty, rozdawać punkty reputacji, korzystać z prywatnych wiadomości i zarządzać swoim profilem. Jeśli posiadasz już konto, zaloguj się - w przeciwnym wypadku zarejestruj się już teraz!
Zdjęcie

obsługa języka w module


  • Proszę się zalogować aby odpowiedzieć
3 odpowiedzi na ten temat

#1
gutenbergus

gutenbergus

    Znawca

  • Zarejestrowani
  • PipPipPipPip
  • 189 postów
Pomóżcie proszę mam taki oto problem:

w config/config.php jest deklaracja modułu frontendu:
array_insert($GLOBALS['FE_MOD']['Hotele Diament'], 0, array
(
'HD_reservation' => 'ModuleHD_reservation'
));

mam plik ModuleHD_reservation.php
z definicją
protected $strTemplate = 'mod_HD_reservation';
oraz
plik templates/mod_HD_reservation.tpl


Pytanie brzmi
jak w template-cie wprowadzić wyświetlanie wersji językowej?

próbuję tak:
<? echo $GLOBALS['TL_LANG']['HD_reservation']['ArrivalDate']; ?>
w pliku: languages/pl/HD_reservation.php
jest
$GLOBALS['TL_LANG']['HD_reservation']['ArrivalDate'] = 'Data Przyjazdu';

Nie chce to działać, nic się nie pojawia. Co robię nie tak???
  • 0

#2
Kamil

Kamil

    Contao ambassador

  • Administratorzy
  • 1538 postów
  • Strona www:zobacz
  • LokalizacjaLidzbark Warminski
Dodaj w kodzie modułu:

$this->loadLanguageFile('HD_reservation');
Poza tym, nie powinieneś labeli umieszczać bezpośrednio w templatce, tylko przypisywać je w samym module:

// ModuleHD_reservation.php
$this->Template->arrivalDate = $GLOBALS['TL_LANG']['HD_reservation']['ArrivalDate'];
 
// mod_HD_reservation.tpl
<?php echo $this->Template->arrivalDate; ?>

  • 0

Codefog - Contao web development


#3
gutenbergus

gutenbergus

    Znawca

  • Zarejestrowani
  • PipPipPipPip
  • 189 postów
Kamilu dzięki, a jeszcze jedna kwestia

Jak dobrać się do danych zapisywanych przez checkboxa typu multi?

jak coś pozaznaczam to potem mam w polu rekordu takie coś:
a:8:{i:0;s:1:"4";i:1;s:1:"1";i:2;s:1:"3";i:3;s:1:"7";i:4;s:1:"5";i:5;s:1:"2";i:6;s:1:"6";i:7;s:1:"8";}

ja z tego wydobyć czy przesyłane np GET-em id=5 pasuje do zawartości tego pola? Zrobiłem najprostrzym sposobem WHERE id LIKE '%&%' ale nie w każdej sytuacji takie coś wystarczy. Jak to ugryźć?
  • 0

#4
Kamil

Kamil

    Contao ambassador

  • Administratorzy
  • 1538 postów
  • Strona www:zobacz
  • LokalizacjaLidzbark Warminski
Niestety będziesz musiał pobrać wszystkie rekordy i przefiltrować je w PHP. Przykład na tl_member - chcemy znaleźć wszystkich użytkowników, którzy są w grupie o ID 5:

 
<?php
 
$intGroup = 5; // szukana grupa
 
$arrMembers = array();
$objMembers = $this->Database->execute("SELECT * FROM tl_member");
 
while ($objMembers->next())
{
	$groups = deserialize($objMembers->groups);
 
	if (is_array($groups) && in_array($intGroup, $groups))
	{
		$arrMembers[] = $objMembers->row();
	}
}
 
print_r($arrMembers);
 
?>
 

  • 0

Codefog - Contao web development





1 użytkowników czyta ten temat

0 użytkowników, 1 gości, 0 anonimowych użytkowników