forked from MyHomeworkSpace/MyHomeworkSpace
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathroux.js
More file actions
34 lines (30 loc) · 945 Bytes
/
Copy pathroux.js
File metadata and controls
34 lines (30 loc) · 945 Bytes
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
var parseXmlString = require('xml2js').parseString;
var https = require('https');
var querystring = require('querystring');
var request = require('request');
var roux = {};
roux.request = function(key, action, data, errCallback, callback) {
var rouxRequest = "";
rouxRequest += "<request><key>";
rouxRequest += key;
rouxRequest += "</key><action>";
rouxRequest += action;
rouxRequest += "</action>";
rouxRequest += data;
rouxRequest += "</request>";
request.post("https://schedules.dalton.org/roux/index.php", {form: { rouxRequest: rouxRequest } }, function(err, resp, body) {
parseXmlString(body, function(err, data) {
if (err || !data) {
console.log(error);
errCallback("Unknown error.", err);
return;
}
if (data["response"]["result"][0]["$"]["status"] != 200) {
errCallback("The username or password was incorrect!", err);
return;
}
callback(data, body);
});
});
};
module.exports = roux;