Supprimer bot/task.py
This commit is contained in:
parent
a9f2e56f63
commit
7abbf0961e
39
bot/task.py
39
bot/task.py
@ -1,39 +0,0 @@
|
||||
import asyncio, json, datetime, discord
|
||||
from discord.ui import View, Select
|
||||
|
||||
class TaskSelect(Select):
|
||||
def __init__(self, options):
|
||||
super().__init__(placeholder="Choose a task to complete...",
|
||||
min_values=1, max_values=1, options=options)
|
||||
|
||||
async def callback(self, interaction: discord.Interaction):
|
||||
payload = json.loads(self.values[0])
|
||||
tasklist_id = payload["tasklist_id"]
|
||||
task_id = payload["task_id"]
|
||||
|
||||
await interaction.response.defer(thinking=True)
|
||||
try:
|
||||
service = build_tasks_service()
|
||||
task = await asyncio.to_thread(lambda:
|
||||
service.tasks().get(tasklist=tasklist_id, task=task_id).execute())
|
||||
if not task:
|
||||
await interaction.followup.send("Task not found.", ephemeral=True)
|
||||
return
|
||||
|
||||
now = datetime.datetime.utcnow().replace(tzinfo=datetime.timezone.utc).isoformat()
|
||||
body = dict(task)
|
||||
body["status"] = "completed"
|
||||
body["completed"] = now
|
||||
|
||||
updated = await asyncio.to_thread(lambda: service.tasks().update(tasklist=tasklist_id, task=task_id, body=body).execute())
|
||||
|
||||
if updated.get("status") == "completed":
|
||||
await interaction.followup.send("Failed to mark completed.", ephemeral=True)
|
||||
|
||||
except Exception as e:
|
||||
await interaction.followup.send(f"Error: {e}", ephemeral=True)
|
||||
|
||||
class TasksView(View):
|
||||
def __init__(self, options, timeout=120):
|
||||
super().__init__(timeout=timeout)
|
||||
self.add_item(TaskSelect(options))
|
||||
Loading…
x
Reference in New Issue
Block a user