mirror of
https://github.com/pa11y/pa11y-dashboard.git
synced 2025-09-24 22:31:15 +00:00
Add "unigore" buttons to ignored rules
This commit is contained in:
1
app.js
1
app.js
@@ -80,6 +80,7 @@ function initApp (config, callback) {
|
||||
require('./route/task/run')(app);
|
||||
require('./route/task/edit')(app);
|
||||
require('./route/task/ignore')(app);
|
||||
require('./route/task/unignore')(app);
|
||||
}
|
||||
|
||||
// Error handling
|
||||
|
@@ -26,6 +26,7 @@ function route (app) {
|
||||
added: (typeof req.query.added !== 'undefined'),
|
||||
running: (typeof req.query.running !== 'undefined'),
|
||||
ruleIgnored: (typeof req.query['rule-ignored'] !== 'undefined'),
|
||||
ruleUnignored: (typeof req.query['rule-unignored'] !== 'undefined'),
|
||||
hasOneResult: (presentedResults.length < 2),
|
||||
isTaskPage: true
|
||||
});
|
||||
|
31
route/task/unignore.js
Normal file
31
route/task/unignore.js
Normal file
@@ -0,0 +1,31 @@
|
||||
'use strict';
|
||||
|
||||
var _ = require('underscore');
|
||||
var presentTask = require('../../view/presenter/task');
|
||||
var getStandards = require('../../data/standards');
|
||||
|
||||
module.exports = route;
|
||||
|
||||
// Route definition
|
||||
function route (app) {
|
||||
|
||||
app.express.post('/:id/unignore', function (req, res, next) {
|
||||
app.webservice.task(req.params.id).get({}, function (err, task) {
|
||||
if (err) {
|
||||
return next();
|
||||
}
|
||||
var edit = {
|
||||
name: task.name,
|
||||
ignore: task.ignore
|
||||
};
|
||||
var indexOfRule = edit.ignore.indexOf(req.body.rule);
|
||||
if (typeof req.body.rule === 'string' && indexOfRule !== -1) {
|
||||
edit.ignore.splice(indexOfRule, 1);
|
||||
}
|
||||
app.webservice.task(req.params.id).edit(edit, function () {
|
||||
res.redirect('/' + req.params.id + '?rule-unignored');
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
}
|
@@ -49,7 +49,7 @@
|
||||
<p>{{message}}</p>
|
||||
{{#unless readonly}}
|
||||
{{#if ../../isTaskPage}}
|
||||
<form action="/{{../../../task.id}}/ignore" method="post">
|
||||
<form action="{{../../../task.hrefIgnore}}" method="post">
|
||||
<input type="hidden" name="rule" value="{{code}}"/>
|
||||
<input type="submit" class="btn btn-sm" value="Ignore rule"/>
|
||||
</form>
|
||||
@@ -77,7 +77,7 @@
|
||||
<p>{{message}}</p>
|
||||
{{#unless readonly}}
|
||||
{{#if ../../isTaskPage}}
|
||||
<form action="/{{../../../task.id}}/ignore" method="post">
|
||||
<form action="{{../../../task.hrefIgnore}}" method="post">
|
||||
<input type="hidden" name="rule" value="{{code}}"/>
|
||||
<input type="submit" class="btn btn-sm" value="Ignore rule"/>
|
||||
</form>
|
||||
@@ -106,7 +106,7 @@
|
||||
<p>{{message}}</p>
|
||||
{{#unless readonly}}
|
||||
{{#if ../../isTaskPage}}
|
||||
<form action="/{{../../../task.id}}/ignore" method="post">
|
||||
<form action="{{../../../task.hrefIgnore}}" method="post">
|
||||
<input type="hidden" name="rule" value="{{code}}"/>
|
||||
<input type="submit" class="btn btn-sm" value="Ignore rule"/>
|
||||
</form>
|
||||
@@ -134,6 +134,14 @@
|
||||
{{#if description}}
|
||||
<p>{{description}}</p>
|
||||
{{/if}}
|
||||
{{#unless readonly}}
|
||||
{{#if ../../isTaskPage}}
|
||||
<form action="{{../../../task.hrefUnignore}}" method="post">
|
||||
<input type="hidden" name="rule" value="{{name}}"/>
|
||||
<input type="submit" class="btn btn-sm" value="Unignore rule"/>
|
||||
</form>
|
||||
{{/if}}
|
||||
{{/unless}}
|
||||
</li>
|
||||
{{/mainResult.ignore}}
|
||||
</ul>
|
||||
|
@@ -14,6 +14,8 @@ function presentTask (task) {
|
||||
task.hrefRun = '/' + task.id + '/run';
|
||||
task.hrefJson = '/' + task.id + '.json';
|
||||
task.hrefEdit = '/' + task.id + '/edit';
|
||||
task.hrefIgnore = '/' + task.id + '/ignore';
|
||||
task.hrefUnignore = '/' + task.id + '/unignore';
|
||||
|
||||
// Enhance the ignored rules
|
||||
task.ignore = presentIgnoreRules(task.ignore);
|
||||
|
@@ -39,6 +39,19 @@
|
||||
</div>
|
||||
{{/ruleIgnored}}
|
||||
|
||||
{{#ruleUnignored}}
|
||||
<div class="col-md-12 clearfix" data-test="alert">
|
||||
<div class="alert alert-success">
|
||||
<button aria-hidden="true" data-dismiss="alert" class="close" type="button">×</button>
|
||||
<strong>Rule unignored!</strong>
|
||||
<p>
|
||||
You've removed an ignored accessibility rule for this URL.
|
||||
<a href="{{task.hrefRun}}">Click here to generate results with the ignored rule included again</a>
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
{{/ruleUnignored}}
|
||||
|
||||
{{> task-header}}
|
||||
|
||||
{{#if results}}
|
||||
|
Reference in New Issue
Block a user