gitinspector/gitinspector/html/html.header

298 lines
8.8 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="content-type" content="application/xhtml+xml; charset=utf-8" />
<title>Generated by gitinspector {version}</title>
<script type="application/javascript"{jquery}</script>
<script type="application/javascript">{jquery_tablesorter}</script>
<script type="application/javascript">{jquery_flot}</script>
<script type="application/javascript">{jquery_flot_pie}</script>
<script type="application/javascript">
$(document).ready(function() {{
var row = 0;
var MINOR_AUTHOR_PERCENTAGE = 1.00;
var isReversed = false;
var colorRows = function() {{
$(this).removeClass("odd");
if (row++ % 2 == 1) {{
$(this).addClass("odd");
}}
if(this == $(this).parent().find("tr:visible").get(-1)) {{
row = 0;
}}
}}
var filterResponsibilities = function() {{
$("table#blame tbody tr td:last-child").filter(function() {{
return parseFloat(this.innerHTML) < MINOR_AUTHOR_PERCENTAGE;
}}).parent().find("td:first-child").each(function() {{
$("div#responsibilities div h3:contains(\"" + $(this).text() + "\")").parent().hide();
}});
}}
var filterTimeLine = function() {{
$("div#timeline table.git tbody tr").filter(function() {{
return $(this).find("td:has(div)").length == 0;
}}).hide();
}}
$("table#changes tbody tr td:last-child").filter(function() {{
return parseFloat(this.innerHTML) < MINOR_AUTHOR_PERCENTAGE;
}}).parent().hide();
$("table#blame tbody tr td:last-child").filter(function() {{
return parseFloat(this.innerHTML) < MINOR_AUTHOR_PERCENTAGE;
}}).parent().hide();
$("table.git tbody tr:visible").each(colorRows);
$("table#changes, table#blame").tablesorter({{
sortList: [[0,0]],
headers: {{
0: {{ sorter: "text" }}
}}
}}).bind("sortEnd", function() {{
$(this).find("tbody tr:visible").each(colorRows);
}});
$("table#changes thead tr th, table#blame thead tr th").click(function() {{
$(this).parent().find("th strong").remove();
var parentIndex = $(this).index();
if (this.isReversed) {{
$(this).append("<strong> &and;</strong>");
}} else {{
$(this).append("<strong> &or;</strong>");
}}
this.isReversed = !this.isReversed;
}});
$("table#changes thead tr th:first-child, table#blame thead tr th:first-child").each(function() {{
this.isReversed = true;
$(this).append("<strong> &or;</strong>");
}});
$("table.git tfoot tr td:first-child").filter(function() {{
this.hiddenCount = $(this).parent().parent().parent().find("tbody tr:hidden").length;
return this.hiddenCount > 0;
}}).each(function() {{
$(this).addClass("hoverable");
this.innerHTML = "{show_minor_authors} (" + this.hiddenCount + ") &or;";
}}).toggle(function() {{
this.innerHTML = "{hide_minor_authors} (" + this.hiddenCount + ") &and;";
$(this).parent().parent().parent().find("tbody tr").show().each(colorRows);
}}, function() {{
this.innerHTML = "{show_minor_authors} (" + this.hiddenCount + ") &or;";
$(this).parent().parent().parent().find("tbody tr td:last-child").filter(function() {{
return parseFloat(this.innerHTML) < MINOR_AUTHOR_PERCENTAGE;
}}).parent().hide();
$("table.git tbody tr:visible").each(colorRows);
}});
filterResponsibilities();
var hiddenResponsibilitiesCount = $("div#responsibilities div h3:hidden").length;
if (hiddenResponsibilitiesCount > 0) {{
$("div#responsibilities div h3:visible").each(colorRows);
$("div#responsibilities").prepend("<div class=\"button\">{show_minor_authors} (" + hiddenResponsibilitiesCount + ") &or;</div>");
$("div#responsibilities div.button").toggle(function() {{
this.innerHTML = "{hide_minor_authors} (" + hiddenResponsibilitiesCount + ") &and;";
$("div#responsibilities div").show();
}}, function() {{
this.innerHTML = "{show_minor_authors} (" + hiddenResponsibilitiesCount + ") &or;";
filterResponsibilities();
}});
}}
filterTimeLine();
var hiddenTimelineCount = $("div#timeline table.git tbody tr:hidden").length;
if (hiddenTimelineCount > 0) {{
$("div#timeline table.git tbody tr:visible").each(colorRows);
$("div#timeline").prepend("<div class=\"button\">{show_minor_rows} (" + hiddenTimelineCount + ") &or;</div>");
$("div#timeline div.button").toggle(function() {{
this.innerHTML = "{hide_minor_rows} (" + hiddenTimelineCount + ") &and;";
$("div#timeline table.git tbody tr").show().each(colorRows);
}}, function() {{
this.innerHTML = "{show_minor_rows} (" + hiddenTimelineCount + ") &or;";
filterTimeLine();
$("div#timeline table.git tbody tr:visible").each(colorRows);
}});
}}
$("#blame_chart, #changes_chart").bind("plothover", function(event, pos, obj) {{
if (obj) {{
var selection = "table tbody tr td:contains(\"" + obj.series.label + "\")";
var element = $(this).parent().find(selection);
if (element) {{
if (this.hoveredElement && this.hoveredElement.html() != element.parent().html()) {{
this.hoveredElement.removeClass("piehover");
}}
element.parent().addClass("piehover");
this.hoveredElement = element.parent();
}}
}} else if (this.hoveredElement) {{
this.hoveredElement.removeClass("piehover");
}}
}});
}});
</script>
<style type="text/css">
body {{
background: -webkit-linear-gradient(left, #8f8a9a, #dad2d7, #8f8a9a);
background: -moz-linear-gradient(left, #8f8a9a, #dad2d7, #8f8a9a);
}}
html, body {{
margin: 0;
height: 100%;
font-family: "Arial";
}}
body > div {{
margin: 0 auto;
width: 58em;
}}
div.box {{
border: 4px solid #ddd;
background-color: #eee;
margin: 0.75em;
padding: 5px;
font-size: small;
border-radius: 15px;
-moz-border-radius: 15px;
box-shadow: 1px 1px 3px #666;
-moz-box-shadow: 1px 1px 3px #666;
}}
div.logo p {{
margin-top: 18px;
}}
div.logo img {{
float: left;
padding: 2px 10px 2px 2px;
}}
body > div {{
display: block-inline;
}}
body > div > div > div {{
position: relative;
width: 100%;
min-height: 215px;
}}
table.git {{
font-size: small;
width: 65%;
padding-right: 5px;
}}
table.full {{
width: 100%;
}}
table.git th, table.git tfoot tr td {{
padding: 0.3em;
background-color: #ddcece;
border-radius: 8px 8px 0px 0px;
-moz-border-radius: 8px 8px 0px 0px;
}}
table#changes thead tr th, table#blame thead tr th, table.git tfoot tr td {{
border: 1px solid #eee;
text-align: center;
}}
table.git tfoot tr td {{
border-radius: 0px 0px 8px 8px;
-moz-border-radius: 0px 0px 8px 8px;
text-align: center;
}}
table.git td, table.git th, table#timeline td, table#timeline th {{
padding: 0.35em;
height: 2em;
}}
table.git td div.insert {{
background-color: #7a7;
}}
table.git td div.remove {{
background-color: #c66;
}}
table.git td div.insert, table.git td div.remove {{
height: 100%;
float: left;
}}
table.git tr.odd {{
background-color: #dbdbdb;
}}
table.git tr.piehover {{
background-color: #dddece;
}}
div.chart {{
position: absolute;
top: 5px;
bottom: 5px;
right: 0px;
width: 35%;
font-size: x-small;
height: 210px;
}}
p.error {{
color: #700;
}}
table#changes thead tr th:hover, table#blame thead tr th:hover,
table#changes tfoot tr td.hoverable:hover, table#blame tfoot tr td.hoverable:hover,
div.button:hover, div#responsibilities div.button:hover {{
background-color: #eddede;
border: 1px solid #bbb;
cursor: hand;
}}
div#responsibilities div, div#responsibilities div div {{
min-height: 0px;
padding: 0.5em 0.2em;
width: auto;
}}
div#responsibilities div.odd {{
background-color: #dbdbdb;
}}
div#responsibilities p {{
margin-bottom: 0px;
}}
td img, h3 img {{
border-radius: 3px 3px 3px 3px;
-moz-border-radius: 3px 3px 3px 3px;
vertical-align: middle;
margin-right: 0.4em;
opacity: 0.85;
}}
td img {{
width: 20px;
height: 20px;
}}
h3 img {{
width: 32px;
height: 32px;
}}
h3 {{
border-radius: 8px 8px 8px 8px;
-moz-border-radius: 8px 8px 8px 8px;
background-color: #ddcece;
margin-bottom: 0.2em;
margin-top: 0.6em;
}}
div.button, div#responsibilities div.button {{
border-radius: 8px 8px 8px 8px;
-moz-border-radius: 8px 8px 8px 8px;
border: 1px solid #eee;
float: right;
width: auto;
padding: 0.5em;
background-color: #ddcece;
min-height: 0;
}}
</style>
</head>
<body>
<div><div class="box logo">
<img src="data:image/png;base64,{logo}" />
<p>{logo_text}<p>
</div></div>