source: trunk/coverager/coverager.tpl.php @ 530

Last change on this file since 530 was 530, checked in by moo, 7 years ago

passed w3c validation

  • Property svn:eol-style set to native
File size: 5.5 KB
RevLine 
[530]1<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
[33]2<html xmlns="http://www.w3.org/1999/xhtml">
3<head>
4<?php
5echo <<<HEAD
6    <meta http-equiv="Content-Type" content="text/html; charset=$this->charset" />
[124]7    <meta http-equiv="Content-Language" content="{$this->lang}" />
[33]8    <script type="text/javascript" src="tablesort.js" charset="$this->charset"></script>
9HEAD;
10?>
11
12    <link rel="stylesheet" type="text/css" href="coverager.css" />
[124]13    <title><?php echo _T("XCache PHP Code Coverage Viewer"); ?></title>
[33]14</head>
15<body>
[124]16<h1><?php echo _T("XCache PHP Code Coverage Viewer"); ?></h1>
[33]17
18<?php
19function calc_percent($info, &$percent, &$class)
20{
21    if (!$info['total']) {
22        $percent = 0;
23    }
24    else {
25        $percent = (int) ($info['hits'] / $info['total'] * 100);
26    }
27    if ($percent < 15) {
28        $class = "Lo";
29    }
30    else if ($percent < 50) {
31        $class = "Med";
32    }
33    else {
34        $class = "Hi";
35    }
36}
37
38function bar($percent, $class)
39{
40    return <<<EOS
41    <div class="coverBarOutline">
42        <div class="coverBar{$class}" style="width:{$percent}%"></div>
43        <div class="coverPer{$class}">{$percent}</div>
44    </div>
45EOS;
46}
47
48function dir_head()
49{
50    global $cycle;
51    $cycle = new Cycle('class="col1"', 'class="col2"');
[124]52    $l_dir = _T("Directory");
53    $l_per = _T("Percent");
54    $l_hit = _T("Hits");
55    $l_lns = _T("Lines");
56    $l_tds = _T("TODO");
[33]57    return <<<EOS
[530]58<div class="table-center">
59    <table cellpadding="2" cellspacing="0" border="0" class="cycles center">
[33]60    <tr>
[124]61        <th>{$l_dir}</th><th>{$l_per}</th><th>{$l_hit}</th><th>{$l_lns}</th><th>{$l_tds}</th>
[33]62    </tr>
63EOS;
64}
65
66function dir_row($info, $srcdir)
67{
68    global $cycle;
69    if ($info['files'] || $info['todos']) {
[173]70        $srcdir .= DIRECTORY_SEPARATOR;
[33]71        $c = $cycle->next();
72        $srcdir_html = htmlspecialchars($srcdir);
73        $todos = number_format($info['todos']);
74        if ($info['total']) {
75            $srcdir_url = urlencode($srcdir);
76            $hits  = number_format($info['hits']);
77            $total = number_format($info['total']);
78            calc_percent($info, $percent, $class);
79            $bar = bar($percent, $class);
80            return <<<EOS
81            <tr $c>
82                <td class="coverFile"><a href="?path={$srcdir_url}">{$srcdir_html}</a></td>
83                <td class="coverBar">$bar</td>
84                <td class="coverNum{$class}">{$hits}</td>
85                <td class="coverNum{$class}">{$total}</td>
86                <td class="coverNum{$class}">{$todos}</td>
87            </tr>
88EOS;
89        }
90        else {
91            return <<<EOS
92            <tr $c>
93                <td class="coverFile">{$srcdir_html}</td>
94                <td class="coverBar"></td>
95                <td class="coverNumLo"></td>
96                <td class="coverNumLo"></td>
97                <td class="coverNumLo">{$todos}</td>
98            </tr>
99EOS;
100        }
101    }
102}
103
104function dir_foot()
105{
106    return <<<EOS
107    </table>
[530]108</div>
[33]109EOS;
110}
111
112function file_head()
113{
114    global $cycle;
115    $cycle = new Cycle('class="col1"', 'class="col2"');
[124]116    $l_fil = _T("File");
117    $l_per = _T("Percent");
118    $l_hit = _T("Hits");
119    $l_lns = _T("Lines");
[33]120    return <<<EOS
[530]121<div class="center-table">
122    <table cellpadding="2" cellspacing="0" border="0" class="cycles center">
[33]123    <tr>
[124]124        <th>{$l_fil}</th><th>{$l_per}</th><th>{$l_hit}</th><th>{$l_lns}</th>
[33]125    </tr>
126EOS;
127}
128
129function file_row($info, $srcfile)
130{
131    global $cycle;
132
133    $c = $cycle->next();
134    $srcfile_html = htmlspecialchars($srcfile);
135    $total = number_format($info['total']);
136    if ($info['total']) {
137        $hits = number_format($info['hits']);
138        $srcfile_url = urlencode($srcfile);
139        calc_percent($info, $percent, $class);
140        $bar = bar($percent, $class);
141        return <<<EOS
142            <tr $c>
143                    <td class="coverFile"><a href="?path={$srcfile_url}">{$srcfile_html}</a></td>
144                    <td class="coverBar">$bar</td>
145                    <td class="coverNum{$class}">{$hits}</td>
146                    <td class="coverNum{$class}">{$total}</td>
147            </tr>
148EOS;
149    }
150    else {
151        return <<<EOS
152            <tr $c>
153                    <td class="coverFile">{$srcfile_html}</a></td>
154                    <td class="coverBar"></td>
155                    <td class="coverNumLo"></td>
156                    <td class="coverNumLo">{$total}</td>
157            </tr>
158EOS;
159    }
160}
161
162function file_foot()
163{
164    return <<<EOS
165    </table>
[530]166</div>
[33]167EOS;
168}
169
[124]170$l_root = _T("root");
[33]171if ($action == 'dir') {
[124]172    if (function_exists('ob_filter_path_nicer')) {
173        ob_start('ob_filter_path_nicer');
174    }
[33]175    $path_html = htmlspecialchars($path);
176    echo <<<EOS
[530]177    <div>
178        <a href="?">$l_root</a> $path<br />
179    </div>
[33]180EOS;
181    echo dir_head($dirinfo);
182    echo dir_row($dirinfo, $path);
183    echo dir_foot($dirinfo);
184    if ($dirinfo['subdirs']) {
185        echo dir_head();
186        foreach ($dirinfo['subdirs'] as $srcdir => $info) {
187            echo dir_row($info, $srcdir);
188        }
189        echo dir_foot();
190    }
191    if ($dirinfo['files']) {
192        echo file_head();
193        foreach ($dirinfo['files'] as $srcfile => $info) {
194            echo file_row($info, $srcfile);
195        }
196        echo file_foot();
197    }
198}
199else if ($action == 'file') {
[124]200    if (function_exists('ob_filter_path_nicer')) {
201        ob_start('ob_filter_path_nicer');
202    }
[33]203    $dir_url = urlencode($dir);
204    $dir_html = htmlspecialchars($dir);
205    echo <<<EOS
[530]206    <div>
207        <a href="?">$l_root</a> <a href="?path={$dir_url}">{$dir_html}</a>/<strong>{$filename}</strong><br />
208    </div>
[33]209EOS;
210
211    echo file_head();
212    echo file_row($fileinfo, $path);
213    echo file_foot();
214
215    if ($tplfile) {
216        $tplfile_html = htmlspecialchars($tplfile);
217        echo <<<EOS
[530]218        <div>
219            <a href="#tpl">{$tplfile_html}</a><br />
220        </div>
[33]221EOS;
222    }
[124]223    if (function_exists('ob_filter_path_nicer')) {
224        ob_end_flush();
225    }
[33]226    echo <<<EOS
[530]227    <div class="code">
228        <ol>{$filecov}</ol>
229    </div>
[33]230EOS;
231    if ($tplfile) {
232        echo <<<EOS
233    <a name="tpl">{$tplfile}</a>
[530]234    <div class="code">
235        <ol>{$tplcov}</ol>
236    </div>
[33]237EOS;
238    }
239}
240else {
[185]241    $error_html = htmlspecialchars($error);
242    echo <<<EOS
243    <span class="error">{$error_html}</span>
244EOS;
[33]245}
246?>
247
[124]248<div class="footnote">
249Powered By: XCache <?php echo $xcache_version; ?> coverager <?php echo _T("module"); ?>
250</div>
251
[33]252</body>
253</html>
Note: See TracBrowser for help on using the repository browser.