def _extend_event_menu(sender, **kwargs): from indico.modules.events.registration.models.forms import RegistrationForm from indico.modules.events.registration.models.registrations import Registration def _visible_registration(event): if not event.has_feature('registration'): return False if not event.can_access(session.user) and not ( event.has_regform_in_acl and event.public_regform_access): return False if any(form.is_scheduled for form in event.registration_forms): return True if not session.user: return False return (Registration.query.with_parent(event).join( Registration.registration_form).filter( Registration.user == session.user, ~RegistrationForm.is_deleted).has_rows()) def _visible_participant_list(event): return event.has_feature('registration') yield MenuEntryData(_('Registration'), 'registration', 'event_registration.display_regform_list', position=10, visible=_visible_registration, hide_if_restricted=False) yield MenuEntryData(_('Participant List'), 'participants', 'event_registration.participant_list', position=11, visible=_visible_participant_list, static_site=True)
def _extend_event_menu(sender, **kwargs): from indico.modules.events.abstracts.util import has_user_tracks from indico.modules.events.layout.util import MenuEntryData from indico.modules.events.contributions import contribution_settings def _boa_visible(event): return (config.LATEX_ENABLED and event.has_feature('abstracts') and contribution_settings.get(event, 'published')) def _reviewing_area_visible(event): if not session.user or not event.has_feature('abstracts'): return False return has_user_tracks(event, session.user) yield MenuEntryData(title=_("Book of Abstracts"), name='abstracts_book', endpoint='abstracts.export_boa', position=9, visible=_boa_visible, static_site=True) yield MenuEntryData(title=_("Call for Abstracts"), name='call_for_abstracts', endpoint='abstracts.call_for_abstracts', position=2, visible=lambda event: event.has_feature('abstracts')) yield MenuEntryData(title=_("Reviewing Area"), name='abstract_reviewing_area', endpoint='abstracts.display_reviewable_tracks', position=0, parent='call_for_abstracts', visible=_reviewing_area_visible)
def _extend_event_menu(sender, **kwargs): from indico.modules.events.layout.util import MenuEntryData def _judging_area_visible(event): if not session.user or not event.has_feature('papers'): return False return event.cfp.can_access_judging_area(session.user) def _reviewing_area_visible(event): if not session.user or not event.has_feature('papers'): return False return event.cfp.can_access_reviewing_area(session.user) def _call_for_papers_visible(event): from indico.modules.events.papers.util import has_contributions_with_user_paper_submission_rights if not session.user or not event.has_feature('papers'): return False return (has_contributions_with_user_paper_submission_rights(event, session.user) or event.cfp.is_staff(session.user)) yield MenuEntryData(title=_("Call for Papers"), name='call_for_papers', endpoint='papers.call_for_papers', position=8, visible=_call_for_papers_visible) yield MenuEntryData(title=_("Reviewing Area"), name='paper_reviewing_area', parent='call_for_papers', endpoint='papers.reviewing_area', position=0, visible=_reviewing_area_visible) yield MenuEntryData(title=_("Judging Area"), name='paper_judging_area', parent='call_for_papers', endpoint='papers.papers_list', position=1, visible=_judging_area_visible)
def get_default_menu_entries(): return [ MenuEntryData(title=_("Overview"), name='overview', endpoint='event.conferenceDisplay-overview', position=0, static_site=True), MenuEntryData(title=_("My Conference"), name='my_conference', endpoint='event.myconference', position=7, visible=_visibility_my_conference), MenuEntryData(title=_("Paper Reviewing"), name='paper_reviewing', endpoint='event.paperReviewingDisplay', position=8, visible=_visibility_paper_review), MenuEntryData(title=_("Manage Paper Reviewing"), name='paper_setup', endpoint='event_mgmt.confModifReviewing-paperSetup', visible=_visibility_paper_review_managment, position=0, parent='paper_reviewing'), MenuEntryData(title=_("Assign Papers"), name='paper_assign', endpoint='event_mgmt.assignContributions', visible=_visibility_paper_assign, position=1, parent='paper_reviewing'), MenuEntryData(title=_("Referee Area"), name='contributions_to_judge', endpoint='event_mgmt.confListContribToJudge', visible=_visibility_judge, position=2, parent='paper_reviewing'), MenuEntryData(title=_("Content Reviewer Area"), name='contributions_as_reviewer', endpoint='event_mgmt.confListContribToJudge-asReviewer', visible=_visibility_contributions_as_reviewer, position=3, parent='paper_reviewing'), MenuEntryData(title=_("Layout Reviewer Area"), name='contributions_as_editor', endpoint='event_mgmt.confListContribToJudge-asEditor', visible=_visibility_contributions_as_editor, position=4, parent='paper_reviewing'), MenuEntryData(title=_("Upload Paper"), name='paper_upload', endpoint='event.paperReviewingDisplay-uploadPaper', visible=_visibility_paper_review_transfer, position=5, parent='paper_reviewing'), MenuEntryData(title=_("Download Template"), name='download_template', endpoint='event.paperReviewingDisplay-downloadTemplate', visible=_visibility_paper_review_transfer, position=6, parent='paper_reviewing') ]
def _extend_event_menu(sender, **kwargs): from indico.modules.events.registration.models.forms import RegistrationForm from indico.modules.events.registration.models.registrations import Registration def _visible_registration(event): if not event.has_feature('registration'): return False if RegistrationForm.find(RegistrationForm.is_scheduled, RegistrationForm.event_id == int( event.id)).count(): return True if not session.user: return False return bool( Registration.find(Registration.user == session.user, Registration.event_id == int(event.id), ~Registration.is_deleted, ~RegistrationForm.is_deleted, _join=Registration.registration_form).count()) def _visible_participant_list(event): return event.has_feature('registration') yield MenuEntryData(_('Registration'), 'registration', 'event_registration.display_regform_list', position=10, visible=_visible_registration) yield MenuEntryData(_('Participant List'), 'participants', 'event_registration.participant_list', position=11, visible=_visible_participant_list, static_site=True)
def _extend_event_menu(sender, **kwargs): from indico.modules.events.layout.util import MenuEntryData, get_menu_entry_by_name def _my_conference_visible(event): return session.user and (get_menu_entry_by_name('my_contributions', event).is_visible or get_menu_entry_by_name('my_sessions', event).is_visible) yield MenuEntryData(_("Overview"), 'overview', 'events.display_overview', position=0, static_site=True) yield MenuEntryData(_("My Conference"), 'my_conference', position=7, visible=_my_conference_visible)
def get_default_menu_entries(): return [ MenuEntryData(title=_("Overview"), name='overview', endpoint='events.display_overview', position=0, static_site=True), MenuEntryData(title=_("My Conference"), name='my_conference', endpoint='event.myconference', position=7, visible=_visibility_my_conference) ]
def _extend_event_menu(sender, **kwargs): from indico.modules.events.editing.models.editable import EditableType from indico.modules.events.layout.util import MenuEntryData def _editing_visible(event, specific_type=None): if not session.user or not event.has_feature('editing'): return False enabled_types = { EditableType[et] for et in event.editable_types if (specific_type is None or specific_type.name == et) } if not enabled_types: return False elif event.can_manage(session.user, 'editing_manager'): return True return any( event.can_manage(session.user, et.editor_permission) for et in enabled_types) def _make_visible(editable_type): return lambda event: _editing_visible(event, editable_type) yield MenuEntryData(title=_('Editing'), name='editing', position=8, visible=_editing_visible) yield MenuEntryData(title=_('Papers'), name='editing_papers', parent='editing', endpoint='event_editing.editable_type_list', position=0, visible=_make_visible(EditableType.paper), url_kwargs={'type': 'paper'}) yield MenuEntryData(title=_('Slides'), name='editing_slides', parent='editing', endpoint='event_editing.editable_type_list', position=1, visible=_make_visible(EditableType.slides), url_kwargs={'type': 'slides'}) yield MenuEntryData(title=_('Posters'), name='editing_posters', parent='editing', endpoint='event_editing.editable_type_list', position=2, visible=_make_visible(EditableType.poster), url_kwargs={'type': 'poster'})
def _extend_event_menu(sender, **kwargs): from indico.modules.events.layout.util import MenuEntryData yield MenuEntryData(title=_("Timetable"), name='timetable', endpoint='timetable.timetable', position=3, static_site=True)
def extend_event_menu(self, sender, **kwargs): return MenuEntryData(_('Chat Rooms'), 'chatrooms', 'chat.event_page', position=-1, visible=lambda event: ChatroomEventAssociation. find_for_event(event).has_rows())
def _extend_event_menu(sender, **kwargs): from indico.modules.events.layout.util import MenuEntryData def _visible_my_sessions(event): return session.user and has_sessions_for_user(event, session.user) yield MenuEntryData(title=_("My Sessions"), name='my_sessions', endpoint='sessions.my_sessions', position=1, parent='my_conference', visible=_visible_my_sessions)
def _extend_event_menu(sender, **kwargs): from indico.modules.events.layout.util import MenuEntryData from indico.modules.events.tracks.settings import track_settings def _program_visible(event): return bool(track_settings.get(event, 'program').strip() or Track.query.with_parent(event).has_rows()) return MenuEntryData(title=_("Scientific Programme"), name='program', endpoint='tracks.program', position=1, visible=_program_visible, static_site=True)
def _extend_event_menu(sender, **kwargs): from indico.modules.events.layout.util import MenuEntryData from indico.modules.events.contributions import contribution_settings def _visible_timetable(event): return contribution_settings.get(event, 'published') yield MenuEntryData(title=_("Timetable"), name='timetable', endpoint='timetable.timetable', position=3, visible=_visible_timetable, static_site=True)
def _extend_event_menu(sender, **kwargs): from indico.modules.events.contributions.util import has_contributions_with_user_as_submitter from indico.modules.events.layout.util import MenuEntryData def _visible_my_contributions(event): return session.user and has_contributions_with_user_as_submitter(event, session.user) def _visible_list_of_contributions(event): return Contribution.query.filter(Contribution.event_new == event).has_rows() yield MenuEntryData(title=_("My Contributions"), name='my_contributions', visible=_visible_my_contributions, endpoint='contributions.my_contributions', position=2, parent='my_conference') yield MenuEntryData(title=_("Contribution List"), name='contributions', endpoint='contributions.contribution_list', position=4, static_site=True, visible=_visible_list_of_contributions) yield MenuEntryData(title=_("Author List"), name='author_index', endpoint='contributions.author_list', position=5, is_enabled=False, static_site=True) yield MenuEntryData(title=_("Speaker List"), name='speaker_index', endpoint='contributions.speaker_list', position=6, is_enabled=False, static_site=True)
def _extend_event_menu(sender, **kwargs): def _visible(event): return event.has_feature('surveys') and query_active_surveys( event).has_rows() return MenuEntryData(_('Surveys'), 'surveys', 'surveys.display_survey_list', position=12, visible=_visible)
def _extend_event_menu(sender, **kwargs): def _visible(event): return bool(get_vc_plugins( )) and VCRoomEventAssociation.find_for_event(event).has_rows() return MenuEntryData(_('Videoconference Rooms'), 'videoconference_rooms', 'vc.event_videoconference', position=14, visible=_visible)
def _extend_event_menu(sender, **kwargs): from indico.modules.events.surveys.models.surveys import Survey def _visible(event): return event.has_feature('surveys') and query_active_surveys( event).has_rows() return MenuEntryData(_('Surveys'), 'surveys', 'surveys.display_survey_list', position=12, visible=_visible)
def _extend_event_menu(sender, **kwargs): from indico.modules.events.surveys.models.surveys import Survey def _visible(event): return (event.has_feature('surveys') and Survey.query.with_parent(event).filter( Survey.is_visible).has_rows()) return MenuEntryData(_('Surveys'), 'surveys', 'surveys.display_survey_list', position=12, visible=_visible)
def _extend_event_menu(sender, **kwargs): from indico.modules.events.contributions.util import has_contributions_with_user_as_submitter from indico.modules.events.layout.util import MenuEntryData def _visible_my_contributions(event): if not session.user: return False return has_contributions_with_user_as_submitter(event, session.user) def _visible_list_of_contributions(event): published = contribution_settings.get(event, 'published') can_manage = event.can_manage(session.user) return (published or can_manage) and Contribution.query.filter(Contribution.event == event).has_rows() yield MenuEntryData(title=_('My Contributions'), name='my_contributions', visible=_visible_my_contributions, endpoint='contributions.my_contributions', position=2, parent='my_conference') yield MenuEntryData(title=_('Contribution List'), name='contributions', endpoint='contributions.contribution_list', position=4, static_site=True, visible=_visible_list_of_contributions) yield MenuEntryData(title=_('Author List'), name='author_index', endpoint='contributions.author_list', position=5, is_enabled=False, static_site=True) yield MenuEntryData(title=_('Speaker List'), name='speaker_index', endpoint='contributions.speaker_list', position=6, is_enabled=False, static_site=True)
def _extend_event_menu(sender, **kwargs): from indico.modules.events.surveys.models.surveys import Survey def _visible(event): return (event.has_feature('surveys') and bool( Survey.find(Survey.is_visible, Survey.event_id == int( event.id)).count())) return MenuEntryData(_('Surveys'), 'surveys', 'surveys.display_survey_list', position=12, visible=_visible)
def get_default_menu_entries(): return [ MenuEntryData(title=_("Overview"), name='overview', endpoint='event.conferenceDisplay-overview', position=0, static_site=True), MenuEntryData(title=_("Scientific Programme"), name='program', endpoint='event.conferenceProgram', position=1, static_site=True), MenuEntryData( title=_("Manage my Tracks"), name='program_my_tracks', visible=_visibility_my_tracks, endpoint='event.myconference-myTracks', parent='program', ), MenuEntryData( title=_("Call for Abstracts"), name='call_for_abstracts', endpoint='event.conferenceCFA', position=2, visible=_visibility_call_for_abstracts, ), MenuEntryData(title=_("View my Abstracts"), name='user_abstracts', endpoint='event.userAbstracts', position=0, parent='call_for_abstracts'), MenuEntryData(title=_("Submit Abstract"), name='abstract_submission', endpoint='event.abstractSubmission', position=1, parent='call_for_abstracts'), MenuEntryData(title=_("Timetable"), name='timetable', endpoint='event.conferenceTimeTable', position=3, static_site=True), MenuEntryData(title=_("Contribution List"), name='contributions', endpoint='event.contributionListDisplay', position=4, static_site=True), MenuEntryData(title=_("Author List"), name='author_index', endpoint='event.confAuthorIndex', position=5, is_enabled=False, static_site=True), MenuEntryData(title=_("Speaker List"), name='speaker_index', endpoint='event.confSpeakerIndex', position=6, is_enabled=False, static_site=True), MenuEntryData(title=_("My Conference"), name='my_conference', endpoint='event.myconference', position=7, visible=_visibility_my_conference), MenuEntryData(title=_("My Tracks"), endpoint='event.myconference-myTracks', name='my_tracks', visible=_visibility_my_tracks, position=0, parent='my_conference'), MenuEntryData(title=_("My Sessions"), name='my_sessions', endpoint='event.myconference-mySessions', position=1, parent='my_conference'), MenuEntryData(title=_("My Contributions"), name='my_contributions', visible=_visibility_my_contributions, endpoint='event.myconference-myContributions', position=2, parent='my_conference'), MenuEntryData(title=_("Paper Reviewing"), name='paper_reviewing', endpoint='event.paperReviewingDisplay', position=8, visible=_visibility_paper_review), MenuEntryData(title=_("Manage Paper Reviewing"), name='paper_setup', endpoint='event_mgmt.confModifReviewing-paperSetup', visible=_visibility_paper_review_managment, position=0, parent='paper_reviewing'), MenuEntryData(title=_("Assign Papers"), name='paper_assign', endpoint='event_mgmt.assignContributions', visible=_visibility_paper_assign, position=1, parent='paper_reviewing'), MenuEntryData(title=_("Referee Area"), name='contributions_to_judge', endpoint='event_mgmt.confListContribToJudge', visible=_visibility_judge, position=2, parent='paper_reviewing'), MenuEntryData(title=_("Content Reviewer Area"), name='contributions_as_reviewer', endpoint='event_mgmt.confListContribToJudge-asReviewer', visible=_visibility_contributions_as_reviewer, position=3, parent='paper_reviewing'), MenuEntryData(title=_("Layout Reviewer Area"), name='contributions_as_editor', endpoint='event_mgmt.confListContribToJudge-asEditor', visible=_visibility_contributions_as_editor, position=4, parent='paper_reviewing'), MenuEntryData(title=_("Upload Paper"), name='paper_upload', endpoint='event.paperReviewingDisplay-uploadPaper', visible=_visibility_paper_review_transfer, position=5, parent='paper_reviewing'), MenuEntryData(title=_("Download Template"), name='download_template', endpoint='event.paperReviewingDisplay-downloadTemplate', visible=_visibility_paper_review_transfer, position=6, parent='paper_reviewing'), MenuEntryData(title=_("Book of Abstracts"), name='abstracts_book', endpoint='event.conferenceDisplay-abstractBook', position=9, visible=_visibility_abstracts_book, static_site='files/generatedPdf/BookOfAbstracts.pdf') ]