X-Git-Url: http://git.freeside.biz/gitweb/?p=freeside.git;a=blobdiff_plain;f=httemplate%2Fedit%2Fpart_export.cgi;h=b3d42bd9608c6ce2fee2874a057222e3c7b9800b;hp=b72b277c909c836cc339cefd5a2f1124773be06c;hb=a44fcf8b6fb405c09a47de27b32fcb19f121dcae;hpb=327df8aefdcf96c9c83805570abf4cc242cf46b9 diff --git a/httemplate/edit/part_export.cgi b/httemplate/edit/part_export.cgi index b72b277c9..b3d42bd96 100644 --- a/httemplate/edit/part_export.cgi +++ b/httemplate/edit/part_export.cgi @@ -45,13 +45,43 @@ my $widget = new HTML::Widgets::SelectLayers( if $layer; foreach my $option ( keys %{$exports->{$layer}{options}} ) { -# foreach my $option ( qw(url login password groupID ) ) { my $optinfo = $exports->{$layer}{options}{$option}; + die "Retreived non-ref export info option from $layer export: $optinfo" + unless ref($optinfo); my $label = $optinfo->{label}; - my $value = $cgi->param($option) || $part_export->option($option); - $html .= qq!$label!. - qq!!. - ''; + my $type = defined($optinfo->{type}) ? $optinfo->{type} : 'text'; + my $value = $cgi->param($option) + || ( $part_export->exportnum && $part_export->option($option) ) + || ( (exists $optinfo->{default} && !$part_export->exportnum) + ? $optinfo->{default} + : '' + ); + $html .= qq!$label!; + if ( $type eq 'select' ) { + $html .= qq!'; + } elsif ( $type eq 'textarea' ) { + $html .= qq!'; + } elsif ( $type eq 'text' ) { + $html .= qq!'; + } elsif ( $type eq 'checkbox' ) { + $html .= qq!