anmiles

List of users of the chat in Telegram

Jan 11th, 2016
102
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. (function(){
  2. var peerId = location.hash.match(/p=.*?(\d+)/)[1];
  3. var injector = angular.element(document.querySelector('[ng-controller]')).injector();
  4. var participants = injector.get('AppProfileManager').getChatFull(peerId).$$state.value.participants.participants;
  5. var usernames = {};
  6. var inviters = {};
  7. var admin_id = null;
  8. var result = [];
  9.  
  10. function defineUsername(id)
  11. {
  12.     if (usernames[id]) return;
  13.     var user = injector.get('AppPeersManager').getPeer(id);
  14.     usernames[id] = (user.first_name ? user.first_name.replace('\u202E', '') : '') + (user.last_name ? ' ' + user.last_name.replace('\u202E', '') : '') + (user.username ? ' (@' + user.username.replace('\u202E', '') + ')' : '');
  15. }
  16.  
  17. result.push('--------------------');
  18. result.push('Members: ');
  19. result.push('');
  20. for (var i in participants)
  21. {
  22.     defineUsername(participants[i].inviter_id);
  23.     defineUsername(participants[i].user_id);
  24.     result.push(usernames[participants[i].user_id]);
  25.     inviters[participants[i].inviter_id] = inviters[participants[i].inviter_id] || [];
  26.     inviters[participants[i].inviter_id].push(participants[i].user_id);
  27.     if (participants[i]._ == 'chatParticipantCreator') admin_id = participants[i].user_id;
  28. }
  29.  
  30. result.push('--------------------');
  31. result.push('Invites: ');
  32. result.push('');
  33.  
  34. result.push(usernames[admin_id] + ' created this chat');
  35.  
  36. function addUser(id)
  37. {
  38.     for (var i in inviters[id])
  39.     {
  40.         if (inviters[id][i]) result.push(usernames[id] + ' invited ' + usernames[inviters[id][i]]);
  41.         inviters[id][i] = null;
  42.     }
  43.    
  44.     for (var i in inviters[id])
  45.     {
  46.         addUser(inviters[id][i]);
  47.     }
  48. }
  49.  
  50. addUser(admin_id);
  51.  
  52. for (var i in inviters)
  53. {
  54.     addUser(i);
  55. }
  56.  
  57. result.push('--------------------');
  58. console.log(result.join('\r\n'));
  59.  
  60. })();
Add Comment
Please, Sign In to add comment