konto usunięte

Temat: Lista użytkowników

Poratujcie proszę, bo już zaczynam tracić nadzieję.

Potrzebuję wyciągnąć z eZ Publish'a listę użytkowników. Po prostu wyświetlić sobie na stronie w formie imię, nazwisko, email. Ni cholery nie daję rady.

Doszedłem do tego:


{def $UsersList = fetch('content', 'tree', hash('parent_node_id',510)}
<ul id="ListaUserow">
{foreach $UsersList as $user}
<li>{$user.i_tutaj_pewnie_nie_wiem_co_wpisać_bo_nic_nie_wyswietla}</li>
{/foreach}
</ul>


510 to id węzła, pod który podczepieni są interesujący mnie użytkownicy.
W przypadku węzłów ze zwykłym contentem listuje się bez problemów. Nie mam pojęcia dlaczego przy użytkownikach to nie działa. :/Edward Łuska edytował(a) ten post dnia 01.02.11 o godzinie 20:56
Radosław Kuchta

Radosław Kuchta Customer Success
Manager / Senior
Project Manager

Temat: Lista użytkowników

W węźle 510 są inne grupy czy bezpośrednio userzy?

Jeżeli userzy, to może być kwestia uprawnień. Zauważ, że drzewo użytkowników nie jest w sekcji "standard", a więc użytkownicy anonimowi nie zobaczą tego co zwraca Ci funkcja fetch.

i_tutaj_pewnie_nie_wiem_co_wpisać_bo_nic_nie_wyswietla = może być "name" :)

konto usunięte

Temat: Lista użytkowników

510 to grupa użytkowników. Niżej są już tylko userzy.
Name nie wyświetla niestety nic.

A jak przeskoczyć tę kwestię uprawnień? Zalogowanie się jako administrator nie pomogło. ;)
Radosław Kuchta

Radosław Kuchta Customer Success
Manager / Senior
Project Manager

Temat: Lista użytkowników

Edward Łuska:
A jak przeskoczyć tę kwestię uprawnień? Zalogowanie się jako administrator nie pomogło. ;)

Jako admin powinieneś widzieć wszystko.
Przede wszystkim:

1. W kodzie masz błąd - niedomknięty nawias (to pewnie przyczyna).
2. Takie błędy łatwo wyłapać gdy masz włączony debug
3. Aby zrobić inspekcję zmiennej UsersList wywołaj {$UsersList|attribute(show,1)}

Obstawiam, że przyczyną niedziałania jest błąd składni :)

konto usunięte

Temat: Lista użytkowników

Hehe! Przed domknięciem nawiasu generował mi stronę, tyle że bez userów. Po domknięciu wywala fatal error. :D
Obadam co się dzieje i zobaczymy co z tego wyjdzie. :)

konto usunięte

Temat: Lista użytkowników

No i ch... wielki.

Poprawiam błąd z nawiasem, to dostaję komunikat:
Fatal error: eZ Publish did not finish its request
The execution of eZ Publish was abruptly ended, the debug output is present below.

I to wszystko.

Jak usunę wyżej wymieniony fragment kodu, albo wkleję go z błędem, strona generuje się poprawnie. Po prostu uwielbiam ten system.

Żeby było zabawniej, userów muszę wyciągnąć żeby przemigrować wielki serwis na coś, czego obsługa i rozwój pochłonie o 90% mniej czasu i środków, a na dodatek edycję treści będzie w stanie robić dział marketingu klienta. ;)

konto usunięte

Temat: Lista użytkowników

Ale jak parent id ustawię na 2 i dorzucę jakąś głębokość "penetracji", to nagle wszystko działa. Czyli faktycznie problem stanowią pewnie prawa dostępu. Tyle, że ja cały czas jestem zalogowany jako admin. :/
Radosław Kuchta

Radosław Kuchta Customer Success
Manager / Senior
Project Manager

Temat: Lista użytkowników

Edward Łuska:
Poprawiam błąd z nawiasem, to dostaję komunikat:
Fatal error: eZ Publish did not finish its request
The execution of eZ Publish was abruptly ended, the debug output is present below.

I to wszystko.

W var/log... masz w plikach tekstowych zapisy błędów. Powinno coś być.
Żeby było zabawniej, userów muszę wyciągnąć żeby przemigrować wielki serwis na coś, czego obsługa i rozwój pochłonie o 90% mniej czasu i środków, a na dodatek edycję treści będzie w stanie robić dział marketingu klienta. ;)

To nie wiem dlaczego robisz to w języku szablonów zamiast bezpośrednio w php używając API aplikacji. Tu bym proponował dopisać coś w godzinę i wyeksportować wszystkie konta do CSVki ;)

Co do redaktorów to sprawa dyskusyjna, można przygotować uprawnienia i interfejs edycji w taki sposób, że "sekretarki" radzą sobie biegle (ale to już inna sprawa - wdrażającego).

Sprawdź coś takiego:

{def $users=fetch( 'content', 'list', hash( parent_node_id, 510,
'class_filter_type', 'include',
'class_filter_array', array( 'user' ),
))}
{$users|attribute(show,1)}

Co Ci się wyświetli?
Radosław Kuchta

Radosław Kuchta Customer Success
Manager / Senior
Project Manager

Temat: Lista użytkowników

Edward Łuska:
Ale jak parent id ustawię na 2 i dorzucę jakąś głębokość "penetracji", to nagle wszystko działa. Czyli faktycznie problem stanowią pewnie prawa dostępu. Tyle, że ja cały czas jestem zalogowany jako admin. :/

Przy użyciu parametru 'tree' masz rekurencyjnie przechodzenie więc to nie ma znaczenia. Sprawdź wcześniej podany przeze mnie kod. Skoro jesteś adminem powinieneś coś widzieć.

Aby móc podpowiedzieć coś więcej musiałbym wiedzieć co wyświetlane jest przez eZDebug (na samym dole strony - o ile masz go włączonego).Radosław Kuchta edytował(a) ten post dnia 01.02.11 o godzinie 22:17

konto usunięte

Temat: Lista użytkowników

Radosław Kuchta:
To nie wiem dlaczego robisz to w języku szablonów zamiast bezpośrednio w php używając API aplikacji. Tu bym proponował dopisać coś w godzinę i wyeksportować wszystkie konta do CSVki ;)
Bo nie znam API aplikacji. Przedzieranie się przez tę podziurawioną dokumentacje zabrało mi już tyle czasu, że nawet nie próbuję tego ogarnąć. Muszę po prostu stoczyć ostatnią bitwę, wyrwać CMSowi z gardła userów i pożegnać się z nim na zawsze. Nie przypadliśmy sobie do gustu. ;) Niestety dostałem go w spadku, więc póki co, muszę walczyć.
Co do redaktorów to sprawa dyskusyjna, można przygotować uprawnienia i interfejs edycji w taki sposób, że "sekretarki" radzą sobie biegle (ale to już inna sprawa - wdrażającego).
I sekretarek. ;)
Sprawdź coś takiego:

{def $users=fetch( 'content', 'list', hash( parent_node_id, 510,
'class_filter_type', 'include',
'class_filter_array', array( 'user' ),
))}
{$users|attribute(show,1)}

Co Ci się wyświetli?

"Attribute Type Value" - i dalej nic. :)

Na samym dole debuga mam Timing points, Time accumulators i Templates used to render the page. Wyżej jest sto milionów notice'ów, warningów i kilka errorów z innych szablonów, które nie są errorami, bo działają tak jak powinny, tylko system czegoś sobie z nimi nie radzi. ;)

konto usunięte

Temat: Lista użytkowników

za dużo danych chcesz pobrać nie możesz dodać limitu i zrobić sobie do tego paginacji?

{def
$page_limit=10

$count=fetch( 'content', 'tree_count',
hash( 'parent_node_id', 510,
'class_filter_type', 'include',
'class_filter_array', array( 'user' )
) )

$users=fetch( 'content', 'list', hash( parent_node_id, 510,
'class_filter_type', 'include',
'class_filter_array', array( 'user' ),
'limit', $page_limit
))

}
Radosław Kuchta

Radosław Kuchta Customer Success
Manager / Senior
Project Manager

Temat: Lista użytkowników

Edward Łuska:
"Attribute Type Value" - i dalej nic. :)

Na samym dole debuga mam Timing points, Time accumulators i Templates used to render the page. Wyżej jest sto milionów notice'ów, warningów i kilka errorów z innych szablonów, które nie są errorami, bo działają tak jak powinny, tylko system czegoś sobie z nimi nie radzi. ;)

Czyli funkcja nic nie zwraca. Jeżeli obiekty kont użytkowników są na klasie "user" (tak jak w moim kodzie) oraz jesteś pewien że węzłem (a nie obiektem) jest węzeł o id 510 to nie ma kont w tym drzewie.

Znając życie to pewnie napiszesz, że są ;)
Chętnie podpowiem więcej ale nie widząc tego co masz w danym szablonie czy też debugu to cięzko...
Wyżej jest sto milionów notice'ów, warningów i kilka errorów

Te mogą mieć wpływ na Twój kod :)
Radosław Kuchta

Radosław Kuchta Customer Success
Manager / Senior
Project Manager

Temat: Lista użytkowników

Artur Leśniewski:
za dużo danych chcesz pobrać nie możesz dodać limitu i zrobić sobie do tego paginacji?

Faktycznie, może to serwer się nie wyrabia. Z drugiej strony, zmienna z tablicą wyników była pusta.

konto usunięte

Temat: Lista użytkowników

bo jest błąd w fetch'u

{def $page_limit=10}

{def $children = fetch( 'content', 'tree', hash(
'parent_node_id', 510,
'offset', $view_parameters.offset,
'class_filter_type', 'include',
'class_filter_array', array('user'),
'limit', $page_limit))}
{def $children_count = fetch( 'content', 'tree_count', hash(
'parent_node_id', 510,
'class_filter_type', 'include',
'class_filter_array', array('user')))}

<div class="content-view-children">
{foreach $children as $child}
<div class="{$style}">{node_view_gui view='line' content_node=$child}</div>
{/foreach}
</div> {* class="content-view-children" *}

{include name=navigator
uri='design:navigator/google.tpl'
page_uri=$node.url_alias
item_count=$children_count
view_parameters=$view_parameters
item_limit=$page_limit}

no tak po całości powinno być powinno zadziałać o ile masz taka klasę jak user i parent node id jest 510
Radosław Kuchta

Radosław Kuchta Customer Success
Manager / Senior
Project Manager

Temat: Lista użytkowników

Artur Leśniewski:
bo jest błąd w fetch'u

hmm, w moim? gdzie?
btw, zmiennej $style nie przekazałeś w foreach'u ;)

konto usunięte

Temat: Lista użytkowników

{def $users=fetch( 'content', 'list', hash( parent_node_id, 510,
'class_filter_type', 'include',
'class_filter_array', array( 'user' ),
))}

przecinek po array('user')
Radosław Kuchta

Radosław Kuchta Customer Success
Manager / Senior
Project Manager

Temat: Lista użytkowników

Artur Leśniewski:
przecinek po array('user')

True (usunąłem w tym przypadku mało znaczące pozostałe parametry), nie powinien mieć jednak wpływu na działanie samej funkcji.Radosław Kuchta edytował(a) ten post dnia 01.02.11 o godzinie 23:07

konto usunięte

Temat: Lista użytkowników

Artur Leśniewski:
no tak po całości powinno być powinno zadziałać o ile masz taka klasę jak user i parent node id jest 510

Nadal pusto. :/

Tak czy inaczej, wielkie dzięki za pomoc. Trochę światła mi to rzuciło. Dzisiaj już odpadam, bo mi się litery mienią w oczach i nic sensownego już nie wygeneruję. Wyśpię się, może rano coś mi do głowy wpadnie. :)

konto usunięte

Temat: Lista użytkowników

wiesz to jest ez wszystko może się zdarzyć wiem o tym z doświadczenia
Janek Łoza

Janek Łoza Magento Developer,
PHP Developer, EZ
Publish Developer,

Temat: Lista użytkowników

Edward Łuska:
Artur Leśniewski:
no tak po całości powinno być powinno zadziałać o ile masz taka klasę jak user i parent node id jest 510

Nadal pusto. :/

Tak czy inaczej, wielkie dzięki za pomoc. Trochę światła mi to rzuciło. Dzisiaj już odpadam, bo mi się litery mienią w oczach i nic sensownego już nie wygeneruję. Wyśpię się, może rano coś mi do głowy wpadnie. :)

Ja bym obstawiał że ID się nie zgadza.
Może też być tak że stronę przeglądasz jako anonim i nie masz uprawnień do oglądania userów. Debug by ci dużo podpowiedział.

Spróbuj z ciekawości ustawić uprawnienia do czytania userów dla Anonymous.
"Content->read" dla sekcji Users. Zobaczysz czy coś pomoże.



Wyślij zaproszenie do