forked from zrrrzzt/wcag-validator
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathindex.js
40 lines (33 loc) · 855 Bytes
/
index.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
'use strict'
var request = require('request')
var validUrl = require('valid-url')
function mkReqOpts (opts) {
return {
uri: 'http://achecker.ca/checkacc.php',
qs: {
uri: opts.uri,
id: opts.id,
output: opts.output || 'html',
guide: opts.guide || 'WCAG2-AA',
offset: opts.offset || 0
}
}
}
module.exports = function (opts, callback) {
if (!opts.uri) {
return callback(new Error('Missing required param: uri'), null)
}
if (opts.uri && !validUrl.isWebUri(opts.uri)) {
return callback(new Error('Invalid url'), null)
}
if (!opts.id) {
return callback(new Error('Missing required param: id'), null)
}
var reqOpts = mkReqOpts(opts)
request(reqOpts, function (error, response, body) {
if (error) {
return callback(error, null)
}
return callback(null, body)
})
}