--- lib/A3C/View/LDAP.pm 2008/08/28 13:59:45 230 +++ lib/A3C/View/LDAP.pm 2008/08/31 11:54:40 231 @@ -43,23 +43,32 @@ }; +use Encode qw/decode/; -template 'dump' => page { +template 'search' => page { h1 { _('LDAP data about Schools in system') }; - my $ldap = A3C::LDAP->new; - div { - $ldap->search( - base => 'dc=skole,dc=hr', - filter => '(objectClass=hrEduOrg)', - sizelimit => 10, - ); - while ( my $entry = $ldap->current_search->shift_entry ) { - #warn $entry->dump; - ul { - foreach my $attr ( $entry->attributes ) { - li { - tt { $attr } - span { dump( $entry->get_value( $attr ) ) } + + my $action = new_action( + class => 'SearchLDAP', + moniker => 'search-ldap' + ); + + form { + render_action( $action => [ 'base', 'filter', 'sizelimit' ] ); + form_submit( label => _('Search LDAP') ); + }; + + if ( my $search = $action->result->content( 'current_search' ) ) { + div { + while ( my $entry = $search->shift_entry ) { + #warn $entry->dump; + ul { + foreach my $attr ( $entry->attributes ) { + li { + tt { $attr } + my $vals = decode('utf-8', join('', $entry->get_value( $attr ) )); + span { outs_raw( $vals ) } + } } } }