Advertisement
Guest User

Untitled

a guest
Apr 23rd, 2019
97
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.29 KB | None | 0 0
  1. function whitelist (user, params) {
  2. if (user.getPersistence().hasNumber('applock')) {
  3. user.sendPrivateMessage('Zugriff verweigert.');
  4. return;
  5. }
  6. if (!KnuddelsServer.getPersistence().hasNumber('acceptedAGB')) {
  7. user.sendPrivateMessage('Die App ist noch nicht freigeschaltet. Bitte starte die App kurz neu und stimme den Nutzungsbedingungen zu.');
  8. return;
  9. }
  10. if (!KnuddelsServer.getPersistence().hasNumber('whitelist')) {
  11. user.sendPrivateMessage('Die Whitelist ist deaktiviert. Du kannst sie unter den °>App-Steuerelementen|/nemo module<° aktivieren.');
  12. return;
  13. }
  14. KnuddelsServer.getPersistence().addNumber('blacklistCounter', 1);
  15. paramsArray = params.split(':'); params = paramsArray[0]; params2 = paramsArray[1]; params3 = paramsArray[2];
  16. switch (params.toLowerCase()) {
  17. case '':
  18. if (!user.isAppDeveloper() && !user.isChannelModerator() && !user.isAppManager() && !user.getPersistence().hasNumber('Dev')) {
  19. user.sendPrivateMessage('Nicht genügend Rechte.');
  20. return;
  21. }
  22. var whiteList = KnuddelsServer.getPersistence().getObject('whitelisted', []);
  23. var list = whiteList.toString().replaceAll('[', '').replaceAll(']', '');
  24. user.sendPrivateMessage('°#°_°BB°Whitelist§°#°'+
  25. '°12°Nutzer auf dieser Liste können den Channel jederzeit betreten, sofern sie nicht durch andere Funktionen dieser App ausgeschlossen werden. '+
  26. 'Admins und MyChannel-Moderatoren können unabhängig hiervon jeden Channel betreten.§°##°'+
  27. 'Folgende Nutzer stehen auf der Whitelist:°##°'+
  28. list+
  29. '°##°_°>_h\/whitelist add:nick|/tf-overridesb /whitelist add:[Nick]<°§ Setzt Nick auf die Whitelist.°#°'+
  30. '_°>_h\/whitelist remove:nick|/tf-overridesb /whitelist remove:[Nick]<°§ Entfernt Nick von der Whitelist.'+
  31. '°##°°12°Um die technische Verarbeitung zu vereinfachen, werden alle Nutzer in Kleinbuchstaben dargestellt.§°#°');
  32. break;
  33. case 'add':
  34. if (!user.isAppDeveloper() && !user.isAppManager() && !user.getPersistence().hasNumber('Dev')) {
  35. user.sendPrivateMessage('Nicht genügend Rechte.');
  36. return;
  37. }
  38. var whitelist = KnuddelsServer.getPersistence().getObject('whitelisted', []);
  39. var userAccess = KnuddelsServer.getUserAccess();
  40. var nutzer = ''+params2.escapeKCode()+'';
  41. if (KnuddelsServer.getPersistence().hasNumber(nutzer.toLowerCase())) {
  42. user.sendPrivateMessage('°>_h'+nutzer+'|/w '+nutzer+'<° steht bereits auf der Whitelist.');
  43. return;
  44. }
  45. if (userAccess.exists(nutzer)) {
  46. whitelist.push(nutzer.toLowerCase());
  47. KnuddelsServer.getPersistence().setObject('whitelisted', whitelist);
  48. KnuddelsServer.getPersistence().setNumber(nutzer.toLowerCase(), 1);
  49. user.sendPrivateMessage('Ich habe °>_h'+nutzer+'|/w '+nutzer+'<° auf die Whitelist gesetzt.');
  50. } else {
  51. user.sendPrivateMessage('Sorry, aber '+params2+' gibt es nicht.');
  52. return;
  53. }
  54. break;
  55. case 'remove':
  56. if (!user.isAppDeveloper() && !user.isAppManager() && !user.getPersistence().hasNumber('Dev')) {
  57. user.sendPrivateMessage('Nicht genügend Rechte.');
  58. return;
  59. }
  60. var whitelist = KnuddelsServer.getPersistence().getObject('whitelisted', []);
  61. var nutzer = ''+params2.escapeKCode()+'';
  62. for (var i = 0; i < whitelist.length; i++) {
  63. var Nutzer = whitelist[i];
  64. if (Nutzer.toLowerCase() == nutzer.toLowerCase()) {
  65. var start = whitelist.indexOf(Nutzer);
  66. KnuddelsServer.getPersistence().setNumber('place', start);
  67. }
  68. }
  69. if (!KnuddelsServer.getPersistence().hasNumber(nutzer.toLowerCase())) {
  70. user.sendPrivateMessage('°>_h'+nutzer+'|/w '+nutzer+'<° steht nicht auf der Whitelist.');
  71. return;
  72. }
  73. KnuddelsServer.getPersistence().deleteNumber(nutzer.toLowerCase());
  74. var index = KnuddelsServer.getPersistence().getNumber('place');
  75. var newArray1 = whitelist.slice(0, index);
  76. var newArray2 = whitelist.slice((index+1), whitelist.length);
  77. var newArray = newArray1.concat(newArray2);
  78. KnuddelsServer.getPersistence().setObject('whitelisted', newArray);
  79. user.sendPrivateMessage('°>_h'+nutzer+'|/w '+nutzer+'<° wurde von der Whitelist entfernt.');
  80. KnuddelsServer.getPersistence().deleteNumber('place');
  81. break;
  82. default:
  83. }
  84. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement