Advertisement
Guest User

Untitled

a guest
May 22nd, 2018
96
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. var request = require('request');
  2. const Discord = require('discord.js');
  3. const client = new Discord.Client();
  4. const fs = require('fs');
  5. const prefix = '$';
  6. var cookieJar = request.jar();
  7. var request = request.defaults({ jar: cookieJar });
  8. var fkey;
  9.  
  10. //var usernames = JSON.parse(fs.readFileSync("./usernames.json"));
  11.  
  12. var creds = {
  13.     identifier: 'imachocolatebunny', //Default username
  14.     password: '', //Password goes here
  15.     token: ''
  16. };
  17.  
  18.  
  19. var loginNew = function(username) {
  20.     request('https://www.khanacademy.org/login', (error, response, body) => {
  21.         fkey = cookieJar.getCookies('https://www.khanacademy.org')[0].value;
  22.         if (error) console.error(error);
  23.         request.post('https://www.khanacademy.org/login', {
  24.             form: {
  25.                 identifier: username,
  26.                 password: creds.password,
  27.                 fkey: fkey,
  28.                 continue: null
  29.             }
  30.         }, (error, response, body) => {
  31.             if (error) console.error(error);
  32.             if (response.statusCode == 200) {
  33.                 console.log('Bot logged into account @' + username);
  34.             }
  35.         });
  36.     });
  37. };
  38. loginNew(creds.identifier);
  39.  
  40. client.on('ready', () => {
  41.     client.user.setActivity('Luke, I am your Mother.');
  42. });
  43.  
  44. client.on('message', message => {
  45.     var args1 = message.content.split(" ").splice(1);
  46.     var args = args1.join(" ").split("|");
  47.     if (message.content.startsWith(prefix + 'vote')) {
  48.         var project = args[0];
  49.         var username = args[1];
  50.         if (!project) return message.reply("Please provide the id of the project you want to vote up.");
  51.         if (!username) return message.reply("Please provide the username of the user you want to vote up the project.");
  52.         message.channel.send('Logging in...');
  53.         loginNew(username);
  54.         voteProgram({
  55.             id: project
  56.         });
  57.         message.channel.send('The program has been voted up.');
  58.        
  59.     }
  60. });
  61.  
  62. function voteProgram(data) {
  63.     request(`https://www.khanacademy.org/api/labs/scratchpads/${data.id}`, (err, res, body) => {
  64.         if (err) return console.error('Error: ' + err);
  65.         request(`https://www.khanacademy.org/api/internal/discussions/voteentity?_=${Date.now()}`, {
  66.             method: 'POST',
  67.             json: {
  68.                 "entity_key" : JSON.parse(body).key,
  69.                 "vote_type": "1"
  70.             },
  71.             headers: {
  72.                 'x-ka-fkey': fkey
  73.             }
  74.         }, (error, response, body) => {
  75.             if (error) console.error('Error: ' + error);
  76.             console.log(body);
  77.         });
  78.        
  79.     });
  80.    
  81. }
  82.  
  83. client.login(creds.token);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement