Update app.py
Browse files
app.py
CHANGED
@@ -160,7 +160,7 @@ Please provide:
|
|
160 |
except Exception as e:
|
161 |
raise Exception(f"Error improving task description: {str(e)}")
|
162 |
|
163 |
-
def create_trello_card(task_description, selected_members):
|
164 |
"""Create a Trello card with the improved task description"""
|
165 |
try:
|
166 |
boards = trello_client.list_boards()
|
@@ -168,30 +168,70 @@ def create_trello_card(task_description, selected_members):
|
|
168 |
raise Exception("No Trello boards found")
|
169 |
|
170 |
board = boards[0]
|
171 |
-
print(f"Using board: {board.name}")
|
172 |
|
173 |
lists = board.list_lists()
|
174 |
if not lists:
|
175 |
raise Exception("No lists found in the board")
|
176 |
|
177 |
todo_list = lists[0]
|
178 |
-
print(f"Using list: {todo_list.name}")
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
179 |
|
180 |
-
# Create card with improved description
|
181 |
card = todo_list.add_card(
|
182 |
-
name=
|
183 |
-
desc=
|
184 |
)
|
185 |
|
186 |
-
|
187 |
-
|
188 |
-
|
|
|
|
|
|
|
|
|
|
|
189 |
|
190 |
# Assign members to card
|
191 |
if selected_members:
|
192 |
for member_id in selected_members:
|
193 |
try:
|
194 |
-
# Get the member object from the board before adding
|
195 |
member = next((m for m in board.get_members() if m.id == member_id), None)
|
196 |
if member:
|
197 |
card.add_member(member)
|
|
|
160 |
except Exception as e:
|
161 |
raise Exception(f"Error improving task description: {str(e)}")
|
162 |
|
163 |
+
def create_trello_card(task_description, selected_members, location=None):
|
164 |
"""Create a Trello card with the improved task description"""
|
165 |
try:
|
166 |
boards = trello_client.list_boards()
|
|
|
168 |
raise Exception("No Trello boards found")
|
169 |
|
170 |
board = boards[0]
|
171 |
+
print(f"Using board: {board.name}")
|
172 |
|
173 |
lists = board.list_lists()
|
174 |
if not lists:
|
175 |
raise Exception("No lists found in the board")
|
176 |
|
177 |
todo_list = lists[0]
|
178 |
+
print(f"Using list: {todo_list.name}")
|
179 |
+
|
180 |
+
# Extract title and add timestamp
|
181 |
+
timestamp = datetime.now().strftime("%Y-%m-%d %H:%M")
|
182 |
+
title = task_description.split('\n')[0]
|
183 |
+
formatted_title = f"[{timestamp}] {title}"
|
184 |
+
|
185 |
+
location_text = "Remote/Virtual"
|
186 |
+
location_coords = None
|
187 |
+
|
188 |
+
if location:
|
189 |
+
location_text = location
|
190 |
+
# If you want to add coordinates, you could use a geocoding service here
|
191 |
+
# Example: coordinates = geocode_location(location)
|
192 |
+
# location_coords = f"{coordinates['lat']},{coordinates['lng']}"
|
193 |
+
|
194 |
+
formatted_description = f"""π― TASK DETAILS
|
195 |
+
------------------------
|
196 |
+
{task_description}
|
197 |
+
|
198 |
+
π METADATA
|
199 |
+
------------------------
|
200 |
+
π Created: {timestamp}
|
201 |
+
π·οΈ Source: TaskWhisper AI
|
202 |
+
π Status: New
|
203 |
+
π Location: {location_text}
|
204 |
+
|
205 |
+
β
CHECKLIST
|
206 |
+
------------------------
|
207 |
+
- [ ] Task reviewed
|
208 |
+
- [ ] Requirements clear
|
209 |
+
- [ ] Timeline confirmed
|
210 |
+
- [ ] Resources identified
|
211 |
+
|
212 |
+
π NOTES
|
213 |
+
------------------------
|
214 |
+
Add your progress notes here...
|
215 |
+
"""
|
216 |
|
|
|
217 |
card = todo_list.add_card(
|
218 |
+
name=formatted_title,
|
219 |
+
desc=formatted_description
|
220 |
)
|
221 |
|
222 |
+
if location_coords:
|
223 |
+
card.set_pos(location_coords)
|
224 |
+
|
225 |
+
# Add a yellow label if available
|
226 |
+
available_labels = board.get_labels()
|
227 |
+
yellow_label = next((label for label in available_labels if label.color == 'yellow'), None)
|
228 |
+
if yellow_label:
|
229 |
+
card.add_label(yellow_label)
|
230 |
|
231 |
# Assign members to card
|
232 |
if selected_members:
|
233 |
for member_id in selected_members:
|
234 |
try:
|
|
|
235 |
member = next((m for m in board.get_members() if m.id == member_id), None)
|
236 |
if member:
|
237 |
card.add_member(member)
|