diff --git a/app.js b/app.js index 33dff36..0cfe613 100644 --- a/app.js +++ b/app.js @@ -79,6 +79,7 @@ function initApp (config, callback) { require('./route/task/delete')(app); require('./route/task/run')(app); require('./route/task/edit')(app); + require('./route/task/ignore')(app); } // Error handling diff --git a/route/task/ignore.js b/route/task/ignore.js new file mode 100644 index 0000000..d6b79c6 --- /dev/null +++ b/route/task/ignore.js @@ -0,0 +1,30 @@ +'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/ignore', 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 + }; + if (typeof req.body.rule === 'string') { + edit.ignore.push(req.body.rule); + } + app.webservice.task(req.params.id).edit(edit, function () { + res.redirect('/' + req.params.id + '?rule-ignored'); + }); + }); + }); + +} diff --git a/route/task/index.js b/route/task/index.js index 1539864..076f688 100644 --- a/route/task/index.js +++ b/route/task/index.js @@ -25,6 +25,7 @@ function route (app) { mainResult: task.lastResult || null, added: (typeof req.query.added !== 'undefined'), running: (typeof req.query.running !== 'undefined'), + ruleIgnored: (typeof req.query['rule-ignored'] !== 'undefined'), hasOneResult: (presentedResults.length < 2), isTaskPage: true }); diff --git a/view/partial/result.html b/view/partial/result.html index 557134e..e03648e 100644 --- a/view/partial/result.html +++ b/view/partial/result.html @@ -47,7 +47,10 @@
  • {{code}} {{count}}

    {{message}}

    - +
    + + +
  • {{/mainResult.errors}} @@ -68,7 +71,10 @@
  • {{code}} {{count}}

    {{message}}

    - +
    + + +
  • {{/mainResult.warnings}} @@ -90,7 +96,10 @@
  • {{code}} {{count}}

    {{message}}

    - +
    + + +
  • {{/mainResult.notices}} diff --git a/view/task/index.html b/view/task/index.html index 82605e3..5c61da4 100644 --- a/view/task/index.html +++ b/view/task/index.html @@ -26,10 +26,23 @@ {{/running}} +{{#ruleIgnored}} +
    +
    + + Rule ignored! +

    + You've ignored a rule for this task. + Click here to generate results with the ignored rule excluded +

    +
    +
    +{{/ruleIgnored}} + {{> task-header}} {{#if results}} - + {{#unless hasOneResult}} {{> graph}} {{/unless}} @@ -48,4 +61,4 @@

    Click here to generate results for this URL.

    -{{/if}} \ No newline at end of file +{{/if}}