Add cust_attachment stuff
[freeside.git] / httemplate / view / cust_main / attachments.html
diff --git a/httemplate/view/cust_main/attachments.html b/httemplate/view/cust_main/attachments.html
new file mode 100755 (executable)
index 0000000..e25814f
--- /dev/null
@@ -0,0 +1,133 @@
+% if ( scalar(@attachments) ) {
+
+  <% include('/elements/init_overlib.html') %>
+
+  <% include("/elements/table-grid.html") %>
+
+  <TR>
+    <TH CLASS="grid" BGCOLOR="#cccccc">Date</TH>
+%   if ( $conf->exists('cust_main_note-display_times') ) {
+      <TH CLASS="grid" BGCOLOR="#cccccc">Time</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"></TH>
+  </TR>
+
+% my $bgcolor1 = '#eeeeee';
+% my $bgcolor2 = '#ffffff';
+% my $bgcolor = '';
+%
+% foreach my $attach ((grep { $_->disabled } @attachments),
+%                     (grep { ! $_->disabled } @attachments)) {
+%
+%   if ( $bgcolor eq $bgcolor1 ) {
+%     $bgcolor = $bgcolor2;
+%   } else {
+%     $bgcolor = $bgcolor1;
+%   }
+%
+%   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>!;
+%     }
+%   }
+%   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"!;
+%
+%     if ($curuser->access_right('Edit attachment') ) {
+%       $edit = qq! <A HREF="javascript:void(0);" $clickjs>(edit)</A>!;
+%     }
+%     if ($curuser->access_right('Download attachment') ) {
+%       $download = qq! <A HREF="!.popurl(1).'attachment.html?'.$attachnum.qq!">(download)</A>!;
+%     }
+%   }
+
+    <TR>
+      <% note_datestr($attach,$conf,$bgcolor) %>
+      <TD CLASS="grid" BGCOLOR="<% $bgcolor %>">
+        &nbsp;<% $attach->otaker%>
+      </TD>
+      <TD CLASS="grid" BGCOLOR="<% $bgcolor %>">
+       &nbsp;<% $attach->filename %>
+      </TD>
+      <TD CLASS="grid" BGCOLOR="<% $bgcolor %>">
+       &nbsp;<% $attach->mime_type %>
+      </TD>
+      <TD CLASS="grid" BGCOLOR="<% $bgcolor %>">
+       &nbsp;<% size_units( $attach->size ) %>
+      </TD>
+      <TD CLASS="grid" BGCOLOR="<% $bgcolor %>">
+        &nbsp;<% $edit %>
+        &nbsp;<% $download %>
+      </TD>
+      <% $attach->disabled ? '</I>' : '' %>
+    </TR>
+
+% } #end display notes
+
+</TABLE>
+
+% }
+<%init>
+
+my $conf = new FS::Conf;
+my $curuser = $FS::CurrentUser::CurrentUser;
+
+my(%opt) = @_;
+
+my $custnum = $opt{'custnum'};
+
+my $cust_main = qsearchs('cust_main', {'custnum' => $custnum} );
+die "Customer not found!" unless $cust_main;
+
+my (@attachments) = qsearch('cust_attachment', {'custnum' => $custnum});
+
+#subroutines
+
+sub note_datestr {
+  my($note, $conf, $bgcolor) = @_ or return '';
+  my $td = qq{<TD CLASS="grid" BGCOLOR="$bgcolor" ALIGN="right">};
+  my $format = "$td%b&nbsp;%o,&nbsp;%Y</TD>";
+  $format .= "$td%l:%M%P</TD>"
+    if $conf->exists('cust_main_note-display_times');
+  ( my $strip = time2str($format, $note->_date) ) =~ s/ (\d)/$1/g;
+  $strip;
+}
+
+sub size_units {
+  my $bytes = shift;
+  return $bytes if $bytes < 1024;
+  return int($bytes / 1024)."K" if $bytes < 1048576;
+  return int($bytes / 1048576)."M";
+}
+
+</%init>