Fix crash when there is no UserDetailsAttributes setting
[manu/RT-Extension-UserDetails.git] / html / Elements / ShowUserDetails
1 <span id="toggleuserdetails-<% $id %>">
2 % if ( $Toggle ) {
3 <a href="<% $url %>" onclick="ahah('<% $url |n %>&Toggle=0', 'toggleuserdetails-<% $id |n %>'); return false;" <img src="<% RT->Config->Get('WebPath') %>/NoAuth/images/userdetails.png" alt="<% loc('Details') %>" title="<% loc('Details') %>" style="border-style: none" /></a>
4 <div id="userdetails">
5 <a href="<% $url %>" onclick="ahah('<% $url |n %>&Toggle=0', 'toggleuserdetails-<% $id |n %>'); return false;" <img src="<% RT->Config->Get('WebPath') %>/NoAuth/images/close.png" alt="<% loc('Close') %>" title="<% loc('Close') %>" style="border-style: none" /></a>
6 <ul>
7 % foreach my $sort (sort { $a <=> $b } keys %attributes) {
8 % my $attr_name = $attributes{$sort}{'AttributeName'};
9 % my $display_name = $attributes{$sort}{'DisplayName'};
10 <li><% loc($display_name) %>: <% $User->$attr_name || '' %></li>
11 % }
12 </ul>
13 </div>
14 % } else {
15 <a href="<% $url %>" onclick="ahah('<% $url |n %>&Toggle=1', 'toggleuserdetails-<% $id |n %>'); return false;" <img src="<% RT->Config->Get('WebPath') %>/NoAuth/images/userdetails.png" alt="<% loc('Details') %>" title="<% loc('Details') %>" style="border-style: none" /></a>
16 % }
17 </span>
18
19 <%init>
20 my $url = RT->Config->Get('WebPath') ."/Helpers/Toggle/UserDetails?id=". $id;
21
22 # Default Attributes to display
23 # SortOrder => {¬†AttributeName => '',
24 #                DisplayName   => '', }
25 my %attributes;
26 if ( RT->Config->Get('UserDetailsAttributes') ) {
27     %attributes = RT->Config->Get('UserDetailsAttributes');
28 } else {
29     %attributes = ( 
30         1 => { AttributeName => 'RealName',
31                DisplayName => 'Real Name',
32              },
33         2 => { AttributeName => 'EmailAddress',
34                DisplayName => 'Email',
35              },
36         3 => { AttributeName => 'Organization',
37                DisplayName => 'Organization',
38              }, 
39         );
40 }
41
42 my $User;
43
44 # Load User only if needed
45 if ( $Toggle ) {
46     $User = RT::User->new( $session{'CurrentUser'} );
47     $User->Load( $id );
48 }
49
50 </%init>
51
52 <%args>
53 $id
54 $Toggle => 0
55 </%args>
56