default to a session cookie instead of setting an explicit timeout, weird timezone...
[freeside.git] / httemplate / elements / change_history_common.html
index e228e65..d734053 100644 (file)
 %   } else {
 %     $bgcolor = $bgcolor1;
 %   }
+%
+%   ## Create Description and check to see it is not empty, no need to display a record with no description, so skip it.
+%   my $description = '';
+%   if ( $item->table eq 'legacy_cust_history' ) {
+%     $description = $item->description;
+%   } elsif ( $item->table eq 'h_cust_tag' ) {
+%     $description = &{ $h_table_descripsub{$item->table} }( $item, $tables{'cust_tag'} )
+%        if $single_cust && $h_table_descripsub{$item->table};
+%   } else {
+%     my @fields = $item->fields;
+%     push @fields, 'message_dest' if $item->table eq 'h_contact';
+%     $description = join(', ',
+%             map  { my $value = ( $_ =~ /(^pay(info|cvv)|^ss|_password)$/ ) 
+%                                  ? 'N/A'
+%                                  : $item->get($_);
+%                    $value = time2str($cust_pkg_date_format, $value)
+%                     if $item->table eq 'h_cust_pkg'
+%                     && $cust_pkg_date_fields{$_}
+%                     && $value;
+%
+%                    $value = substr($value, 0, 77).'...' if length($value) > 80;
+%                    $value = encode_entities($value);
+%                    "<I>$_</I>:<B>$value</B>";
+%                  }
+%             grep { $history_other
+%                      ? ( $item->get($_) ne $history_other->get($_) )
+%                      : ( $item->get($_) =~ /\S/ )
+%                  }
+%             grep { ! /^(history|custnum$)/i }
+%                  @fields
+%     );
+%     if ( $single_cust && $h_table_descripsub{$item->table} ) {
+%        $description = &{ $h_table_descripsub{$item->table} }( $item );
+%     }
+%   } #else 
+%  if (!$description) { next; }
 
   <TR>
 
     </TD>
 
     <TD ALIGN="left" CLASS="grid" BGCOLOR="<% $bgcolor %>">
-%     if ( $item->table eq 'legacy_cust_history' ) {
-        <% $item->description |h %>
-%     } else {
-        <% join(', ',
-             map  { my $value = ( $_ =~ /(^pay(info|cvv)|^ss|_password)$/ ) 
-                                  ? 'N/A'
-                                  : $item->get($_);
-                    $value = time2str($cust_pkg_date_format, $value)
-                     if $item->table eq 'h_cust_pkg'
-                     && $cust_pkg_date_fields{$_}
-                     && $value;
-
-                    $value = substr($value, 0, 77).'...' if length($value) > 80;
-                    $value = encode_entities($value);
-                    "<I>$_</I>:<B>$value</B>";
-                  }
-             grep { $history_other
-                      ? ( $item->get($_) ne $history_other->get($_) )
-                      : ( $item->get($_) =~ /\S/ )
-                  }
-             grep { ! /^(history|custnum$)/i }
-                  $item->fields
-           )
-        %>
-%       if ( $single_cust && $h_table_descripsub{$item->table} ) {
-          <% &{ $h_table_descripsub{$item->table} }( $item ) %>
-%       }
-%     }
+      <% $description %>
     </TD>
 
   </TR>
@@ -197,6 +206,18 @@ my $svc_labelsub = sub {
   $label. ': <b>'. encode_entities($item->label($item->history_date)). '</b>';
 };
 
+my $tag_labelsub = sub {
+  my($item, $label) = @_;
+  my $part_tag = qsearchs('part_tag',{ tagnum => $item->tagnum });
+  $label. ': <SPAN STYLE="background-color: #'.$part_tag->tagcolor.'">'. encode_entities($part_tag->tagname). '</SPAN>';
+};
+
+my $contact_labelsub = sub {
+  my($item, $label) = @_;
+  my $contact = qsearchs('h_contact',{ contactnum => $item->contactnum });
+  $label. ': <B>'. encode_entities($contact->first). ' ' . encode_entities($contact->last) . '</B>';
+};
+
 my %h_table_labelsub = (
   'h_cust_pkg'      => $pkg_labelsub,
   'h_svc_acct'      => $svc_labelsub,
@@ -208,8 +229,37 @@ my %h_table_labelsub = (
   'h_svc_external'  => $svc_labelsub,
   'h_svc_phone'     => $svc_labelsub,
   #'h_phone_device'
+  #'h_cust_tag'      => $tag_labelsub,
+  'h_contact'  => $contact_labelsub,
+  'h_cust_contact'  => $contact_labelsub,
+  'h_contact_phone' => $contact_labelsub,
+  'h_contact_email' => $contact_labelsub,
 );
 
+my $tag_descripsub = sub {
+  my($item, $label) = @_;
+  my $part_tag = qsearchs('part_tag',{ tagnum => $item->tagnum });
+  '<SPAN STYLE="background-color: #'.$part_tag->tagcolor.'">'. encode_entities($part_tag->tagname). '</SPAN>';
+};
+
+my $contact_descripsub = sub {
+  my($item, $label) = @_;
+  my $phone_type = qsearchs('phone_type',{ phonetypenum => $item->phonetypenum });
+  my @fields = $item->fields;
+  join(', ',
+    map  {
+           my $value = ( $_ eq "phonetypenum" )
+              ? $item->get($_).' ('.$phone_type->typename.')'
+              : $item->get($_);
+           $value = substr($value, 0, 77).'...' if length($value) > 80;
+           $value = encode_entities($value);
+           "<I>$_</I>:<B>$value</B>";
+         }
+         grep { ! /^(history|custnum$)/i }
+            @fields
+  );
+};
+
 my $discounts = {};
 my $discount_descripsub = sub {
   my($item) = @_;
@@ -229,6 +279,8 @@ my $discount_descripsub = sub {
 
 my %h_table_descripsub = (
   'h_cust_pkg_discount' => $discount_descripsub,
+  'h_cust_tag'          => $tag_descripsub,
+  'h_contact_phone'     => $contact_descripsub,
 );
 
 my $cust_pkg_date_format = '%b %o, %Y';