import toolbox
import gtk_toolbox
import rtm_backend
+import cache_backend
import rtm_api
return username, password, token
+def project_sort_by_type(projects):
+ sortedProjects = list(projects)
+ def advanced_key(proj):
+ if proj["name"] == "Inbox":
+ type = 0
+ elif proj["name"] == "Sent":
+ type = 1
+ elif not proj["isMeta"]:
+ type = 2
+ else:
+ type = 3
+ return type, proj["name"]
+ sortedProjects.sort(key=advanced_key)
+ return sortedProjects
+
+
def item_sort_by_priority_then_date(items):
sortedTasks = list(items)
sortedTasks.sort(
while True:
try:
self._manager = rtm_backend.RtmBackend(*credentials)
+ self._manager = cache_backend.CacheBackend(self._manager)
self._credentials = credentials
return # Login succeeded
except rtm_api.AuthStateMachine.NoData:
self._manager = None
def _populate_projects(self):
- for project in self._manager.get_projects():
+ projects = self._manager.get_projects()
+ sortedProjects = project_sort_by_type(projects)
+ for project in sortedProjects:
projectName = project["name"]
isVisible = project["isVisible"]
row = (projectName, )