PDA

Zobacz pełną wersję : PA - dynamicznie generowane listy rozwijane



ZZi
20-01-2013, 11:21
Witam serdecznie

Jestem po modyfikacji profilu użytkownika, wobec czego musiałem też zmodyfikować panel administracyjny. Podczas zakładania konta dodałem dodatkową listę rozwijaną (przy użyciu plików .xml), natomiast mam pewien problem, mianowicie pozycje na tej liście pochodzą z zewnętrznego źródła i powinny być generowane dynamicznie. Zastanawiam się na jakim etapie (a konkretniej, w którym pliku) istnieje możliwość wygenerowania kodu odpowiadającego za owe pozycje, w miarę możliwości, jeśli ktoś już takie rozwiązanie wprowadził, prosiłbym o przykładowy kod php.

Pozdrawiam
ZZi

zwiastun
20-01-2013, 17:30
O czym piszesz i do kogo?
Przeczytaj to sobie jeszcze raz: w skrócie jest coś takiego: "porobiłem sobie ble ble w kodzie, powie mi ktoś, jak zrobić, żeby działało?"

ZZi
20-01-2013, 19:58
Ok, raz jeszcze:

W panelu administracyjnym Joomla! w wersji 1.5 mamy w menu pozycję "Witryna" -> "Użytkownicy", gdzie możemy zarządzać użytkownikami - w tym dodać ręcznie użytkownika.

W szczegółach użytkownika pozwoliłem sobie dodać listę rozwijaną:
6284

Natomiast pozycje, które zawiera, znajdują się w plikach .xml odpowiedzialnych za budowanie interfejsu tej podstrony.

W związku z tym zastanawiam się jak mogę, zamiast statycznie skonfigurowanej listy pozycji, stworzyć taką listę (dopisać jej pozycje) dynamicznie na podstawie danych z pliku .txt, który jest generowany przez aplikację zewnętrzną.

ZZi
21-01-2013, 22:28
Niestety nie jestem w stanie wyedytować powyższej wiadomości..

Udało mi się uzyskać póki co coś takiego:


<?phpdefined('JPATH_BASE') or die();
class JElementKlasa extends JElement { var $_name = 'Klasa';
function fetchElement($name, $value, &$node, $control_name) {
$list = array(1=>'a', 2=>'b');
$options = array();

foreach($list as $key=>$value)
array_unshift($options, JHTML::_('select.option', $key, $value));

return JHTML::_('select.genericlist', $options, $control_name.$name, NULL, 'value', 'text', $value, $control_name .'['. $name .']');
}
} ?>
(lista opcji testowa)

w pliku user.xml natomiast:

<url addpath="/administrator/components/com_users/elements/">
<param name="class" type="klasa" default="" label="Klasa2" description="Klasa ucznia" >
<option value="wszystkie">Wszystkie Plany</option>
</param>
</url>

Niestety jedyne co mi się wyświetla to pusta przestrzeń na listę - sama ona jest natomiast pusta.

@EDIT

Fixed, proszę o zamknięcie tematu : )