% if ( scalar(@attachments) ) {
- <% include('/elements/init_overlib.html') %>
+ <& /elements/init_overlib.html &>
- <% include("/elements/table-grid.html") %>
+ <& /elements/table-grid.html &>
<TR>
- <TH CLASS="grid" BGCOLOR="#cccccc">Date</TH>
+ <TH CLASS="grid" BGCOLOR="#cccccc"><% mt('Date') |h %></TH>
% if ( $conf->exists('cust_main_note-display_times') ) {
- <TH CLASS="grid" BGCOLOR="#cccccc">Time</TH>
+ <TH CLASS="grid" BGCOLOR="#cccccc"><% mt('Time') |h %></TH>
% }
- <TH CLASS="grid" BGCOLOR="#cccccc">Person</TH>
- <TH CLASS="grid" BGCOLOR="#cccccc">Filename</TH>
- <TH CLASS="grid" BGCOLOR="#cccccc">Type</TH>
- <TH CLASS="grid" BGCOLOR="#cccccc">Size</TH>
+ <TH CLASS="grid" BGCOLOR="#cccccc"><% mt('Person') |h %></TH>
+ <TH CLASS="grid" BGCOLOR="#cccccc"><% mt('Filename') |h %></TH>
+ <TH CLASS="grid" BGCOLOR="#cccccc"><% mt('Description') |h %></TH>
+ <TH CLASS="grid" BGCOLOR="#cccccc"><% mt('Type') |h %></TH>
+ <TH CLASS="grid" BGCOLOR="#cccccc"><% mt('Size') |h %></TH>
<TH CLASS="grid" BGCOLOR="#cccccc"></TH>
</TR>
% my $bgcolor1 = '#eeeeee';
% my $bgcolor2 = '#ffffff';
% my $bgcolor = '';
+% if($cgi->param('show_deleted')) {
+% if ($curuser->access_right('View deleted attachments')) {
+% @attachments = grep { $_->disabled } @attachments;
+% }
+% else {
+% @attachments = ();
+% }
+% }
+% else {
+% @attachments = grep { not $_->disabled } @attachments;
+% }
%
-% foreach my $attach ((grep { $_->disabled } @attachments),
-% (grep { ! $_->disabled } @attachments)) {
+% foreach my $attach (@attachments) {
%
% if ( $bgcolor eq $bgcolor1 ) {
% $bgcolor = $bgcolor2;
% my $pop = popurl(3);
% my $attachnum = $attach->attachnum;
% my $edit = '';
-% my $download = '';
-% if($attach->disabled) {
-% my $onclick = include('/elements/popup_link_onclick.html',
-% 'action' => popurl(2).
-% 'edit/process/cust_main_attach.cgi'.
-% "?custnum=$custnum;".
-% "attachnum=$attachnum;".
-% "undelete=1",
-% 'actionlabel' => 'Undelete attachment',
-% 'width' => 616,
-% 'height' => 408,
-% 'frame' => 'top',
-% );
-% my $clickjs = qq!onclick="$onclick"!;
-% if($curuser->access_right('Edit attachment')) {
-% $edit = qq! <A HREF="javascript:void(0);" $clickjs>(undelete)</A>!;
+% if($attach->disabled) { # then you can undelete it or purge it.
+% if ($curuser->access_right('Undelete attachment')) {
+% my $clickjs = popup('edit/process/cust_main_attach.cgi?'.
+% "custnum=$custnum;attachnum=$attachnum;".
+% "undelete=1",
+% emt('Undelete attachment'));
+% $edit .= linkstr($clickjs, emt('undelete'));
+% }
+% if ($curuser->access_right('Purge attachment')) {
+% my $clickjs = popup('edit/process/cust_main_attach.cgi?'.
+% "custnum=$custnum;attachnum=$attachnum;".
+% "purge=1",
+% emt('Purge attachment'),
+% emt('Permanently remove this file?') );
+% $edit .= linkstr($clickjs,emt('purge'));
% }
% }
-% else {
-% my $onclick = include( '/elements/popup_link_onclick.html',
-% 'action' => popurl(2).
-% 'edit/cust_main_attach.cgi'.
-% "?custnum=$custnum".
-% ";attachnum=$attachnum",
-% 'actionlabel' => 'Edit customer note',
-% 'width' => 616,
-% 'height' => 408,
-% 'frame' => 'top',
-% );
-% my $clickjs = qq!onclick="$onclick"!;
-%
+% else { # you can download or edit it
% if ($curuser->access_right('Edit attachment') ) {
-% $edit = qq! <A HREF="javascript:void(0);" $clickjs>(edit)</A>!;
+% my $clickjs = popup('edit/cust_main_attach.cgi?'.
+% "custnum=$custnum;attachnum=$attachnum",
+% emt('Edit attachment properties'));
+% $edit .= linkstr($clickjs,emt('edit'));
+% }
+% if($curuser->access_right('Delete attachment') ) {
+% my $clickjs = popup('edit/process/cust_main_attach.cgi?'.
+% "custnum=$custnum;attachnum=$attachnum;delete=1",
+% 'Delete attachment',
+% 'Delete this file?');
+% $edit .= linkstr($clickjs,emt('delete'));
% }
% if ($curuser->access_right('Download attachment') ) {
-% $download = qq! <A HREF="!.popurl(1).'attachment.html?'.$attachnum.qq!">(download)</A>!;
+% $edit .= qq! <A HREF="!.popurl(1).'attachment.html?'.$attachnum.qq!">(!
+% . emt('download') .')</A>';
% }
% }
<TR>
<% note_datestr($attach,$conf,$bgcolor) %>
<TD CLASS="grid" BGCOLOR="<% $bgcolor %>">
- <% $attach->otaker%>
+ <% $attach->usernum ? $attach->access_user->name : $attach->otaker %>
</TD>
<TD CLASS="grid" BGCOLOR="<% $bgcolor %>">
- <% $attach->filename %>
+ <% $attach->filename |h %>
</TD>
<TD CLASS="grid" BGCOLOR="<% $bgcolor %>">
- <% $attach->mime_type %>
+ <% $attach->title |h %>
+ <TD CLASS="grid" BGCOLOR="<% $bgcolor %>">
+ <% $attach->mime_type |h %>
</TD>
<TD CLASS="grid" BGCOLOR="<% $bgcolor %>">
<% size_units( $attach->size ) %>
</TD>
<TD CLASS="grid" BGCOLOR="<% $bgcolor %>">
- <% $edit %>
- <% $download %>
+ <% $edit %>
</TD>
- <% $attach->disabled ? '</I>' : '' %>
</TR>
% } #end display notes
my $conf = new FS::Conf;
my $curuser = $FS::CurrentUser::CurrentUser;
-
+die "access denied" if !$curuser->access_right('View attachments');
my(%opt) = @_;
my $custnum = $opt{'custnum'};
$strip;
}
+sub linkstr {
+ my ($clickjs, $label) = (shift,shift);
+ ' <A HREF="javascript:void(0);" '. $clickjs . '>(' . emt($label) . ')</A>';
+}
+
sub size_units {
my $bytes = shift;
return $bytes if $bytes < 1024;
return int($bytes / 1048576)."M";
}
+sub popup {
+ my ($url, $label, $confirm) = @_;
+ my $onclick =
+ include('/elements/popup_link_onclick.html',
+ 'action' => popurl(2).$url,
+ 'actionlabel' => $label,
+ 'width' => 510,
+ 'height' => 315,
+ 'frame' => 'top',
+ );
+ $onclick = qq!if(confirm('$confirm')) { $onclick }! if $confirm;
+ return qq!onclick="$onclick"!;
+}
+
+
</%init>