mirror of
https://github.com/UiO-Gaming/ShiteMusicBot.git
synced 2026-11-07 06:44:29 +01:00
Queue translations
This commit is contained in:
1 parent
204f405c75
commit
0cb298cd8b
6 files changed
+63
-28
No files matched your search
+1
-1
@@ -10,7 +10,7 @@ class BotSettings:
|
||||
self.bot = bot
|
||||
self.settings = self.bot.settings
|
||||
|
||||
@checks.is_owner()
|
||||
@checks.is_admin()
|
||||
@commands.group(name='set', hidden=True)
|
||||
async def _set(self, ctx):
|
||||
if ctx.invoked_subcommand is None:
|
||||
|
||||
+3
-3
@@ -215,7 +215,7 @@ class Music:
|
||||
|
||||
if user is None:
|
||||
queue = player.global_queue()
|
||||
scroller = QueueScroller(ctx, queue, lines_per_page=10)
|
||||
scroller = QueueScroller(ctx, queue, localizer, lines_per_page=10)
|
||||
await scroller.start_scrolling()
|
||||
|
||||
else:
|
||||
@@ -223,7 +223,7 @@ class Music:
|
||||
if not user_queue:
|
||||
return await ctx.send(localizer.format_str("{queue.empty}", _user=user.name))
|
||||
|
||||
scroller = QueueScroller(ctx, user_queue, lines_per_page=10, user_name=user.name)
|
||||
scroller = QueueScroller(ctx, user_queue, localizer, lines_per_page=10, user_name=user.name)
|
||||
await scroller.start_scrolling()
|
||||
|
||||
@commands.command(name='myqueue', aliases=['mq','minkø','mk'])
|
||||
@@ -236,7 +236,7 @@ class Music:
|
||||
if not user_queue:
|
||||
return await ctx.send(localizer.format_str("{my_queue}"))
|
||||
|
||||
scroller = QueueScroller(ctx, user_queue, lines_per_page=10, user_name=ctx.author.name)
|
||||
scroller = QueueScroller(ctx, user_queue, localizer, lines_per_page=10, user_name=ctx.author.name)
|
||||
await scroller.start_scrolling()
|
||||
|
||||
@commands.command(name='pause', aliases=['resume','gjenoppta'])
|
||||
|
||||
+42
-21
@@ -3,12 +3,14 @@ import discord
|
||||
import math
|
||||
import lavalink
|
||||
|
||||
|
||||
class CantScroll(Exception):
|
||||
pass
|
||||
|
||||
# Maybe slightly very copied from rdanny
|
||||
# Thanks danny <3
|
||||
|
||||
|
||||
class EmbedScroller:
|
||||
def __init__(self, ctx, pages):
|
||||
|
||||
@@ -48,7 +50,7 @@ class EmbedScroller:
|
||||
raise CantScroll('Bot does not have add reactions permission.')
|
||||
|
||||
if not self.permissions.read_message_history:
|
||||
raise CantScroll('Bot does not have Read Message History permission.')
|
||||
raise CantScroll('Bot does not have Read Message History permission.')
|
||||
|
||||
async def send(self):
|
||||
self.current_page = 0
|
||||
@@ -63,7 +65,7 @@ class EmbedScroller:
|
||||
for (reaction, _) in self.reaction_emojis:
|
||||
if len(self.pages) == 2 and reaction in ('\u23ed', '\u23ee'):
|
||||
continue
|
||||
|
||||
|
||||
await self.message.add_reaction(reaction)
|
||||
|
||||
async def scroll(self, page):
|
||||
@@ -135,19 +137,23 @@ class ScrollerFromLines(EmbedScroller):
|
||||
page = ''
|
||||
for index, line in enumerate(lines):
|
||||
page += line + '\n'
|
||||
if index%lines_per_page == lines_per_page - 1:
|
||||
if index % lines_per_page == lines_per_page - 1:
|
||||
embed = discord.Embed(color=0xEFD26C,
|
||||
title=description,
|
||||
description=page)
|
||||
embed.set_footer(text=f'Viewing page {index//lines_per_page}/{pagecount}')
|
||||
title=description,
|
||||
description=page)
|
||||
embed.set_footer(text=localizer.format_str("{queue.pageindicator}",
|
||||
_current=index//lines_per_page + 1,
|
||||
_total=pagecount))
|
||||
pages.append(embed)
|
||||
page = ''
|
||||
|
||||
if page != '':
|
||||
embed = discord.Embed(color=0xEFD26C,
|
||||
description=page)
|
||||
description=page)
|
||||
|
||||
embed.set_footer(text=f'Viewing page {pagecount}/{pagecount}')
|
||||
embed.set_footer(text=localizer.format_str("{queue.pageindicator}",
|
||||
_current=pagecount,
|
||||
_total=pagecount))
|
||||
pages.append(embed)
|
||||
|
||||
super().__init__(ctx=ctx, pages=pages)
|
||||
@@ -155,38 +161,53 @@ class ScrollerFromLines(EmbedScroller):
|
||||
|
||||
class QueueScroller(EmbedScroller):
|
||||
""" Fugly, but works for now """
|
||||
def __init__(self, ctx, queue, lines_per_page=10, user_name: str=None):
|
||||
def __init__(self, ctx, queue, localizer, lines_per_page=10, user_name: str=None):
|
||||
|
||||
pagecount = math.ceil(len(queue) / lines_per_page)
|
||||
self.queue = queue
|
||||
|
||||
if user_name is None:
|
||||
title = f'**Queue** `{len(queue)} songs`'
|
||||
title = localizer.format_str("{queue.length}",
|
||||
_length=len(queue))
|
||||
else:
|
||||
title = f'**{user_name}\'s queue** `{len(queue)} songs`'
|
||||
title = localizer.format_str("{queue.userqueue}",
|
||||
_user=user_name,
|
||||
_length=len(queue))
|
||||
pages = []
|
||||
page = ''
|
||||
for index, temp in enumerate(queue):
|
||||
if user_name is None:
|
||||
track = temp
|
||||
page += f'`{index + 1}.` **[{track.title}]({track.uri})** _by <@{track.requester}>_\n'
|
||||
page += localizer.format_str("{queue.globaltrack}",
|
||||
_index=index+1,
|
||||
_title=track.title,
|
||||
_uri=track.uri,
|
||||
_user_id=track.requester)
|
||||
else:
|
||||
track, globpos = temp
|
||||
page += f'`{index + 1}({globpos + 1}).` **[{track.title}]({track.uri})**\n'
|
||||
page += localizer.format_str("{queue.usertrack}",
|
||||
_index=index+1,
|
||||
_globalindex=globpos+1,
|
||||
_title=track.title,
|
||||
_uri=track.uri)
|
||||
|
||||
if index%lines_per_page == lines_per_page - 1:
|
||||
if index % lines_per_page == lines_per_page - 1:
|
||||
embed = discord.Embed(color=0xEFD26C,
|
||||
title=title,
|
||||
description=page)
|
||||
embed.set_footer(text=f'Viewing page {index//lines_per_page + 1}/{pagecount}')
|
||||
title=title,
|
||||
description=page)
|
||||
embed.set_footer(text=localizer.format_str("{queue.pageindicator}",
|
||||
_current=index//lines_per_page + 1,
|
||||
_total=pagecount))
|
||||
pages.append(embed)
|
||||
page = ''
|
||||
|
||||
if page != '':
|
||||
embed = discord.Embed(color=0xEFD26C,
|
||||
title=title,
|
||||
description=page)
|
||||
embed.set_footer(text=f'Viewing page {pagecount}/{pagecount}')
|
||||
title=title,
|
||||
description=page)
|
||||
embed.set_footer(text=localizer.format_str("{queue.pageindicator}",
|
||||
_current=pagecount,
|
||||
_total=pagecount))
|
||||
pages.append(embed)
|
||||
|
||||
super().__init__(ctx=ctx, pages=pages)
|
||||
@@ -196,4 +217,4 @@ class QueueScroller(EmbedScroller):
|
||||
if page < 0 or page >= len(self.pages):
|
||||
return
|
||||
self.current_page = page
|
||||
await self.message.edit(embed=self.pages[page])
|
||||
await self.message.edit(embed=self.pages[page])
|
||||
@@ -25,7 +25,12 @@
|
||||
"now": "Now Playing",
|
||||
"queue": {
|
||||
"empty": "The queue is empty",
|
||||
"user_empty": "{_user}'s queue is empty"
|
||||
"user_empty": "{_user}'s queue is empty",
|
||||
"length": "**Queue** `{_length} songs`",
|
||||
"userqueue": "**{_user}\\'s queue** `{_length}`",
|
||||
"globaltrack":"`{_index}.` **[{_title}]({_uri})** _by <@{_user_id}>_\n",
|
||||
"usertrack":"`{_index}({_globalindex}).` **[{_title}]({_uri})**\n",
|
||||
"pageindicator":"Viewing page {_current}/{_total}"
|
||||
},
|
||||
"my_queue": "Your queue is empty",
|
||||
"resume": {
|
||||
|
||||
@@ -25,7 +25,12 @@
|
||||
"now": "Spiller nå",
|
||||
"queue": {
|
||||
"empty": "Køen er tom",
|
||||
"user_empty": "{_user} sin kø er tom"
|
||||
"user_empty": "{_user} sin kø er tom",
|
||||
"length": "**Kø** `{_length} sanger`",
|
||||
"userqueue": "**{_user} sin kø** `{_length}` sanger",
|
||||
"globaltrack":"`{_index}.` **[{_title}]({_uri})** _av <@{_user_id}>_\n",
|
||||
"usertrack":"`{_index}({_globalindex}).` **[{_title}]({_uri})**\n",
|
||||
"pageindicator":"Viser side {_current}/{_total}"
|
||||
},
|
||||
"my_queue": "Din kø er tom",
|
||||
"resume": {
|
||||
|
||||
@@ -25,7 +25,11 @@
|
||||
"now": "Spelar no",
|
||||
"queue": {
|
||||
"empty": "Køa er tom",
|
||||
"user_empty": "{_user} sin kø er tom"
|
||||
"user_empty": "{_user} sin kø er tom",
|
||||
"userqueue": "Køen til **{_user}** `{_length}` songar",
|
||||
"globaltrack":"`{_index}.` **[{_title}]({_uri})** _av <@{_user_id}>_\n",
|
||||
"usertrack":"`{_index}({_globalindex}).` **[{_title}]({_uri})**\n",
|
||||
"pageindicator":"Viser side {_current}/{_total}"
|
||||
},
|
||||
"my_queue": "Din kø er tom",
|
||||
"resume": {
|
||||
|
||||
Reference in new issue
Block a user