50 from soc.views.helper import redirects |
50 from soc.views.helper import redirects |
51 from soc.views.helper import widgets |
51 from soc.views.helper import widgets |
52 from soc.views.models import presence |
52 from soc.views.models import presence |
53 from soc.views.models import document as document_view |
53 from soc.views.models import document as document_view |
54 from soc.views.models import sponsor as sponsor_view |
54 from soc.views.models import sponsor as sponsor_view |
|
55 from soc.views.models import survey as survey_view |
55 from soc.views.sitemap import sidebar |
56 from soc.views.sitemap import sidebar |
56 |
57 |
57 import soc.cache.logic |
58 import soc.cache.logic |
58 import soc.logic.models.program |
59 import soc.logic.models.program |
59 import soc.models.work |
60 import soc.models.work |
634 items = [] |
635 items = [] |
635 |
636 |
636 if entity.status == 'visible': |
637 if entity.status == 'visible': |
637 # show the documents for this program, even for not logged in users |
638 # show the documents for this program, even for not logged in users |
638 items += document_view.view.getMenusForScope(entity, params) |
639 items += document_view.view.getMenusForScope(entity, params) |
|
640 items += survey_view.view.getMenusForScope(entity, params) |
639 items += self._getTimeDependentEntries(entity, params, id, user) |
641 items += self._getTimeDependentEntries(entity, params, id, user) |
640 |
642 |
641 try: |
643 try: |
642 # check if the current user is a host for this program |
644 # check if the current user is a host for this program |
643 rights.doCachedCheck('checkIsHostForProgram', |
645 rights.doCachedCheck('checkIsHostForProgram', |
668 items += [(redirects.getCreateDocumentRedirect(entity, 'program'), |
670 items += [(redirects.getCreateDocumentRedirect(entity, 'program'), |
669 "Create a New Document", 'any_access')] |
671 "Create a New Document", 'any_access')] |
670 # add link to list all Program Document |
672 # add link to list all Program Document |
671 items += [(redirects.getListDocumentsRedirect(entity, 'program'), |
673 items += [(redirects.getListDocumentsRedirect(entity, 'program'), |
672 "List Documents", 'any_access')] |
674 "List Documents", 'any_access')] |
|
675 # add link to create a new Program Survey |
|
676 items += [(redirects.getCreateSurveyRedirect(entity, 'program'), |
|
677 "Create a New Survey", 'any_access')] |
|
678 # add link to list all Program Surveys |
|
679 items += [(redirects.getListSurveysRedirect(entity, 'program'), |
|
680 "List Surveys", 'any_access')] |
673 |
681 |
674 except out_of_band.Error: |
682 except out_of_band.Error: |
675 pass |
683 pass |
676 |
684 |
677 items = sidebar.getSidebarMenu(id, user, items, params=params) |
685 items = sidebar.getSidebarMenu(id, user, items, params=params) |