You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

35 lines
1.5KB

  1. import web
  2. import models.project
  3. from views.utils import get_nav_bar
  4. # Get html templates
  5. render = web.template.render('templates/')
  6. class Index:
  7. def GET(self):
  8. """
  9. Get main page using the projects URL input variable to
  10. determine which projects to show.
  11. :return: index page
  12. """
  13. session = web.ctx.session
  14. nav = get_nav_bar(session)
  15. data = web.input(projects=None)
  16. categories = models.project.get_categories()
  17. project_bulk_one = []
  18. project_bulk_two = []
  19. if data.projects == 'my':
  20. project_bulk_one = models.project.get_projects_by_status_and_owner(str(session.userid), "open")
  21. project_bulk_two = models.project.get_projects_by_status_and_owner(str(session.userid), "in progress")
  22. elif data.projects == 'customer':
  23. # TODO: Can customer projects be open?
  24. project_bulk_one = models.project.get_projects_by_participant_and_status(str(session.userid), "open")
  25. project_bulk_two = models.project.get_projects_by_participant_and_status(str(session.userid), "in progress")
  26. elif data.projects == 'finished':
  27. project_bulk_one = models.project.get_projects_by_status_and_owner(str(session.userid), "finished")
  28. project_bulk_two = models.project.get_projects_by_participant_and_status(str(session.userid), "finished")
  29. return render.index(nav, project_bulk_one, project_bulk_two, data.projects, categories)