package FS::part_virtual_field;
+use base qw(FS::Record);
use strict;
-use vars qw( @ISA );
-use FS::Record;
+use HTML::Entities;
use FS::Schema qw( dbdef );
-use CGI qw(escapeHTML);
-
-@ISA = qw( FS::Record );
=head1 NAME
sub table { 'part_virtual_field'; }
sub virtual_fields { () }
+sub virtual_fields_hash { () }
=item widget UI_TYPE MODE [ VALUE ]
sub widget {
my $self = shift;
- my ($ui_type, $mode, $value) = @_;
+ my ($ui_type, $mode, $value, $header_col_type) = @_;
+ $header_col_type = 'TD' unless $header_col_type;
my $text;
my $label = $self->label || $self->name;
if ($ui_type eq 'HTML') {
if ($mode eq 'view') {
- $text = q!<TR><TD ALIGN="right">! . $label .
- q!</TD><TD BGCOLOR="#ffffff">! . $value .
+ $text = q!<TR><!.$header_col_type.q! ALIGN="right">! . encode_entities($label) .
+ q!</!.$header_col_type.q!><TD BGCOLOR="#ffffff">! . encode_entities($value) .
q!</TD></TR>! . "\n";
} elsif ($mode eq 'edit') {
- $text = q!<TR><TD ALIGN="right">! . $label .
- q!</TD><TD>!;
- $text .= q!<INPUT NAME="! . $self->name .
- q!" VALUE="! . escapeHTML($value) . q!"!;
+ $text = q!<TR><!.$header_col_type.q! ALIGN="right">! . encode_entities($label) .
+ q!</!.$header_col_type.q!><TD>!;
+ $text .= q!<INPUT TYPE=text NAME="! . $self->name .
+ q!" VALUE="! . encode_entities($value) . q!"!;
if ($self->length) {
$text .= q! SIZE="! . $self->length . q!"!;
}