Picker dla danych i silnik templateów

0

Cześć, zastanawiam się, jak zrobić prawidłowo takiego pickera do pobierania różnych danych. Chodzi mi o coś takiego, jak jest np. w phpBB, że jest link "Znajdź użytkownika", po czym pojawia się okno popup z listą użytkowników. I każdy ma np. obok nicku link: "wybierz". Po kliknięciu na ten link, nazwa użytkownika pojawia się w polu okna openera.

Niby wszystko jest proste, bo mamy w js:
window.open i opener.

Problem polega na tym, że posługuję się silnikiem szablonów (Twig), w związku z czym raczej nie powinienem używać window.open, tylko pokazywać strony za pomocą tegoż silnika. Przeglądałem sobie kody phpbb, niestety nie znalazłem sposobu, w jaki oni to robią.

Czy ktoś może mi w tym pomóc?

0

Czy silnik szablonów eliminuje możliwość użycia javascript? :/
Wstawiasz window.open (albo inną funkcję, do czegoś w DHTML), a treść tego okna też generujesz z systemu szablonów.

0

No właśnie nie potrafię sobie tego wyobrazić. To pewnie jest banalne i nie znalazłem nic w necie na ten temat albo źle szukałem. Ale patrz. Żeby wyświetlić stronę, to jest metoda render lub display. Różnica jest taka:

echo $twig->render('strona.html', $variables_array);
$twig->display('strona.html', $variables_array);

Czyli przy metodzie render posługujesz się echo, a przy display nie. Ale nie mogę sobie wyobrazić, jak tutaj wykorzystać window.open. Przeglądając kody phpBB, nie znalazłem niczego, co by mnie naprowadziło na dobrą drogę.

A może coś w stylu:

echo "window.open('', '', 'width=200;height=200'); document.write('".$twig.render('strona.html', $variables_array)."');";

To ma sens i prawo działać? A może za bardzo kombinuję? Wypróbuję, jak wrócę do domu.

[dopisane]
OK, przekombinowałem.

window.open('strona.php', ...);

to takie oczywiste, że aż boli, a ja się doszukiwałem jakiejś wyższej filozofii :/

1 użytkowników online, w tym zalogowanych: 0, gości: 1