CVS-Metrics

 view release on metacpan or  search on metacpan

bin/cvs_tklog  view on Meta::CPAN

        print "Tag: ", $tag;
        if ($tag =~ /$regex_tag/) {
            $matched{$date.$tag} = $tag;
            print " ... matched";
        }
        print "\n";
    }
    foreach (sort keys %matched) {
        push @tags, $matched{$_};
    }

    if ($flg_head) {
        push @tags, 'HEAD';
        $cvs_log->insertHead();
    }

    my $top = Top->new($cvs_log, \@tags, $title, $flg_dead, $flg_css, $start_date, $output);
    MainLoop();
}

#######################################################################

sub FindCvs {
    my $cvs;
    if ($^O eq 'MSWin32') {
        eval 'use File::Which';
        $cvs = which('cvs');
        unless (defined $cvs) {
            eval 'use Win32::TieRegistry(Delimiter => "/")';
            my $cvs_setting;
            my $hkey = 'HKEY_CURRENT_USER/Software/WinCvs/wincvs/CVS settings';
            eval '$cvs_setting = $Registry->{$hkey}';
            $cvs = $cvs_setting->{'/P_WhichCvs'};
            if (defined $cvs) {
                $cvs =~ s/[\000\001]//g;
                $cvs =~ s/wincvs\.exe\@$//;
                if ( -e "${cvs}CVSNT\\\\cvs.exe") {
                    $cvs .= "CVSNT\\\\cvs.exe";
                }
                else {
                    $cvs .= 'cvs.exe';
                }
            }
        }
        die "cvs not found !\n" unless (defined $cvs);
        warn "Using CVS : $cvs\n";
        return q{"} . $cvs . q{"};
    }
    else {
        return 'cvs';
    }
}

#######################################################################

sub GenerateHTML {
    my ($cvs_log, $tags, $title, $path, $tag_from, $tag_to, $flg_css, $start_date, $output) = @_;

my $html = q{
<?xml version='1.0' encoding='ISO-8859-1'?>
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Transitional//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd'>
<html xmlns='http://www.w3.org/1999/xhtml'>
  <head>
    <meta http-equiv='Content-Type' content='text/html; charset=ISO-8859-1' />
    <meta name='generator' content='<TMPL_VAR NAME=generator>' />
    <meta name='date' content='<TMPL_VAR NAME=date>' />
    <title>cvs_tklog <!-- TMPL_VAR NAME=title --></title>
    <!-- TMPL_IF NAME=css -->
    <link href='cvs_tklog.css' rel='stylesheet' type='text/css'/>
    <!-- TMPL_ELSE -->
    <style type='text/css'>
      <!-- TMPL_VAR NAME=style -->
    </style>
    <!-- /TMPL_IF -->
  </head>
  <body>
  <h1>Evolution Report</h1>
  <h1><!-- TMPL_VAR NAME=title --></h1>
  <hr />
  <h2>Activity</h2>
  <img src='<TMPL_VAR NAME=a_img>' />
  <h2>Context</h2>
  <table class='layout'>
    <tr>
      <td valign='top'><img src='<TMPL_VAR NAME=e_img>' /></td>
      <td valign='top'>
        <table border='1' cellpadding='5'>
          <tr>
            <th>Tag</th>
            <th>Date</th>
          </tr>
        <!-- TMPL_LOOP NAME=timed_tag -->
          <tr>
            <td><!-- TMPL_VAR NAME=tag --></td>
            <td><!-- TMPL_VAR NAME=timed --></td>
          </tr>
        <!-- /TMPL_LOOP -->
        </table>
      </td>
    </tr>
  </table>
  <hr />
  <h2>Evolution Report Summary</h2>
  <table border='1' cellpadding='5'>
    <tr>
      <th width='40%'>Directories</th>
      <th width='20%'>Added files</th>
      <th width='20%'>Modified files</th>
      <th width='20%'>Deleted files</th>
    </tr>
  <!-- TMPL_LOOP NAME=summary -->
    <tr>
      <td><a href='#<TMPL_VAR NAME=dir>'><!-- TMPL_VAR NAME=dir --></a></td>
      <td><!-- TMPL_VAR NAME=added --></td>
      <td><!-- TMPL_VAR NAME=modified --></td>
      <td><!-- TMPL_VAR NAME=deleted --></td>
    </tr>
  <!-- /TMPL_LOOP -->
  </table>
  <hr />
  <h2>Detailed Evolution Report</h2>



( run in 0.736 second using v1.01-cache-2.11-cpan-39bf76dae61 )