/[webpac]/branches/hidra/all2xml.pl
This is repository of my old source code which isn't updated any more. Go to git.rot13.org for current projects!
ViewVC logotype

Diff of /branches/hidra/all2xml.pl

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 723 by dpavlin, Mon Apr 3 08:02:51 2006 UTC revision 745 by dpavlin, Tue Jun 6 12:22:52 2006 UTC
# Line 76  my $use_lhash_cache = 1; Line 76  my $use_lhash_cache = 1;
76    
77  my $last_field_name;    # cache to prevent repeated fields  my $last_field_name;    # cache to prevent repeated fields
78    
79    my $broken_cdata = XMLin('<foo><![CDATA[<bar>]]></foo>') eq '<bar>>';
80    warn "XML::Simple on this system seems broken with <![CDATA[..]]>.\n" if ($broken_cdata);
81    
82  sub data2xml {  sub data2xml {
83    
84          use xmlify;          use xmlify;
# Line 207  sub data2xml { Line 210  sub data2xml {
210                          delete $x->{value};                          delete $x->{value};
211                          delete $x->{delimiter};                          delete $x->{delimiter};
212                          $x->{content} = $v;                          $x->{content} = $v;
213                            $d =~ s#>$## if ($d && $broken_cdata);
214                          $x->{delimiter} = $d;                          $x->{delimiter} = $d;
215                  }                  }
216                  return $x;                  return $x;
# Line 705  foreach my $database ($cfg->Sections) { Line 709  foreach my $database ($cfg->Sections) {
709          my $tag = $cfg->val($database, 'import_xml_tag') || $type2tag{$type_base} || die "can't find which tag to use for type $type";          my $tag = $cfg->val($database, 'import_xml_tag') || $type2tag{$type_base} || die "can't find which tag to use for type $type";
710          $config=XMLin($import_xml_file, ForceArray => [ $tag, 'config', 'format' ], ForceContent => 1 );          $config=XMLin($import_xml_file, ForceArray => [ $tag, 'config', 'format' ], ForceContent => 1 );
711    
712            # check for broken XML::Simple
713            if ( $broken_cdata ) {
714                    map {
715                            $config->{format}->{$_}->{content} =~ s#>$##;
716                    } keys %{ $config->{format} };
717            }
718    
719          # helper for progress bar          # helper for progress bar
720          sub fmt_time {          sub fmt_time {
721                  my $t = shift || 0;                  my $t = shift || 0;
# Line 816  foreach my $database ($cfg->Sections) { Line 827  foreach my $database ($cfg->Sections) {
827                  my $excel_file = $cfg -> val($database, 'excel_file') || die "$database doesn't have 'excel_file' defined!";                  my $excel_file = $cfg -> val($database, 'excel_file') || die "$database doesn't have 'excel_file' defined!";
828    
829                  my $sheet = x($config->{sheet}) || die "no sheet in $type.xml";                  my $sheet = x($config->{sheet}) || die "no sheet in $type.xml";
830                  my $start_row = x($config->{start_row}) - 1 || die "no start_row in $type.xml";                  my $start_row = x($config->{start_row}) || die "no start_row in $type.xml";
831                    $start_row--;
832    
833                  my $oBook = Spreadsheet::ParseExcel::Workbook->Parse($excel_file) || die "can't open Excel file '$excel_file'";                  my $oBook = Spreadsheet::ParseExcel::Workbook->Parse($excel_file) || die "can't open Excel file '$excel_file'";
834    

Legend:
Removed from v.723  
changed lines
  Added in v.745

  ViewVC Help
Powered by ViewVC 1.1.26