#!/usr/bin/env perl

my $lastfilename;

sub split_at_numbered_sections($$$)
{
  my $element = shift;
  my $type = shift;
  my $docu_name = shift;

#   print "~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n";
#   print "Element: ";
#   for ( keys %$element ) {
#     print "   [".$_."] => ".$$element{$_}."\n";
#   }

  # TOC, footer, about etc. are called with undefined $element and $type == "toc"|"stoc"|"foot"|"about"
  if ($type eq "toc" or $type eq "stoc" or $type eq "foot" or $type eq "about") {
    return;
  } else {
    # Numbered sections will get a filename Section_1.1.2, unnumbered sections will use 
    # the file name of the previous numbered section:
    if ($$element{number}) {
      my $filename = "Section_$$element{number}";
      $filename .= ".$docu_ext" if (defined($docu_ext));
#       print "Generating fiel $filename\n";
      $lastfilename = $filename;
      return $filename;
    } else {
#       print "It's an unnumbered subsection, returning previous file name $lastfilename\n";
      return $lastfilename;
    }
  }

  return;
}

# params: $element_file_name $element $type $docu_name
$Texi2HTML::Config::element_file_name = \&split_at_numbered_sections;
$Texi2HTML::Config::SPLIT = 'section';

return 1;