Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- var request = require('request');
- const Discord = require('discord.js');
- const client = new Discord.Client();
- const fs = require('fs');
- const prefix = '$';
- var cookieJar = request.jar();
- var request = request.defaults({ jar: cookieJar });
- var fkey;
- //var usernames = JSON.parse(fs.readFileSync("./usernames.json"));
- var creds = {
- identifier: 'imachocolatebunny', //Default username
- password: '', //Password goes here
- token: ''
- };
- var loginNew = function(username) {
- request('https://www.khanacademy.org/login', (error, response, body) => {
- fkey = cookieJar.getCookies('https://www.khanacademy.org')[0].value;
- if (error) console.error(error);
- request.post('https://www.khanacademy.org/login', {
- form: {
- identifier: username,
- password: creds.password,
- fkey: fkey,
- continue: null
- }
- }, (error, response, body) => {
- if (error) console.error(error);
- if (response.statusCode == 200) {
- console.log('Bot logged into account @' + username);
- }
- });
- });
- };
- loginNew(creds.identifier);
- client.on('ready', () => {
- client.user.setActivity('Luke, I am your Mother.');
- });
- client.on('message', message => {
- var args1 = message.content.split(" ").splice(1);
- var args = args1.join(" ").split("|");
- if (message.content.startsWith(prefix + 'vote')) {
- var project = args[0];
- var username = args[1];
- if (!project) return message.reply("Please provide the id of the project you want to vote up.");
- if (!username) return message.reply("Please provide the username of the user you want to vote up the project.");
- message.channel.send('Logging in...');
- loginNew(username);
- voteProgram({
- id: project
- });
- message.channel.send('The program has been voted up.');
- }
- });
- function voteProgram(data) {
- request(`https://www.khanacademy.org/api/labs/scratchpads/${data.id}`, (err, res, body) => {
- if (err) return console.error('Error: ' + err);
- request(`https://www.khanacademy.org/api/internal/discussions/voteentity?_=${Date.now()}`, {
- method: 'POST',
- json: {
- "entity_key" : JSON.parse(body).key,
- "vote_type": "1"
- },
- headers: {
- 'x-ka-fkey': fkey
- }
- }, (error, response, body) => {
- if (error) console.error('Error: ' + error);
- console.log(body);
- });
- });
- }
- client.login(creds.token);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement