voice.js 2.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. const {defaultSettings} = require('../util/default.json');
  2. var db = require('../util/database.js');
  3. function cmd_voice(lang, msg, args, line, wiki) {
  4. if ( msg.isAdmin() ) {
  5. if ( !args.join('') ) {
  6. var text = lang.get('voice.text') + '\n`' + lang.get('voice.channel') + ' – <' + lang.get('voice.name') + '>`\n';
  7. text += lang.get('voice.' + ( msg.guild.id in voice ? 'disable' : 'enable' )).replaceSave( '%s', ( patreons[msg.guild.id] || process.env.prefix ) + 'voice toggle' );
  8. return msg.replyMsg( text, {}, true );
  9. }
  10. args[1] = args.slice(1).join(' ').trim()
  11. if ( args[0].toLowerCase() === 'toggle' && !args[1] ) {
  12. var value = ( msg.guild.id in voice ? null : 1 );
  13. return db.run( 'UPDATE discord SET voice = ? WHERE guild = ? AND channel IS NULL', [value, msg.guild.id], function (dberror) {
  14. if ( dberror ) {
  15. console.log( '- Error while editing the voice settings: ' + dberror );
  16. msg.replyMsg( lang.get('settings.save_failed'), {}, true );
  17. return dberror;
  18. }
  19. if ( !this.changes ) return db.run( 'INSERT INTO discord(guild, voice) VALUES(?, ?)', [msg.guild.id, value], function (error) {
  20. if ( error ) {
  21. console.log( '- Error while adding the voice settings: ' + error );
  22. msg.replyMsg( lang.get('settings.save_failed'), {}, true );
  23. return error;
  24. }
  25. console.log( '- Voice settings successfully added.' );
  26. voice[msg.guild.id] = defaultSettings.lang;
  27. msg.replyMsg( lang.get('voice.enabled') + '\n`' + lang.get('voice.channel') + ' – <' + lang.get('voice.name') + '>`', {}, true );
  28. } );
  29. console.log( '- Voice settings successfully updated.' );
  30. if ( value ) {
  31. voice[msg.guild.id] = lang.lang;
  32. db.get( 'SELECT lang FROM discord WHERE guild = ? AND channel IS NULL', [msg.guild.id], (error, row) => {
  33. if ( error ) {
  34. console.log( '- Error while getting the voice language: ' + error );
  35. return error;
  36. }
  37. console.log( '- Voice language successfully updated.' );
  38. voice[msg.guild.id] = row.lang;
  39. } );
  40. msg.replyMsg( lang.get('voice.enabled') + '\n`' + lang.get('voice.channel') + ' – <' + lang.get('voice.name') + '>`', {}, true );
  41. }
  42. else {
  43. delete voice[msg.guild.id];
  44. msg.replyMsg( lang.get('voice.disabled'), {}, true );
  45. }
  46. } );
  47. }
  48. }
  49. if ( msg.channel.type !== 'text' || !pause[msg.guild.id] ) this.LINK(lang, msg, line, wiki);
  50. }
  51. module.exports = {
  52. name: 'voice',
  53. everyone: true,
  54. pause: true,
  55. owner: false,
  56. run: cmd_voice
  57. };