diff --git a/bot/task.py b/bot/task.py deleted file mode 100644 index 3a58d0f..0000000 --- a/bot/task.py +++ /dev/null @@ -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)) \ No newline at end of file