feat(timer): Add new current task.
This commit is contained in:
@@ -8,10 +8,12 @@ from gui.cards import FocusTimerCard, BreakTimerCard
|
|||||||
if TYPE_CHECKING:
|
if TYPE_CHECKING:
|
||||||
from .timer import Timer, Stage
|
from .timer import Timer, Stage
|
||||||
from tracking.voice.cog import VoiceTrackerCog
|
from tracking.voice.cog import VoiceTrackerCog
|
||||||
|
from modules.nowdoing.cog import NowDoingCog
|
||||||
|
|
||||||
|
|
||||||
async def get_timer_card(bot: LionBot, timer: 'Timer', stage: 'Stage'):
|
async def get_timer_card(bot: LionBot, timer: 'Timer', stage: 'Stage'):
|
||||||
voicecog: 'VoiceTrackerCog' = bot.get_cog('VoiceTrackerCog')
|
voicecog: 'VoiceTrackerCog' = bot.get_cog('VoiceTrackerCog')
|
||||||
|
nowcog: 'NowDoingCog' = bot.get_cog('NowDoingCog')
|
||||||
|
|
||||||
name = timer.base_name
|
name = timer.base_name
|
||||||
if stage is not None:
|
if stage is not None:
|
||||||
@@ -23,16 +25,22 @@ async def get_timer_card(bot: LionBot, timer: 'Timer', stage: 'Stage'):
|
|||||||
card_users = []
|
card_users = []
|
||||||
guildid = timer.data.guildid
|
guildid = timer.data.guildid
|
||||||
for member in timer.members:
|
for member in timer.members:
|
||||||
if voicecog is not None:
|
profile = await bot.get_cog('ProfileCog').fetch_profile_discord(member)
|
||||||
session = voicecog.get_session(guildid, member.id)
|
task = nowcog.tasks.get(profile.profileid, None)
|
||||||
tag = session.tag
|
tag = ''
|
||||||
if session.start_time:
|
session_duration = 0
|
||||||
session_duration = (utc_now() - session.start_time).total_seconds()
|
|
||||||
else:
|
if task:
|
||||||
session_duration = 0
|
tag = task.task
|
||||||
|
session_duration = ((task.done_at or utc_now()) - task.started_at).total_seconds()
|
||||||
else:
|
else:
|
||||||
session_duration = 0
|
session = voicecog.get_session(guildid, member.id)
|
||||||
tag = None
|
if session:
|
||||||
|
tag = session.tag
|
||||||
|
if session.start_time:
|
||||||
|
session_duration = (utc_now() - session.start_time).total_seconds()
|
||||||
|
else:
|
||||||
|
session_duration = 0
|
||||||
|
|
||||||
card_user = (
|
card_user = (
|
||||||
(member.id, (member.avatar or member.default_avatar).key),
|
(member.id, (member.avatar or member.default_avatar).key),
|
||||||
|
|||||||
Reference in New Issue
Block a user