Commit 202e9241 authored by David Read's avatar David Read
Browse files

[noticket] Remove old qa templates. We now use those in ckanext-qa that use ckanext-report.

parent 39c42b75
<html xmlns:py="http://genshi.edgewall.org/"
xmlns:i18n="http://genshi.edgewall.org/i18n"
xmlns:xi="http://www.w3.org/2001/XInclude"
py:strip="">
<xi:include href="../../../../_dgu_util.html" />
<py:def function="page_title">Quality Assurance</py:def>
<py:def function="optional_head">
<link type="text/css" rel="stylesheet" media="all" href="/css/ckanext-qa.css" />
</py:def>
<py:match path="breadcrumbs">
<li><a href="/data/search">Datasets</a></li>
<li><a href="${h.url_for('qa_dataset_action_reports', action='broken_resource_links')}">Broken links by dataset</a></li>
</py:match>
<div py:match="content">
<a href="${h.url_for('qa_api_resources_formatted', action='broken_resource_links_by_dataset', format='csv')}" class="btn btn-primary pull-right" style="margin-bottom:8px;">
<div class="download">
<i class="icon-download"></i>&nbsp;
Download as CSV
</div>
</a>
<h1>Datasets with broken resources</h1>
<h2>Last generated: ${h.render_datetime(h.report_generated_at('organisations_with_broken_resource_links',), with_hours=True)}</h2>
<div class="qa-content">
<table class="table table-bordered table-condensed" style="width: 100%; table-layout: fixed;">
<tr>
<th class="qa-table-name" style="width: 180px;">Dataset</th>
<th class="qa-table-resources" style="width: 450px">Resource URL</th>
<th class="qa-table-resources" style="width: 120px">Reason</th>
</tr>
<py:for each="package in c.packages">
<py:for each="resource in package.resources">
<tr>
<td>${h.link_to(package.title, h.url_for(controller='package', action='read', id=package.name))}</td>
<td style="width: 450px; word-wrap: break-word;"><a href="${resource.get('url', '')}">${resource.get('url', '')}</a></td>
<td>${resource.get('openness_score_reason', '')}</td>
</tr>
</py:for>
</py:for>
</table>
<py:if test="not c.packages">
<p>No datasets with at least one broken resource found.</p>
</py:if>
</div>
</div>
<xi:include href="../../../../layout.html" />
</html>
<html xmlns:py="http://genshi.edgewall.org/"
xmlns:i18n="http://genshi.edgewall.org/i18n"
xmlns:xi="http://www.w3.org/2001/XInclude"
py:strip="">
<xi:include href="../../_dgu_util.html" />
<py:def function="page_title">Quality Assurance</py:def>
<py:def function="body_class">no-sidebar</py:def>
<py:def function="page_heading">Quality Assurance</py:def>
<py:def function="optional_head">
<link type="text/css" rel="stylesheet" media="all" href="/css/ckanext-qa.css" />
</py:def>
<py:match path="breadcrumbs">
<li><a href="/data/search">Datasets</a></li>
<li><a href="${h.url_for('reports')}">Reports</a></li>
<li><a href="${h.url_for('qa')}">Quality Assurance</a></li>
</py:match>
<div py:match="content">
<div class="qa-content boxed">
<ul>
<li>${h.link_to("Publisher openness scores", h.url_for('qa_organisation_action_reports', action='scores'))}</li>
<li>${h.link_to("Datasets with broken resource links", h.url_for('qa_dataset_action_reports', action='broken_resource_links'))}</li>
<li py:if="c.organisations">
${h.link_to("Organisations whose datasets contain broken resource links", h.url_for('qa_organisation_action_reports', action='broken_resource_links'))}
</li>
</ul>
</div>
</div>
<xi:include href="../../layout.html" />
</html>
<html xmlns:py="http://genshi.edgewall.org/"
xmlns:i18n="http://genshi.edgewall.org/i18n"
xmlns:xi="http://www.w3.org/2001/XInclude"
py:strip="">
<xi:include href="../../../../_dgu_util.html" />
<py:def function="page_title">Quality Assurance</py:def>
<py:def function="optional_head">
<script type="text/javascript" src="http://assets.okfn.org/ext/flot/0.6/jquery.flot.min.js">
</script>
<link type="text/css" rel="stylesheet" media="all" href="/css/ckanext-qa.css" />
</py:def>
<py:match path="breadcrumbs">
<li><a href="/data/search">Datasets</a></li>
<li><a href="/data/reports">Publishers</a></li>
<li><a href="${h.url_for('qa_organisation_action_reports', action='broken_resource_links')}">Broken links by publisher</a></li>
</py:match>
<div py:match="content">
<a href="${h.url_for('qa_api_resource_formatted', action=c.query.__name__, id='report', format='csv', include_sub_publishers='1' if c.include_sub_publishers else '0')}" class="btn btn-primary pull-right">
<div class="download">
<i class="icon-download"></i>&nbsp;
Download as CSV
</div>
</a>
<h1>Publishers with broken resource links</h1>
<h2>Last generated: ${h.render_datetime(h.report_generated_at('organisations_with_broken_resource_links',withsub=c.include_sub_publishers), with_hours=True)}</h2>
<div class="qa-content">
<py:if test="not c.organisations">
<p>No organizations that have published datasets with broken resource links found.</p>
</py:if>
<py:if test="c.organisations">
<div>
<form action="">
<label class="checkbox">
<input type="checkbox" name="checkbox-submit-on-change" value="${'?' if c.include_sub_publishers else '?include_sub_publishers=1'}" class="inline" py:attrs="{'checked': 'checked'} if c.include_sub_publishers else {}"/>
Include results from sub-publishers
</label>
</form>
</div>
<table class="table table-bordered table-condensed tablesorter" id="report-table">
<thead>
<tr>
<th>Publisher</th>
<th>Number of datasets with broken links</th>
<th>Total broken links</th>
</tr>
</thead>
<tbody>
<tr py:for="row in c.organisations">
<td>${h.link_to(row['publisher_title'], h.url_for('qa_organisation_action_id_reports', action='broken_resource_links', id=row['publisher_name'], include_sub_publishers='1' if c.include_sub_publishers else '0'))}</td>
<td>${row['broken_package_count']}</td>
<td>${row['broken_resource_count']}</td>
</tr>
</tbody>
</table>
</py:if>
</div>
</div>
<py:def function="optional_footer">
<script type="text/javascript" src="/scripts/vendor/jquery.tablesorter.min.js"></script>
<script type="text/javascript">
//<![CDATA[
$(document).ready(function()
{
$("#report-table").tablesorter({
dateFormat: "uk",
});
}
);
// ]]>
</script>
</py:def>
<xi:include href="../../../../layout_base.html" />
</html>
<html xmlns:py="http://genshi.edgewall.org/"
xmlns:i18n="http://genshi.edgewall.org/i18n"
xmlns:xi="http://www.w3.org/2001/XInclude"
py:strip="">
<xi:include href="../../../../_dgu_util.html" />
<py:def function="page_title">Quality Assurance</py:def>
<py:def function="optional_head">
<link type="text/css" rel="stylesheet" media="all" href="/css/ckanext-qa.css" />
</py:def>
<py:match path="breadcrumbs">
<li><a href="/publisher">Publishers</a></li>
<li><a href="/publisher/${c.data['publisher_name']}">${c.data['publisher_title']}</a></li>
<li><a href="${h.url_for('qa_organisation_action_reports', action='broken_resource_links')}">Broken links</a></li>
</py:match>
<div py:match="content">
<a href="${h.url_for('qa_api_resource_formatted', action=c.query.__name__, id=c.org_name, format='csv', include_sub_publishers='1' if c.include_sub_publishers else '0')}" class="btn btn-primary pull-right">
<div class="download">
<i class="icon-download"></i>&nbsp;
Download as CSV
</div>
</a>
<h1>Broken resource links <small>${c.data['publisher_title']}</small></h1>
<p>Report updated: ${h.render_datetime(h.report_generated_at('broken-link-report',c.org_name, withsub=c.include_sub_publishers), with_hours=True)}</p>
<div class="qa-content ">
<py:if test="(not c.data) or (not c.data['data'])">
<p>
No results found for this publisher<py:if test="c.include_sub_publishers"> and its subpublishers</py:if>.
</p>
</py:if>
<h2>
${len(c.data['data'])} results
</h2>
<div>
<form action="">
<label class="checkbox">
<input type="checkbox" name="checkbox-submit-on-change" value="${'?' if c.include_sub_publishers else '?include_sub_publishers=1'}" class="inline" py:attrs="{'checked': 'checked'} if c.include_sub_publishers else {}"/>
Include results from sub-publishers
</label>
</form>
</div>
<py:if test="c.data and c.data['data']">
<table class="table table-bordered table-condensed tablesorter" id="report-table" style="width: 100%; table-layout: fixed;">
<thead>
<tr class="js-tooltip">
<th >Dataset</th>
<th py:if="c.include_sub_publishers">Publisher</th>
<th title="Index/position of the resource in the dataset">Resource (number)</th>
<th >URL</th>
<th style="">Status</th>
<th >Reason</th>
<th title="Failed download attempts">No. of fails</th>
<th title="First failed attempt">First fail</th>
<th title="Most recent failed attempt">Latest fail</th>
<th title="The last time it was successfully obtained">Last success</th>
<th title="Where the data was harvested from">Via</th>
</tr>
</thead>
<tbody>
<tr py:for="row_dict in c.data['data']">
<td><a href="${h.url_for(controller='package', action='read', id=row_dict['dataset_name'])}">${row_dict['dataset_title']}</a></td>
<td py:if="c.include_sub_publishers"><a href="/publisher/${row_dict['publisher_name']}">${row_dict['publisher_title']}</a></td>
<td><a href="/dataset/${row_dict['dataset_name']}/resource/${row_dict['resource_id']}">${row_dict['resource_position']}</a></td>
<td><a href="${row_dict['resource_url']}" style="word-wrap:break-word;">${row_dict['resource_url']}</a>${' (NB has changed since)' if row_dict['url_up_to_date'] == False else ''}</td>
<td>${row_dict.get('status', 'not recorded')}</td>
<td>${row_dict.get('reason', 'not recorded')}</td>
<td>${row_dict.get('failure_count', 'not recorded')}</td>
<td>${row_dict.get('first_failure').strftime('%d/%m/%y %H:%M') if row_dict.get('first_failure') else 'not recorded'}</td>
<td>${row_dict.get('last_updated').strftime('%d/%m/%y %H:%M') if row_dict.get('last_updated') else 'not recorded'}</td>
<td>${row_dict.get('last_success').strftime('%d/%m/%y %H:%M') if row_dict.get('last_success') else 'not recorded'}</td>
<td>${row_dict.get('via', '')}</td>
</tr>
</tbody>
</table>
</py:if>
</div>
</div>
<py:def function="optional_footer">
<script type="text/javascript" src="/scripts/vendor/jquery.tablesorter.min.js"></script>
<script type="text/javascript">
//<![CDATA[
$(document).ready(function()
{
$("#report-table").tablesorter({
dateFormat: "uk",
});
}
);
// ]]>
</script>
</py:def>
<xi:include href="../../../../layout_base.html" />
</html>
<html xmlns:py="http://genshi.edgewall.org/"
xmlns:i18n="http://genshi.edgewall.org/i18n"
xmlns:xi="http://www.w3.org/2001/XInclude"
py:strip="">
<xi:include href="../../../../_dgu_util.html" />
<py:def function="page_title">Organisation scores - QA</py:def>
<py:def function="body_class">no-sidebar</py:def>
<py:def function="page_heading">
</py:def>
<py:def function="optional_head">
<link type="text/css" rel="stylesheet" media="all" href="/css/ckanext-qa.css" />
</py:def>
<py:match path="breadcrumbs">
<li><a href="/data/search">Datasets</a></li>
<li><a href="${h.url_for('qa_organisation_action_reports', action='scores')}">Openness Scores</a></li>
</py:match>
<div py:match="content">
<a href="${h.url_for('qa_api_resources_formatted', action=c.query.__name__, format='csv', include_sub_publishers='1' if c.include_sub_publishers else '0')}" class="btn btn-primary pull-right">
<div class="download">
<i class="icon-download"></i>&nbsp;
Download as CSV
</div>
</a>
<h1>Publisher openness scores</h1>
<h2>Last generated: ${h.render_datetime(h.report_generated_at('organisation_score_summaries', withsub=c.include_sub_publishers), with_hours=True)}</h2>
<div class="qa-content">
<py:if test="(not c.organisations)">
<p>No results found.</p>
</py:if>
<py:if test="c.organisations">
<div>
<form action="">
<label class="checkbox">
<input type="checkbox" name="checkbox-submit-on-change" value="${'?' if c.include_sub_publishers else '?include_sub_publishers=1'}" class="inline" py:attrs="{'checked': 'checked'} if c.include_sub_publishers else {}"/>
Include results from sub-publishers
</label>
</form>
</div>
<p>Note: Results are calculated using the search index, which may not always agree 100% with the results given in the individual publishers. For the definitive scores, click on a publisher.</p>
<table class="table table-bordered table-condensed tablesorter" id="report-table" style="width: 100%;">
<thead>
<tr class="js-tooltip">
<th style="">Publisher</th>
<th style="">Number of datasets</th>
<th style="">Score TBC</th>
<th style="">Score 0</th>
<th style="">Score 1</th>
<th style="">Score 2</th>
<th style="">Score 3</th>
<th style="">Score 4</th>
<th style="">Score 5</th>
<th style="">Total stars</th>
<th style="">Average score</th>
</tr>
</thead>
<tbody>
<tr py:for="row_dict in c.organisations">
<td>${h.link_to(row_dict['publisher_title'], h.url_for('qa_organisation_action_id_reports', action='scores', id=row_dict['publisher_name'], include_sub_publishers='1' if c.include_sub_publishers else '0'))}</td>
<td>${row_dict['dataset_count']}</td>
<td>${row_dict['TBC']}</td>
<td>${row_dict['0']}</td>
<td>${row_dict['1']}</td>
<td>${row_dict['2']}</td>
<td>${row_dict['3']}</td>
<td>${row_dict['4']}</td>
<td>${row_dict['5']}</td>
<td>${row_dict['total_stars']}</td>
<td>${'%.1f' % row_dict['average_stars']}</td>
</tr>
</tbody>
</table>
</py:if>
</div>
</div>
<py:def function="optional_footer">
<script type="text/javascript" src="/scripts/vendor/jquery.tablesorter.min.js"></script>
<script type="text/javascript">
//<![CDATA[
$(document).ready(function()
{
$("#report-table").tablesorter({
dateFormat: "uk",
});
}
);
// ]]>
</script>
</py:def>
<xi:include href="../../../../layout_base.html" />
</html>
<html xmlns:py="http://genshi.edgewall.org/"
xmlns:i18n="http://genshi.edgewall.org/i18n"
xmlns:xi="http://www.w3.org/2001/XInclude"
py:strip="">
<xi:include href="../../../../_dgu_util.html" />
<py:def function="page_title">${c.data['publisher_title']} scores - QA</py:def>
<py:def function="body_class">no-sidebar</py:def>
<py:def function="page_heading">
</py:def>
<py:def function="optional_head">
<link type="text/css" rel="stylesheet" media="all" href="/css/ckanext-qa.css" />
</py:def>
<py:match path="breadcrumbs">
<li><a href="/data/search">Datasets</a></li>
<li><a href="/publisher/${c.data['publisher_name']}">${c.data['publisher_title']}</a></li>
<li><a href="${h.url_for('qa_organisation_action_reports', action='scores')}">Openness Scores</a></li>
</py:match>
<div py:match="content">
<a href="${h.url_for('qa_api_resource_formatted', action=c.query.__name__, id=c.org_name, format='csv', include_sub_publishers='1' if c.include_sub_publishers else '0')}" class="btn btn-primary pull-right">
<div class="download">
<i class="icon-download"></i>&nbsp;
Download as CSV
</div>
</a>
<h1>Openness scores <small>${c.data['publisher_title']}</small></h1>
<h2>Last generated: ${h.render_datetime(h.report_generated_at('openness-report', c.org_name, withsub=c.include_sub_publishers), with_hours=True)}</h2>
<div class="qa-content">
<py:if test="(not c.data) or (not c.data['data'])">
<p>No results found for this publisher.</p>
</py:if>
<py:if test="c.data and c.data['data']">
<div>
<form action="">
<label class="checkbox">
<input type="checkbox" name="checkbox-submit-on-change" value="${'?' if c.include_sub_publishers else '?include_sub_publishers=1'}" class="inline" py:attrs="{'checked': 'checked'} if c.include_sub_publishers else {}"/>
Include results from sub-publishers
</label>
</form>
</div>
<p>Notes:
<ul>
<li>Missing from this list are datasets with no resources, which will score 0.</li>
<li>Note: Where a dataset has multiple resources, the highest scoring one is shown.</li>
</ul>
</p>
<table class="table table-bordered table-condensed tablesorter" id="report-table" style="width: 100%; table-layout: fixed;">
<thead>
<tr class="js-tooltip">
<th style="">Dataset</th>
<th py:if="c.include_sub_publishers">Publisher</th>
<th title="Index/position of the resource in the dataset">Index</th>
<th style="">URL</th>
<th >Score</th>
<th style="">Reason</th>
<th style="">Updated</th>
</tr>
</thead>
<tbody>
<tr py:for="row_dict in c.data['data']">
<td><a href="${h.url_for(controller='package', action='read', id=row_dict['dataset_name'])}">${row_dict['dataset_title']}</a></td>
<td py:if="c.include_sub_publishers"><a href="/publisher/${row_dict['publisher_name']}">${row_dict['publisher_title']}</a></td>
<td><a href="/dataset/${row_dict['dataset_name']}/resource/${row_dict['resource_id']}">${row_dict['resource_position']}</a></td>
<td><a href="${row_dict['resource_url']}" style="word-wrap:break-word;">${row_dict['resource_url']}</a></td>
<td>${row_dict.get('openness_score', 'not recorded')}</td>
<td>${row_dict.get('openness_score_reason', 'not recorded')}</td>
<td>${row_dict.get('last_updated').strftime('%d/%m/%y %H:%M') if row_dict.get('last_updated') else 'not recorded'}</td>
</tr>
</tbody>
</table>
</py:if>
</div>
</div>
<py:def function="optional_footer">
<script type="text/javascript" src="/scripts/vendor/jquery.tablesorter.min.js"></script>
<script type="text/javascript">
//<![CDATA[
$(document).ready(function()
{
$("#report-table").tablesorter({
dateFormat: "uk",
});
}
);
// ]]>
</script>
</py:def>
<xi:include href="../../../../layout_base.html" />
</html>
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment