Advertisement
Guest User

Untitled

a guest
Feb 16th, 2019
1,054
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. const http = require('http');
  2. const express = require('express');
  3. const app = express();
  4. var fs = require('fs')
  5. var shard;
  6. /*setInterval(function() {
  7.   http.get("http://asuna-site.herokuapp.com");
  8. }, 300000)*/
  9. var back = ['https://images3.alphacoders.com/632/632075.jpg','https://img00.deviantart.net/e161/i/2016/125/0/6/owari_no_seraph___background__1_by_azrael_phantom-da1dvkv.png','https://img00.deviantart.net/8fe3/i/2015/259/1/7/yuu_x_mika___owari_no_seraph___wallpaper_by_rezzilawliet-d99ueg9.jpg','http://images6.fanpop.com/image/photos/34700000/SAO-sword-art-online-34784898-500-313.jpg','https://pre00.deviantart.net/4897/th/pre/f/2015/204/2/6/sao_wallpaper_by_ct_782-d92hf0x.jpg','https://images5.alphacoders.com/314/thumb-350-314574.png','https://i.pinimg.com/originals/85/bd/00/85bd001d3680bfb3e1021e81019ad389.jpg','https://wallpaperscraft.com/image/tokyo_ghoul_kirishima_touka_man_space_103230_1920x1080.jpg','https://static.zerochan.net/Akiyama.Mio.full.265890.jpg','https://images.alphacoders.com/598/598846.jpg','https://images.alphacoders.com/112/112131.jpg','https://images2.alphacoders.com/564/thumb-1920-564835.jpg','https://i.pinimg.com/originals/b2/cc/b2/b2ccb2f8deb6fdd8829f59508eb581e9.jpg','http://www.bhmpics.com/thumbs/aion_anime_fantasy_love-t3.jpg','https://img00.deviantart.net/29a6/i/2013/104/2/6/attack_on_titans_anime_wallpaper__1920x1200__by_abdu1995-d61olzx.jpg','https://i.redd.it/lzsmx2fqs7rz.jpg','https://livewallpaper.info/wp-content/uploads/2017/08/boots-uniform-military-nazi-iron-cross-meganekko-cigarettes-anime-girls-1920x1080-wallpaper-wp3803388.jpg','http://wallpapercraze.com/images/wallpapers/glowingspawn-693740.jpeg','https://coolday.today/uploads/media/news/0001/09/b0c192e821793491eb141697c5366ddb44ecf70e.jpeg','http://wallpapercanyon.com/wp-content/uploads/2016/01/Blue-Wallpapers-15.jpg','http://cdn.wonderfulengineering.com/wp-content/uploads/2016/01/Desktop-Wallpaper-4.jpg','https://hdwallsource.com/img/2015/3/abstract-wallpaper-47342-48869-hd-wallpapers.jpg','https://images.alphacoders.com/846/thumb-1920-84631.jpg','https://images8.alphacoders.com/374/thumb-1920-374846.jpg','https://pre00.deviantart.net/36df/th/pre/f/2015/242/6/2/sword_art_online__sao__aincrad_wallpaper_by_itsripples-d97s2i5.png','https://i.pinimg.com/originals/a4/1c/6c/a41c6c950a1046799fdd3df64860ff7d.jpg','https://images3.alphacoders.com/474/47417.jpg','https://img00.deviantart.net/5fbf/i/2013/262/3/4/wallpaper___one_piece_by_nerodsaint-d6mxu1t.png','https://images7.alphacoders.com/411/thumb-1920-411820.jpg','https://hdwallsource.com/img/2014/6/wallpapers-hd-7974-8304-hd-wallpapers.jpg','http://hdwpro.com/wp-content/uploads/2015/12/wallpapers-hd.jpg','http://www.intrawallpaper.com/static/cache/69/24/69247c4112580a648468f10a4424c17c.jpg','https://wallpaper.wiki/wp-content/uploads/2017/04/wallpaper.wiki-Epic-anime-wallpaper-full-hd-1920x1080-PIC-WPB006435.jpg','http://wall.rimbuz.com/wp-content/uploads/Bleach-Anime-Wallpapers-HD.jpg','http://www.kinyu-z.net/data/wallpapers/189/1367248.jpg','https://wallpaper.wiki/wp-content/uploads/2017/04/wallpaper.wiki-Dream-1920x1080-Anime-Wallpaper-PIC-WPD0014704.jpg','http://getwallpapers.com/wallpaper/full/4/3/8/1071689-free-download-anime-wallpaper-1366x768-1920x1080-retina.jpg','https://images7.alphacoders.com/299/thumb-1920-299402.jpg','https://img00.deviantart.net/318f/i/2014/123/2/1/sao___asuna_wallpaper_by_tekmon1980-d7gyrs8.png','http://images6.fanpop.com/image/photos/38500000/-Ten-Commandments-nanatsu-no-taizai-38522350-500-339.jpg','https://www.ps4wallpapers.com/wp-content/uploads/2017/04/PS4Wallpapers.com_LpYEuP.png','https://www.planwallpaper.com/static/cache/9d/bc/9dbc35a842c2fe66b8b984e4c2e422b1.jpg','https://www.hdwallpapers.in/walls/cold_galaxy-HD.jpg','https://images3.alphacoders.com/286/thumb-1920-28647.jpg','https://i.ytimg.com/vi/yqXC4wlIAbI/maxresdefault.jpg','https://pm1.narvii.com/6291/bce51892f849198cae8fe837a91c66db093c6186_hq.jpg','https://images5.alphacoders.com/463/463438.jpg','https://i.pinimg.com/originals/d3/0b/56/d30b56b4d33282e4dbd6549b9b46aee7.jpg','https://i.pinimg.com/originals/3f/5b/ad/3f5bad49085f1d40e9c4d6f71d3dd364.jpg','https://img00.deviantart.net/bf2a/i/2011/090/c/7/the_magic_wallpaper_by_thesurrealartist-d3cxhzd.png','https://i.imgur.com/eS4IxK3.png','https://www.pcgamewallpapers.net/1280x1024/dota-2-bloodseeker.jpg','http://dotawallpaper.org/wp-content/uploads/2016/05/Rubick%20Game%20Dota%202-620x349.jpg','https://s3.envato.com/files/242241653/590px.jpg','http://mauipride.org/wp-content/uploads/2015/03/Seamless-Lava-Crack-Background.jpg','http://notgoaway.com/wp-content/uploads/2017/08/Pikachu-Wallpaper-73-Go.jpg','https://thumbs.dreamstime.com/b/lighting-background-20378376.jpg','https://img00.deviantart.net/1d5f/i/2013/074/b/c/dark_night_background_by_msteeq-d5y5iaq.jpg','https://geekloid.co.il/wp-content/uploads/2014/07/assassination-classroom.jpeg','https://m.media-amazon.com/images/M/MV5BOWM0Y2VhOGUtNWQ5ZC00MzMyLTgwZWMtNWEyYzFhNmQ3NWFlL2ltYWdlL2ltYWdlXkEyXkFqcGdeQXVyNjk2ODYwMzU@._V1_.jpg','https://pre00.deviantart.net/a7f3/th/pre/f/2015/179/8/7/hide___tokyo_ghoul___minimal_by_cheezynoodlez-d8t7bqy.jpg','https://image.tmdb.org/t/p/original/pT0NKOQEp1kiJ52VkP9lK8mRoi7.jpg','https://images.alphacoders.com/901/901811.png','http://backgrounds4k.net/wp-content/uploads/2016/07/Akame-Ga-Kill-download-background.jpg','https://garibaldicharters.com/wp-content/uploads/2016/07/water-background.jpg','https://ak5.picdn.net/shutterstock/videos/5858735/thumb/1.jpg','https://www.wallpapersbrowse.com/images/sj/sjtwt4y.jpg','https://wallpapercave.com/wp/pgQy6QQ.jpg','https://d2v9y0dukr6mq2.cloudfront.net/video/thumbnail/S15GBCm/severe-thunderstorm-clouds-at-night-with-lightning-hell-background-abstract-smoke-fume-epic-red-luminous-background-for-your-intro-with-space-for-your-logo-or-text_r4crwhf0_thumbnail-full10.png','https://wallpapercave.com/wp/wp1838025.jpg','https://wallpaper-house.com/data/out/7/wallpaper2you_150190.jpg','http://clickwallpapers.com/1080p/naruto-wallpaper-full-hd-On-Wallpaper-1080p-HD.jpg','https://i.imgur.com/6OOxT0m.jpg','https://orig00.deviantart.net/31ea/f/2017/150/d/6/attack_on_titan___colossal_titan_wallpaper_by_carionto-dbaz3f6.png','https://images2.alphacoders.com/837/thumb-350-837892.png','https://img00.deviantart.net/8c9e/i/2015/082/1/5/no_game_no_life_wallpaper_by_totoro_gx-d8mtbiq.png','http://www.lol-wallpapers.com/wp-content/uploads/2018/06/God-King-Darius-Splash-Art-HD-4k-Wallpaper-Background-Official-Art-Artwork-League-of-Legends-lol-3-400x222.jpg','https://cdn.segmentnext.com/wp-content/uploads/2017/07/League-of-Legends-Kayn-Reveal-620x349.jpg','https://pre00.deviantart.net/4029/th/pre/f/2017/041/8/1/bloodmoondiana_by_ruanes97-dayji24.png','http://clashclansonline.com/wp-content/uploads/2018/05/league-of-legends-wallpaper-hd-luxury-26-khazix-league-legends-hd-wallpapers-backgrounds-of-league-of-legends-wallpaper-hd.jpg','https://www.wallpaperflare.com/static/907/282/392/league-of-legends-summoner-s-rift-project-skins-jhin-league-of-legends-wallpaper.jpg','http://www.portoalegre.travel/upload/b/21/218942_fire-wallpaper.jpg','http://images-hdwallpapers.com/wp-content/uploads/2018/02/Amazing-Fire-Backgrounds-Images.jpg','https://images4.alphacoders.com/183/thumb-1920-183766.jpg','https://i.ytimg.com/vi/lRlE-tvVEuU/maxresdefault.jpg','https://images.designtrends.com/wp-content/uploads/2016/04/04125712/Blue-Fire-Wallpapers-HD.jpg','https://wallpaper-house.com/data/out/9/wallpaper2you_336529.jpg','https://i.pinimg.com/originals/5c/da/5a/5cda5a34fa12a798597ae7fccef441cd.jpg','https://images4.alphacoders.com/819/thumb-350-819837.png','http://www.nerdtrip.com.br/wp-content/uploads/2018/04/boku-no-hero-nerdtrip.jpg','https://img00.deviantart.net/d7b6/i/2017/144/c/8/boku_no_hero_academia_deku__wallpaper__by_novasenpai7-dbab95k.png','https://wallpaperwire.com/wp-content/uploads/2018/04/Fire-Abstract-Wallpapers-17.jpg','https://www.desktopbackground.org/p/2014/04/20/749850_red-and-black-flames-wallpapers_2560x1440_h.jpg','https://4kwallpaper.org/wp-content/uploads/2016/10/one-piece-wallpaper4.jpg','https://hcwallpapers.com/wp-content/uploads/2017/12/Anime-One-Piece-Wallpaper-HD-Bad-Ass-Kuzan-with-ice-sword.jpg','https://i.redd.it/xk9vhv6nuinx.jpg','https://img00.deviantart.net/50e0/i/2017/332/d/0/satella__re_zero_wallpaper__by_galangcp-dbv3swf.png','https://livewallpaperhd.com/wp-content/uploads/2017/08/Re-Zero-Wallpaper-Windows-10.jpg','https://i.pinimg.com/originals/0f/86/90/0f869070a82713a26615fc5f90200c6e.jpg','https://images5.alphacoders.com/605/thumb-1920-605992.png','https://cdn.vox-cdn.com/thumbor/ZJLiFKGeuL9ijldJt8odjJ2Accw=/1400x1400/filters:format(jpeg)/cdn.vox-cdn.com/uploads/chorus_asset/file/10410055/21016.jpg','https://static.lolwallpapers.net/2016/08/57cae54b74dba.jpg','https://img00.deviantart.net/89c8/i/2017/166/2/7/darkstar_kha_zix_wallpaper_by_stuballinger_art-dbcrq86.jpg','http://longwallpapers.com/Desktop-Wallpaper/star-wars-wallpapers-desktop-For-Desktop-Wallpaper.jpg','https://pm1.narvii.com/6219/0bca20672b77f94e91ff3ad866e2f4c114554283_hq.jpg','https://i.pinimg.com/originals/88/a8/54/88a854bc79f46329a8888c35c0b086b9.jpg','https://i.pinimg.com/originals/57/5e/e0/575ee07cfa6d113cfd99ec89598a23e7.jpg','https://http2.mlstatic.com/painel-em-lona-bandeira-reino-unidoinglaterra-200x140-D_NQ_NP_448905-MLB25106497286_102016-F.jpg','https://images3.alphacoders.com/743/74305.jpg','http://4.bp.blogspot.com/_zQozxH_9Y-Y/SbHqKWn7WrI/AAAAAAAAAJ8/eLsMtOhwTIU/s400/Dirty+Flag+Version+Zero_South+Africa.jpg','https://wallpapercave.com/wp/dpxHCYh.jpg','https://images4.alphacoders.com/123/thumb-1920-123054.jpg','http://wall.rimbuz.com/wp-content/uploads/Hellsing-Digital-Wallpapers-618x450.jpg','https://images6.alphacoders.com/860/thumb-1920-860275.png','https://pre00.deviantart.net/6282/th/pre/f/2017/265/2/3/kakegurui___runa_wallpaper_full_hd_by_thekambot-dbo89ry.png','http://3.bp.blogspot.com/-3Yh7L--t62Q/ViTfYelAm7I/AAAAAAAAVJ4/X12HyVEOK3U/s1600/280960_Papel-de-Parede-Colisao-Entre-Planetas--280960_1920x1080.jpg',
  10. 'https://livewallpaper.info/wp-content/uploads/2017/08/cool-moon-Download-cool-moon-HD-Download-cool-moon-from-the-abo-wallpaper-wpc9003793.jpg','http://2.bp.blogspot.com/-T6VSvq2fjHM/VgZnvnuWjNI/AAAAAAAAB2o/0KAetvdpl8s/s1600/maxresdefault.jpg','https://orig00.deviantart.net/125f/f/2015/276/8/9/smite_wallpaper___sol_by_davespectre122-d9brdx1.jpg','http://fotocache02.stormap.sapo.pt/fotostore02/fotos//bb/aa/2b/4574997_7waY8.jpeg','https://static.lolwallpapers.net/2016/03/56ee70923f22e.jpg','http://blankbookingagency.com/wp-content/uploads/2015/02/Space-nebula-blue-and-red-galaxies_2560x1440.jpg']
  11. back.shift()
  12. var usuarios = {}
  13. var Discord = require('discord.js')
  14. const fetch = require('node-fetch');
  15. const btoa = require('btoa');
  16. setInterval(() =>{
  17. usuarios = {}
  18. },1000 * 60 * 60 * 24 * 7)
  19. const bodyParser = require("body-parser");
  20. app.use(bodyParser.urlencoded({
  21.   extended: true
  22. }));
  23. app.use(express.static(__dirname + "/cmds/"));
  24.  
  25. var caixas = {
  26.   'Comum':{
  27.     a:'cc',
  28.     pre:500
  29.   },
  30.   'Rara':{
  31. a:'cr',
  32. pre:1000
  33.   },
  34.   'Mistica':{
  35. a:'cm',
  36. pre:2500
  37.   },
  38.   'Lendaria':{
  39. a:'cl',
  40. pre:5000
  41.   },
  42.   'Suprema':{
  43. a:'cs',
  44. pre:10000
  45.   }
  46. }
  47. var shard2;
  48. var snekfetch = require('snekfetch')
  49. var db = require('./database.js')
  50. var asuna = require('./app.js')
  51. async function feval(str){
  52.   this.arr = []
  53.   for (var i=0; i< asuna.shards.array().length;i++){
  54.    var abd = await Promise.resolve(asuna.shards.array()[i].eval(str))
  55. await this.arr.push(abd)
  56.   }
  57.  
  58. return this.arr
  59. }
  60.  
  61. setTimeout(async function() {
  62. asuna.token ='ke'
  63. },1000 * 40)
  64. var router = express.Router();
  65. router.use(express.static(__dirname + "/cmds/"))
  66. const catchAsync = fn => (
  67.   (req, res, next) => {
  68.     const routePromise = fn(req, res, next);
  69.     if (routePromise.catch) {
  70.       routePromise.catch(err => next(err));
  71.     }
  72.   }
  73. );
  74. app.get('/cmds',function(req,res){
  75.   fs.readFile('./cmds/perfil.html', 'utf8',  function (err, data) {
  76.  res.send(data)
  77.   })
  78. })
  79. asuna.guilds = {
  80.   //0 para guild, 1 para membros, 2 para roles,3 para channels
  81.   get:async function(id,uid,n){
  82. if(id){
  83. if (n ==0 || !n || n == null){
  84. this.reto =  feval(`if (this.guilds.has('${id}')){
  85.   true
  86. }`)
  87. this.reto = await Promise.resolve(this.reto)
  88. this.reto = this.reto.filter(a => a!==undefined).filter(a=> a!=null)
  89.  return this.reto.length < 1 ? null : true
  90. }
  91. else if (n==6){
  92.   this.reto =  feval(`if (this.guilds.has('${id}')){
  93.     this.guilds.get('${id}')
  94.   }`)
  95.   this.reto = await Promise.resolve(this.reto)
  96.   this.reto = this.reto.filter(a => a!==undefined).filter(a=> a!=null)
  97.    return this.reto.length < 1 ? null : this.reto[0]
  98. }
  99. else if (n==15){
  100.   this.reto = feval(`if (this.guilds.has('${id}')){
  101.     if (this.guilds.get('${id}').members.get('${uid}').hasPermission('ADMINISTRATOR') ||this.guilds.get('${id}').members.get('${uid}').hasPermission('MANAGE_GUILD') ){
  102.        true
  103.     }
  104.            }`)
  105.          this.membros = await Promise.resolve(this.reto)
  106.          this.membros = this.membros.filter(a => a!=undefined).filter(a => a!==null)
  107.        return  this.membros.indexOf(true) == -1? null : true
  108. }
  109.   else if (n == 1){
  110.           this.reto = feval(`if (this.guilds.has('${id}')){
  111.            if (this.guilds.get('${id}').members.get('${uid}').hasPermission('ADMINISTRATOR') ||this.guilds.get('${id}').members.get('${uid}').hasPermission('MANAGE_GUILD') ){
  112.               true
  113.            }
  114.            else  false
  115.                   }`)
  116.                 this.membros = await Promise.resolve(this.reto)
  117.                 this.membros = this.membros.filter(a => a!==undefined).filter(a => a!==null)
  118.               return  this.membros.length  < 1? null : this.membros[0]
  119.     }
  120.   else if(n == 2){
  121.     this.reto = feval(`if (this.guilds.has('${id}')){
  122.       if (this.guilds.get('${id}').roles.get('${uid}')){
  123.         this.guilds.get('${id}').roles.get('${uid}')
  124.       }
  125.     }`)
  126.     this.membros = await Promise.resolve(this.reto)
  127.     this.membros = this.membros.filter(a => a!=undefined).filter(a => a!=null)
  128. return this.membros.length < 1 ? null : this.membros[0]
  129.   }
  130.   else if (n==3){
  131.     this.reto = feval(`if (this.guilds.has('${id}')){
  132.       if (this.guilds.get('${id}').channels.get('${uid}')){
  133.         this.guilds.get('${id}').channels.get('${uid}')
  134.       }
  135.     }`)
  136.     this.membros = await Promise.resolve(this.reto)
  137.     this.membros = this.membros.filter(a => a!=undefined).filter(a => a!=null)
  138. return this.membros.length < 1 ? null : this.membros[0]
  139.   }
  140.   else if (n==9){
  141.     this.reto = feval(`if (this.guilds.has('${id}')){
  142.   var arr = []
  143.       for(var i=0; i < this.guilds.get('${id}').channels.size;i++){
  144.         this.guilds.get('${id}').channels.array()[i].type == 'text'?  arr.push(this.guilds.get('${id}').channels.array()[i].name) :''
  145.       }
  146. arr
  147.     }`)
  148.    
  149.          this.membros = await Promise.resolve(this.reto)
  150.          this.membros = this.membros.filter(a => a!=undefined).filter(a => a!=null)
  151.      return this.membros.length < 1 ? null : this.membros[0]
  152.   }
  153.   else if (n==10){
  154.     this.reto = feval(`if (this.guilds.has('${id}')){
  155.   var arr = []
  156.       for(var i=0; i < this.guilds.get('${id}').roles.size;i++){
  157.     arr.push(this.guilds.get('${id}').roles.array()[i].name)
  158.       }
  159. arr
  160.     }`)
  161.    
  162.          this.membros = await Promise.resolve(this.reto)
  163.          this.membros = this.membros.filter(a => a!=undefined).filter(a => a!=null)
  164.      return this.membros.length < 1 ? null : this.membros[0]
  165.   }
  166.   else if (n ==7){
  167.     this.reto = feval(`if (this.guilds.has('${id}')){
  168.  this.guilds.get('${id}').channels.filter(a => a.type == 'text').size
  169.     }`)
  170.     this.membros = await Promise.resolve(this.reto)
  171.     this.membros = this.membros.filter(a => a!=undefined).filter(a => a!=null)
  172. return this.membros.length < 1 ? null : this.membros[0]
  173.   }
  174.   else if (n ==8){
  175.     this.reto = feval(`if (this.guilds.has('${id}')){
  176.  this.guilds.get('${id}').roles.size
  177.     }`)
  178.     this.membros = await Promise.resolve(this.reto)
  179.     this.membros = this.membros.filter(a => a!=undefined).filter(a => a!=null)
  180. return this.membros.length < 1 ? null : this.membros[0]
  181.   }
  182.   else if (n ==4){
  183.  
  184.   this.reto = feval(`if (this.guilds.has('${id}')){
  185.       if (this.guilds.get('${id}').channels.find('name','${uid}')){
  186.         this.guilds.get('${id}').channels.find('name','${uid}')
  187.       }
  188.     }`)
  189.     this.membros = await Promise.resolve(this.reto)
  190.     this.membros = this.membros.filter(a => a!=undefined).filter(a => a!=null)
  191. return this.membros.length < 1 ? null : this.membros[0]
  192.   }
  193.   else if (n==5){
  194.     this.reto = feval(`if (this.guilds.has('${id}')){
  195.       if (this.guilds.get('${id}').roles.find('name','${uid}')){
  196.         this.guilds.get('${id}').roles.find('name', '${uid}')
  197.       }
  198.     }`)
  199.     this.membros = await Promise.resolve(this.reto)
  200.     this.membros = this.membros.filter(a => a!=undefined).filter(a => a!=null)
  201. return this.membros.length < 1 ? null : this.membros[0]
  202.   }  
  203. }
  204.   }
  205. }
  206. var url = require('url');
  207. function fullUrl(req) {
  208.   return url.format({
  209.     protocol: req.protocol,
  210.     host: req.get('host'),
  211.     pathname: req.originalUrl
  212.   });
  213. }
  214. const CLIENT_ID = '376179599874326540'
  215. const CLIENT_SECRET = 'secreto'
  216. //trocar o callback
  217. const redirect = encodeURIComponent('http://asuna-site.herokuapp.com/logando/status');
  218. app.get("/logando", (req, res) => {
  219.   res.redirect(`https://discordapp.com/api/oauth2/authorize?client_id=${CLIENT_ID}&redirect_uri=${redirect}&response_type=code&scope=identify%20guilds`);
  220. });
  221. app.get('/logando/status', catchAsync(async (req, res) => {
  222.   if (!req.query.code) throw new Error('NoCodeProvided');
  223.   const code = req.query.code;
  224.   const creds = btoa(`${CLIENT_ID}:${CLIENT_SECRET}`);
  225.   const response = await fetch(`https://discordapp.com/api/oauth2/token?grant_type=authorization_code&code=${code}&redirect_uri=${redirect}`,
  226.     {
  227.       method: 'POST',
  228.       headers: {
  229.         Authorization: `Basic ${creds}`,
  230.       },
  231.     });
  232.  
  233.   const json = await response.json();
  234.   const response2 = await fetch(`https://discordapp.com/api/users/@me`,
  235.     {
  236.       method: 'GET',
  237.       headers: {
  238.         Authorization: `Bearer ${json.access_token}`
  239.       },
  240.     });
  241.   const response3 = await fetch(`https://discordapp.com/api/users/@me/guilds`, {
  242.     method: 'GET',
  243.     headers: {
  244.       Authorization: `Bearer ${json.access_token}`
  245.     }
  246.   })
  247. //(req.headers['x-forwarded-for'] || req.connection.remoteAddress || req.socket.remoteAddress ||req.connection.socket.remoteAddress).split(",")[0];
  248.   const json2 = await response2.json();
  249.   const json3 = await response3.json()
  250. var ip = (req.headers['x-forwarded-for'] || req.connection.remoteAddress || req.socket.remoteAddress ||req.connection.socket.remoteAddress).split(",")[0];
  251.   var resp = [json2, json3]
  252.   usuarios[ip] == resp ? '' : usuarios[ip] = resp
  253.   res.redirect(`/logado`);
  254. }));
  255.   function getClientIp (req) {
  256.   var ipAddress = req.connection.remoteAddress;
  257. if (!ipAddress) {
  258.     return '';
  259.   }
  260. // convert from "::ffff:192.0.0.1"  to "192.0.0.1"
  261.   if (ipAddress.substr(0, 7) == "::ffff:") {
  262.     ipAddress = ipAddress.substr(7)
  263.   }
  264. return ipAddress;
  265. };
  266. app.get('/', (req, res) => {
  267. var ip = (req.headers['x-forwarded-for'] || req.connection.remoteAddress || req.socket.remoteAddress ||req.connection.socket.remoteAddress).split(",")[0];
  268.   if (usuarios[ip]) {
  269.     res.redirect('/logado')
  270.  
  271.   }
  272.   else {
  273.     fs.readFile('./main.html', 'utf8', function (err, data) {
  274.       res.send(data)
  275.     })
  276.   }
  277. });
  278. function guilds(g) {
  279.   this.arr = []
  280.   for (var i = 0; i < g.length; i++) {
  281.     if ( !g[i].icon ||g[i].icon == null ){
  282.       var tutu = null
  283.     }
  284.     else var tutu = g[i].icon;
  285.     this.arr.push({ i: tutu, id: g[i].id, nome: g[i].name, permissions: g[i].permissions })
  286.   }
  287.   return this.arr
  288. } app.get('/logout', (req, res) => {
  289. var ip = (req.headers['x-forwarded-for'] || req.connection.remoteAddress || req.socket.remoteAddress ||req.connection.socket.remoteAddress).split(",")[0];
  290.   delete usuarios[ip]
  291.   res.redirect(`/`);
  292.  
  293. });
  294. app.get('/logado/loja',async function(req,res){
  295. var ip = (req.headers['x-forwarded-for'] || req.connection.remoteAddress || req.socket.remoteAddress ||req.connection.socket.remoteAddress).split(",")[0];
  296.   if (!usuarios[ip]) return   res.redirect(`/`);  
  297.  
  298.   fs.readFile('./loja.html', 'utf8', async function (err, data) {
  299.     var avatar = `https://cdn.discordapp.com/avatars/${usuarios[ip][0].id}/${usuarios[ip][0].avatar}.png?size=2048`
  300.   var alt2 = data.replace(/<img src='' id='vatar'>/, `<img src = '${avatar}' id = 'vatar'>`)
  301.   var dinheiro;
  302. //  <img src='' id='vatar'>
  303.  
  304. await db.Users2.findOne({'_id':usuarios[ip][0].id},async function(err,doc){
  305.   if (!doc) return;
  306. dinheiro = await doc.money
  307. })
  308.  alt2 = alt2.replace(/<li><a href=''>Creditos: <\/a><\/li>/,`<li><a href=''>Creditos: ${dinheiro}</a></li>`)
  309.     res.send(alt2)
  310.   })    
  311. })
  312. app.get('/backgrounds',async function(req,res){
  313.   var ip = (req.headers['x-forwarded-for'] || req.connection.remoteAddress || req.socket.remoteAddress ||req.connection.socket.remoteAddress).split(",")[0];
  314.   if (!usuarios[ip]) return   res.redirect(`/`);  
  315.   //<abc></abc>
  316.   var completo = ''
  317.   for(var i =0;i < back.length;i++){
  318.     completo+= `<img src = '${back[i]}' style = 'position:relative;top:150px;width:200px;height:200px'>`
  319.   }
  320.   fs.readFile('./background.html', 'utf8', async function (err, data) {
  321.     var avatar = `https://cdn.discordapp.com/avatars/${usuarios[ip][0].id}/${usuarios[ip][0].avatar}.png?size=2048`        
  322. var     alt1 = data.replace(/<img src = '' id = 'vatar'>/, `<img src = '${avatar}' id = 'vatar'>`)
  323.  alt1 =  alt1.replace(/<abc><\/abc>/,`${completo}`)
  324.  res.send(alt1)
  325.   })
  326. })
  327. app.post('/logado/comprar',async function(req,res){
  328. var ip = (req.headers['x-forwarded-for'] || req.connection.remoteAddress || req.socket.remoteAddress ||req.connection.socket.remoteAddress).split(",")[0];
  329.   if (!usuarios[ip]) return   res.redirect(`/`);  
  330.  
  331.   var dinheiroreal;
  332.   await db.Users2.findOne({'_id':usuarios[ip][0].id},async function(err,doc){
  333.     if (!doc) return res.send('Erro: Esse usuario nao tem um perfil')
  334. dinheiroreal= doc.money
  335.   })
  336.   if (!req.body.quantidade){
  337.     return re()    
  338.   }
  339.   function re(){
  340.     res.redirect(`/`);
  341.    /* var avatar = `https://cdn.discordapp.com/avatars/${usuarios[ip][0].id}/${usuarios[ip][0].avatar}.png?size=2048`        
  342.     alt1 = alt1.replace(/<img src ='' id = 'vatar'> /, `<img src = '${avatar}' id = 'vatar'>`)
  343.     res.send(alt1)*/
  344.     return;
  345.   }
  346.   var dinheirom = req.body.quantidade.split(' | ')
  347.     if (dinheirom[0]  < 1){
  348.       return re()
  349.     }
  350.     if (isNaN(dinheirom[0])){
  351.       return re()
  352.     }
  353.     var calculo = caixas[dinheirom[1]].pre * parseInt(dinheirom[0])
  354.     if (dinheiroreal < calculo){
  355.       fs.readFile('./comprar.html', 'utf8', async function (err, data) {
  356.         var avatar = `https://cdn.discordapp.com/avatars/${usuarios[ip][0].id}/${usuarios[ip][0].avatar}.png?size=2048`        
  357.         var alt1 = data.replace(/var preco = ''/,`var preco = '';alert('Voce nao tem esse dinheiro!')`)
  358.         alt1 = alt1.replace(/<img src='' id ='vatar'>/, `<img src = '${avatar}' id = 'vatar'>`)
  359.         res.send(alt1)
  360.       })
  361.       return;        
  362.     }
  363.     else{
  364.       db.Users2.findOne({'_id':usuarios[ip][0].id},function(err,doc){
  365.         doc.money -= calculo
  366.         for(var i =0; i < dinheirom[0];i++){
  367.         doc.t2 += caixas[dinheirom[1]].a + ' | '
  368.       }
  369.         doc.save()
  370.       })
  371.       fs.readFile('./loja.html', 'utf8', async function (err, data) {
  372.         var alt1 = await  data.replace(/var t;/,'alert("Compra efetuada com sucesso!")')
  373.         var avatar = `https://cdn.discordapp.com/avatars/${usuarios[ip][0].id}/${usuarios[ip][0].avatar}.png?size=2048`        
  374.          alt1 = await alt1.replace(/<img src='' id='vatar'>/, `<img src = '${avatar}' id = 'vatar'>`)
  375.         var dinheiro;
  376.       await db.Users2.findOne({'_id':usuarios[ip][0].id},async function(err,doc){
  377.         if (!doc) return;
  378.       dinheiro = await doc.money
  379.       })
  380.        alt1 =  await alt1.replace(/<li><a href=''>Creditos: <\/a><\/li>/,`<li><a href=''>Creditos: ${dinheiro}</a></li>`)
  381.        res.send(alt1)
  382.       })
  383.     }
  384. })
  385. app.get('/logado/comprar', async function(req, res) {
  386. var ip = (req.headers['x-forwarded-for'] || req.connection.remoteAddress || req.socket.remoteAddress ||req.connection.socket.remoteAddress).split(",")[0];
  387.   if (!usuarios[ip]) return   res.redirect(`/`);  
  388.  
  389.   fs.readFile('./comprar.html', 'utf8', async function (err, data) {
  390.     var avatar = `https://cdn.discordapp.com/avatars/${usuarios[ip][0].id}/${usuarios[ip][0].avatar}.png?size=2048`
  391.     var alt2 = await data.replace(/<img src='' id='vatar'>/, `<img src = '${avatar}' id = 'vatar'>`)
  392.     var dinheiro;
  393.     await db.Users2.findOne({'_id':usuarios[ip][0].id},async function(err,doc){
  394.       if (!doc) return;
  395.     dinheiro = await doc.money
  396.     })
  397.     var comprarul = fullUrl(req)
  398.     var realurl = comprarul.substr(comprarul.length-2,comprarul.length)
  399. var preco;
  400.     switch (realurl){
  401.   case 'cc':
  402.   preco = 500
  403.   break
  404.   case 'cr':
  405.   preco = 1000
  406.   break
  407.   case 'cm':
  408.   preco=2500
  409.   break
  410.   case 'cl':
  411.   preco=5000
  412.   break
  413.   case 'cs':
  414.   preco=10000
  415.   break
  416. }
  417.      alt2 = await  alt2.replace(/<li><a href=''>Creditos: <\/a><\/li>/,`<li><a href=''>Creditos: ${dinheiro}</a></li>`)
  418.      alt2 = await alt2.replace(/var preco = ''/,`var preco = ${preco}`)
  419.   await  res.send(alt2)
  420.   })
  421. })
  422. app.post('/save', async function(req,res) {
  423. var ip = (req.headers['x-forwarded-for'] || req.connection.remoteAddress || req.socket.remoteAddress ||req.connection.socket.remoteAddress).split(",")[0];
  424.   if (!usuarios[ip] ) return res.redirect('/');
  425. var arr = []
  426. for(var a in req.body){
  427.   arr.push(a)
  428. }
  429. if (arr.length < 1 || arr.length >2) return;
  430. var guildar = arr[0].split(' | ')[1],tag = arr[0].split(' | ')[0]
  431. if (!await asuna.guilds.get(guildar,usuarios[ip][0].id,1))return;
  432. /*
  433.   chatjoin: "",// role  doo auto role que irei fazer
  434.       chatleave: "",//loot
  435.       setleave: "",//id do canal de msg de saida
  436.       setjoin: "",//msg de saida
  437.       mute: "",// msg de verificaçao
  438.       removemsg: "",//cargo da verificaçao
  439.       cmute1: "",//canal de msg de bem vindo
  440.       cmuute2: "",//msg de bem vindo
  441. */
  442. function re (){
  443.   res.redirect(`/logado/moderacao/guilda/?id=${guildar}`)
  444. }
  445. switch (tag){
  446.   case 'entrada':
  447.   if(req.body[arr[0]] == 'Desativar mensagem de bem-vindo'){
  448.     db.guild.findOne({"_id":guildar},async function(err,doc){
  449.       if (!doc) return;
  450.     doc.cmute1 = ''
  451.     doc.cmuute2=''
  452.     doc.save()
  453.     re()    
  454.     })
  455.   }
  456.   else{
  457.   db.guild.findOne({"_id":guildar},async function(err,doc){
  458.     if (!doc) return;
  459. var a = await asuna.guilds.get(guildar,req.body[arr[0]],4)
  460. if (!a) return;
  461. doc.cmute1 = a.id
  462. doc.cmuute2 = req.body[arr[1]]
  463. doc.save()
  464. re()
  465. })}
  466.   break
  467.  
  468.   case 'saida':
  469.   if(req.body[arr[0]] == 'Desativar mensagem de saida'){
  470.     db.guild.findOne({"_id":guildar},async function(err,doc){
  471.       if (!doc) return;
  472.     doc.setleave=''
  473.     doc.setjoin=''
  474.     doc.save()
  475.     re()    
  476.     })
  477.   }
  478.   else{
  479.   db.guild.findOne({"_id":guildar},async function(err,doc){
  480.     if (!doc) return;
  481. var a =await  asuna.guilds.get(guildar,req.body[arr[0]],4)
  482. if (!a) return;
  483. doc.setleave = a.id
  484. doc.setjoin = req.body[arr[1]]
  485. doc.save()
  486. re()
  487. })}
  488.   break
  489.   case 'autorole':
  490.   if (req.body[arr[0]] == 'Autorole desativado'){
  491.     db.guild.findOne({"_id":guildar},async function(err,doc){
  492.       if (!doc) return;
  493.     doc.chatjoin = ''
  494.     doc.save()
  495.     re()
  496.    
  497.     })
  498.   }
  499.   else{
  500.   db.guild.findOne({"_id":guildar},async function(err,doc){
  501.     if (!doc) return;
  502. var a = await asuna.guilds.get(guildar,req.body[arr[0]],5)
  503. if (!a) return;
  504. doc.chatjoin = a.id
  505. doc.save()
  506. re()
  507.  
  508. })}
  509.   break
  510.   case'logs':
  511.   if (req.body[arr[0]] == 'Logs desativado'){
  512.     db.guild.findOne({"_id":guildar},async function(err,doc){
  513.       if (!doc) return;
  514.     doc.logs = ''
  515.     doc.save()
  516.     re()
  517.    
  518.     })
  519.   }else{
  520.   db.guild.findOne({"_id":guildar},async function(err,doc){
  521.     if (!doc) return;
  522. var a =await  asuna.guilds.get(guildar,req.body[arr[0]],4)
  523. if (!a) return;
  524. doc.logs = a.id
  525. doc.save()
  526. re()
  527.  
  528. })}
  529.   break
  530.   case 'prefix':
  531.   if (req.body[arr[0]].length >2) return re();
  532.   if (req.body[arr[0]].length <1) return re();
  533.   if (!isNaN(req.body[arr[0]]))return re();
  534.   db.guild.findOne({"_id":guildar},async function(err,doc){
  535.     if (!doc) return
  536.   doc.muted = req.body[arr[0]]
  537.   doc.save()
  538.   re()
  539.   })
  540.   break
  541.   case 'lootbox':
  542.   db.guild.findOne({"_id":guildar},async function(err,doc){
  543.     if (!doc) return;
  544.   if (req.body[arr[0]] == 'Ativado'){
  545.     doc.chatleave = 'o'
  546.     doc.save()
  547.     re()
  548.   }
  549.   else if (req.body[arr[0]] == 'Desativado'){
  550.     doc.chatleave = 'XXX'
  551.     doc.save()
  552.     re()
  553.   }
  554.   })
  555.   break
  556. }
  557. })
  558. app.get('/logado/moderacao/guilda', async function(req,res) {
  559.   var guilda = fullUrl(req)
  560. var ip = (req.headers['x-forwarded-for'] || req.connection.remoteAddress || req.socket.remoteAddress ||req.connection.socket.remoteAddress).split(",")[0];
  561.   if (!usuarios[ip]) return   res.redirect(`/`);  
  562.   var guildar = guilda.substr(guilda.length - 18, guilda.length)
  563.   if (!await asuna.guilds.get(guildar)) return;
  564.   if (!await asuna.guilds.get(guildar,usuarios[ip][0].id,1))return;
  565.   var guildaicon2 = usuarios[ip][1].filter(a => a.id ==guildar)
  566.   var guildaicon = !guildaicon2[0].icon ||guildaicon2[0].icon == null ?'https://cdn.discordapp.com/icons/357953594852376597/2ea935d0c3c4be60f9ff854f71ac45e2.jpg'  :`https://cdn.discordapp.com/icons/${guildaicon2[0].id}/${guildaicon2[0].icon}.jpg`
  567.   var dono =await asuna.guilds.get(guildaicon2[0].id,0,6),members1 =await asuna.guilds.get(guildaicon2[0].id,0,6)
  568.   members1 = members1.memberCount
  569.   dono = dono.ownerID ? dono.ownerID : 'Indefinido'
  570.   fs.readFile('./guilda.html', 'utf8', async function (err, data) {
  571.     var avatar = `https://cdn.discordapp.com/avatars/${usuarios[ip][0].id}/${usuarios[ip][0].avatar}.png?size=2048`
  572.     var alt1 = data.replace(/<img src = '' id = 'vatar'>/, `<img src = '${avatar}' id = 'vatar'>`)
  573.     alt1 = alt1.replace(/<img src = 'a'/,`<img src = '${guildaicon}'`)
  574.     alt1 = alt1.replace(/<h4 id = 'aga'>A<\/h4>/,`<h4 id = 'aga'>Servidor: ${guildaicon2[0].name}</h4>`)
  575.     alt1 = alt1.replace(/<h4 id = 'membros'>A<\/h4>/,`<h4 id = 'membros'>Membros: ${members1}</h4>`)
  576.     alt1 = alt1.replace(/<h4 id = 'dono'>A<\/h4>/,`<h4 id = 'dono'>Dono: ${dono}<\h4>`)
  577. var ops = '',ops2 = '',ops3='',ops4='',ops5='',ops6='',msg ='',msg2=''
  578. await db.guild.findOne({'_id':guildaicon2[0].id},async function(err,doc){
  579.   if (!doc) return;
  580.   if (doc.logs !== ''){
  581.   var canal = await asuna.guilds.get(guildaicon2[0].id,doc.logs,3)
  582.  ops = await  asuna.guilds.get(guildaicon2[0].id,doc.logs,3) ? '<option name = "n">' + canal.name+ '</option>' : '<option name = "n">Canal deletado</option>'
  583. ops+='<option name = "n2">Logs desativado</option>'
  584. }
  585.   else ops = '<option name = "n">Logs desativado</option>';
  586. if (doc.chatjoin !==''){
  587.   var cargo = await asuna.guilds.get(guildaicon2[0].id,doc.chatjoin,2)
  588.   ops2 =await asuna.guilds.get(guildaicon2[0].id,doc.chatjoin,2) ? `<option name = "r">${cargo.name}</option>` : `<option name = "r">Canal deletado </option>`
  589.   ops2+='<option name = "n2">Autorole desativado</option>'
  590.  
  591. }
  592. else  ops2 = '<option name = "r">Autorole desativado</option>';
  593. if (doc.cmute1 !== ''){
  594.   var canal = await asuna.guilds.get(guildaicon2[0].id,doc.cmute1,3)
  595. ops3= await asuna.guilds.get(guildaicon2[0].id,doc.cmute1,3) ? `<option name = "r">${canal.name}</option>` : `<option name = "r">Canal deletado </option>`
  596. ops3+=`<option name= "n2">Desativar mensagem de bem-vindo</option>`
  597. msg = doc.cmuute2
  598. }
  599. else ops3 = `<option name= "n2">Desativar mensagem de bem-vindo</option>`
  600. if (doc.setleave !==''){
  601.   var canal = await asuna.guilds.get(guildaicon2[0].id,doc.setleave,3)
  602.   ops4=  await asuna.guilds.get(guildaicon2[0].id,doc.setleave,3) ? `<option name = "r">${canal.name}</option>` : `<option name = "r">Canal deletado </option>`
  603. ops4+=`<option name= "n2">Desativar mensagem de saida</option>`
  604. msg2 = doc.setjoin
  605. }
  606. else ops4=`<option name= "n2">Desativar mensagem de saida</option>`
  607. if (doc.chatleave !== 'XXX'){
  608. ops5 = '<option>Ativado</option>'
  609. ops5 += '<option>Desativado</option>'
  610. }
  611. else{
  612.   ops5 = '<option>Desativado</option>'
  613.   ops5+= '<option>Ativado</option>'
  614. }
  615.  ops6 = doc.muted
  616. })
  617.  
  618.  
  619.     for (var i =0;i < await asuna.guilds.get(guildaicon2[0].id,0,7);i++){
  620.       var baguiu2 = await asuna.guilds.get(guildaicon2[0].id,0,9)
  621.       var baguiu = `<option name = ${baguiu2[i]}>${baguiu2[i]}</option>`
  622. ops+= `${baguiu}`
  623. ops3+=`${baguiu}`
  624. ops4+=`${baguiu}`
  625. }
  626. for (var i=0; i < await asuna.guilds.get(guildaicon2[0].id,0,8);i++){
  627.   var baguiu3 = await asuna.guilds.get(guildaicon2[0].id,0,10)
  628.   ops2+= `<option name = ${baguiu3[i]}>${baguiu3[i]}</option>`
  629. }
  630.     alt1 = alt1.replace(/<select  id = 'in' name = 'logs'><option><\/option><\/select>/,`<select  id = 'in' name = 'logs | ${guildaicon2[0].id}'>${ops}</select>`)
  631.    alt1 = alt1.replace(/<select id = 'in2' name = 'autorole'> <\/select>/,`<select id = 'in2' name = 'autorole | ${guildaicon2[0].id}'>${ops2}</select>`)
  632.    alt1 = alt1.replace(/<select id = 'in3' name = 'entrada'><\/select>/,`<select id = 'in3' name = 'entrada | ${guildaicon2[0].id}'>${ops3}</select>`)
  633.    alt1= alt1.replace(/<textarea  maxlength="1000" id = 'entrada1' name = 'entradatxt'><\/textarea>/,`<textarea type = 'text' maxlength="1000" id = 'entrada1' name = 'entradatxt'>${msg}</textarea>`)
  634.    alt1= alt1.replace(/<select id = 'in4' name = 'saida'><\/select>/,`<select id = 'in4' name = 'saida | ${guildaicon2[0].id}'>${ops4}</select>`)
  635.   alt1 = alt1.replace(/<textarea  maxlength="1000" id = 'saida1' name = 'saidatxt'><\/textarea>/,`<textarea  maxlength="1000" id = 'saida1' name = 'saidatxt'>${msg2}</textarea>`)
  636.   alt1 = alt1.replace(/<input name = 'prefix' id = 'prefix1'>/,`<input name = 'prefix | ${guildaicon2[0].id}' id = 'prefix1' value = '${ops6}'>`)
  637.   alt1 = alt1.replace(/<select name = 'lootbox' id = 'lootbox1'><\/select>/,`<select name = 'lootbox | ${guildaicon2[0].id}' id = 'lootbox1'>${ops5}</select>`)
  638.   res.send(alt1)
  639.   })
  640. })
  641. app.get('/logado/moderacao', async function(req, res){
  642. var ip = (req.headers['x-forwarded-for'] || req.connection.remoteAddress || req.socket.remoteAddress ||req.connection.socket.remoteAddress).split(",")[0];
  643.   if (!usuarios[ip]) return   res.redirect(`/`);  
  644.  
  645.   fs.readFile('./mode.html', 'utf8', async function (err, data) {
  646.     var avatar = `https://cdn.discordapp.com/avatars/${usuarios[ip][0].id}/${usuarios[ip][0].avatar}.png?size=2048`
  647.     var alt1 = data.replace(/<img src = '' id = 'vatar'> /, `<img src = '${avatar}' id = 'vatar'>`)
  648.     var guildas = guilds(usuarios[ip][1])
  649.     var posicon = 500;
  650.     var perm = guildas;
  651.     var permr= []
  652.     var permreal = []
  653.     for (var i=0; i < perm.length;i++){
  654.       var a = await asuna.guilds.get(perm[i].id,'',0)
  655.       if (a != null && a== true){
  656.         permr.push(perm[i])
  657.       }
  658.     }
  659.     for (var i=0; i < permr.length;i++){
  660.       var a = await asuna.guilds.get(permr[i].id,`${usuarios[ip][0].id}`,15)
  661.       if (a != null && a== true){
  662.         permreal.push(permr[i])
  663.       }
  664.     }
  665.  
  666.  
  667.     var guildasm = permreal
  668.     var img = '';
  669.     for (var i = 0; i < guildasm.length; i++) {
  670.  
  671.       var guildaurl = guildasm[i].i == null ? `https://cdn.discordapp.com/icons/357953594852376597/2ea935d0c3c4be60f9ff854f71ac45e2.jpg` : `https://cdn.discordapp.com/icons/${guildasm[i].id}/${guildasm[i].i}.jpg`
  672.       img += `<img src = ${guildaurl} style = 'position:absolute;top:250px;left:${posicon}px' id = ${guildasm[i].id}>`
  673.     posicon+=60
  674.     }
  675.     res.send(alt1.replace(/<div id = 'sv'><\/div>/, `<div id = 'sv'><br><h1 style = 'position:absolute;top:150px;left:450px'>Escolha um servidor:</h1>${img}</div>`))
  676.   })
  677. })
  678. app.get('/logado/parcerias', (req, res) => {
  679.   fs.readFile('./parcerias.html', 'utf8', function (err, data) {
  680.   var ip = (req.headers['x-forwarded-for'] || req.connection.remoteAddress || req.socket.remoteAddress ||req.connection.socket.remoteAddress).split(",")[0];    
  681.    if (!usuarios[ip])return  res.redirect('/');
  682.     var id = usuarios[ip][0].id
  683.       var avatar = `https://cdn.discordapp.com/avatars/${id}/${usuarios[ip][0].avatar}.png?size=2048`
  684.       res.send(data.replace(/<img src = '' id = 'vatar'> /, `<img src = '${avatar}' id = 'vatar'>`))
  685.   })
  686. })  
  687. app.get('/logado/suporte', (req, res) => {
  688.   fs.readFile('./suporte.html', 'utf8', function (err, data) {
  689.   var ip = (req.headers['x-forwarded-for'] || req.connection.remoteAddress || req.socket.remoteAddress ||req.connection.socket.remoteAddress).split(",")[0];
  690.       if (!usuarios[ip]) return res.redirect('/');
  691.     var id = usuarios[ip][0].id
  692.       var avatar = `https://cdn.discordapp.com/avatars/${id}/${usuarios[ip][0].avatar}.png?size=2048`
  693.       res.send(data.replace(/<img src = '' id = 'vatar'> /, `<img src = '${avatar}' id = 'vatar'>`))
  694.   })
  695. })  
  696. app.get('/logado', (req, res) => {
  697.   fs.readFile('./logado.html', 'utf8', function (err, data) {
  698.   var ip = (req.headers['x-forwarded-for'] || req.connection.remoteAddress || req.socket.remoteAddress ||req.connection.socket.remoteAddress).split(",")[0];  
  699.     if (!usuarios[ip]) return res.redirect('/');
  700.     var id = usuarios[ip][0].id
  701.       var avatar = `https://cdn.discordapp.com/avatars/${id}/${usuarios[ip][0].avatar}.png?size=2048`
  702.       res.send(data.replace(/<img src = '' id = 'vatar'> /, `<img src = '${avatar}' id = 'vatar'>`))
  703.   })
  704. })
  705. http.createServer(app).listen(process.env.PORT ||  8080, () => {
  706.   console.log('server funcionando');
  707. })
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement