def display_my_sessions_view(): placeholder_images = DataGetter.get_event_default_images() custom_placeholder = DataGetter.get_custom_placeholders() upcoming_events_sessions = DataGetter.get_sessions_of_user( upcoming_events=True) im_config = DataGetter.get_image_configs() im_size = '' for config in im_config: if config.page == 'mysession': im_size = config.size past_events_sessions = DataGetter.get_sessions_of_user( upcoming_events=False) page_content = { "tab_upcoming_events": "Upcoming Sessions", "tab_past_events": "Past Sessions", "title": "My Session Proposals" } if not AuthManager.is_verified_user(): flash( Markup( "Your account is unverified. " "Please verify by clicking on the confirmation link that has been emailed to you." '<br>Did not get the email? Please <a href="/resend_email/" class="alert-link"> ' 'click here to resend the confirmation.</a>')) return render_template('gentelella/users/mysessions/mysessions_list.html', upcoming_events_sessions=upcoming_events_sessions, past_events_sessions=past_events_sessions, page_content=page_content, placeholder_images=placeholder_images, custom_placeholder=custom_placeholder, im_size=im_size)
def display_event_detail_home(identifier): event = get_published_event_or_abort(identifier) placeholder_images = DataGetter.get_event_default_images() if event.sub_topic: custom_placeholder = DataGetter.get_custom_placeholder_by_name( event.sub_topic) elif event.topic: custom_placeholder = DataGetter.get_custom_placeholder_by_name( event.topic) else: custom_placeholder = DataGetter.get_custom_placeholder_by_name('Other') call_for_speakers = DataGetter.get_call_for_papers(event.id).first() accepted_sessions = DataGetter.get_sessions(event.id).all() if event.copyright: licence_details = DataGetter.get_licence_details( event.copyright.licence) else: licence_details = None module = DataGetter.get_module() tickets = DataGetter.get_sales_open_tickets(event.id, True) return render_template('gentelella/guest/event/details.html', event=event, placeholder_images=placeholder_images, custom_placeholder=custom_placeholder, accepted_sessions=accepted_sessions, accepted_sessions_count=len(accepted_sessions), call_for_speakers=call_for_speakers, licence_details=licence_details, module=module, tickets=tickets if tickets else [])
def display_my_sessions_view(): placeholder_images = DataGetter.get_event_default_images() custom_placeholder = DataGetter.get_custom_placeholders() upcoming_events_sessions = DataGetter.get_sessions_of_user(upcoming_events=True) im_config = DataGetter.get_image_configs() im_size = '' for config in im_config: if config.page == 'mysession': im_size = config.size past_events_sessions = DataGetter.get_sessions_of_user(upcoming_events=False) page_content = {"tab_upcoming_events": "Upcoming Sessions", "tab_past_events": "Past Sessions", "title": "My Session Proposals"} if not AuthManager.is_verified_user(): flash(Markup("Your account is unverified. " "Please verify by clicking on the confirmation link that has been emailed to you." '<br>Did not get the email? Please <a href="/resend_email/" class="alert-link"> ' 'click here to resend the confirmation.</a>')) return render_template('gentelella/users/mysessions/mysessions_list.html', upcoming_events_sessions=upcoming_events_sessions, past_events_sessions=past_events_sessions, page_content=page_content, placeholder_images=placeholder_images, custom_placeholder=custom_placeholder, im_size=im_size)
def user_sessions(user_id): placeholder_images = DataGetter.get_event_default_images() custom_placeholder = DataGetter.get_custom_placeholders() upcoming_events_sessions = DataGetter.get_sessions_of_user( upcoming_events=True, user_id=user_id) speakers = DataGetter.get_speakers(1) im_config = DataGetter.get_image_configs() im_size = '' for config in im_config: if config.page == 'mysession': im_size = config.size past_events_sessions = DataGetter.get_sessions_of_user( upcoming_events=False, user_id=user_id) admin_access = 1 page_content = { "tab_upcoming_events": "Upcoming Sessions", "tab_past_events": "Past Sessions", "title": "My Session Proposals" } return render_template('gentelella/admin/mysessions/mysessions_list.html', upcoming_events_sessions=upcoming_events_sessions, past_events_sessions=past_events_sessions, page_content=page_content, placeholder_images=placeholder_images, custom_placeholder=custom_placeholder, im_size=im_size, speakers=speakers, admin_access=admin_access)
def display_event_cfs(identifier, via_hash=False): event = get_published_event_or_abort(identifier) placeholder_images = DataGetter.get_event_default_images() if event.sub_topic: custom_placeholder = DataGetter.get_custom_placeholder_by_name(event.sub_topic) elif event.topic: custom_placeholder = DataGetter.get_custom_placeholder_by_name(event.topic) else: custom_placeholder = DataGetter.get_custom_placeholder_by_name('Other') if not event.has_session_speakers: abort(404) call_for_speakers = DataGetter.get_call_for_papers(event.id).first() if not call_for_speakers or (not via_hash and call_for_speakers.privacy == 'private'): abort(404) form_elems = DataGetter.get_custom_form_elements(event.id) speaker_form = json.loads(form_elems.speaker_form) session_form = json.loads(form_elems.session_form) now = datetime.now() state = "now" if call_for_speakers.end_date < now: state = "past" elif call_for_speakers.start_date > now: state = "future" speakers = DataGetter.get_speakers(event.id).all() accepted_sessions_count = get_count(DataGetter.get_sessions(event.id)) return render_template('gentelella/guest/event/cfs.html', event=event, speaker_form=speaker_form, accepted_sessions_count=accepted_sessions_count, session_form=session_form, call_for_speakers=call_for_speakers, placeholder_images=placeholder_images, state=state, speakers=speakers, via_hash=via_hash, custom_placeholder=custom_placeholder)
def index_view(): placeholder_images = DataGetter.get_event_default_images() pages = DataGetter.get_all_pages() custom_placeholder = DataGetter.get_custom_placeholders() subtopics = DataGetter.get_event_subtopics() settings = get_settings() languages_copy = copy.deepcopy(LANGUAGES) try: languages_copy.pop("en") except: pass if request.method == 'POST': dic = dict(request.form.copy()) for key, value in dic.items(): settings[key] = value[0] set_settings(**settings) flash("Changes have been saved.") return render_template('gentelella/admin/super_admin/content/content.html', pages=pages, settings=settings, placeholder_images=placeholder_images, subtopics=subtopics, custom_placeholder=custom_placeholder, languages=languages_copy, navigation_bar=list_navbar())
def display_my_tickets(): page_content = { "tab_upcoming_events": "Upcoming Events", "tab_past_events": "Past Events", "title": "My Tickets" } upcoming_events_orders = TicketingManager.get_orders_of_user( upcoming_events=True) past_events_orders = TicketingManager.get_orders_of_user( upcoming_events=False) placeholder_images = DataGetter.get_event_default_images() custom_placeholder = DataGetter.get_custom_placeholders() im_config = DataGetter.get_image_configs() im_size = '' for config in im_config: if config.page == 'mysession': im_size = config.size return render_template('gentelella/admin/mytickets/mytickets_list.html', page_content=page_content, upcoming_events_orders=upcoming_events_orders, past_events_orders=past_events_orders, placeholder_images=placeholder_images, custom_placeholder=custom_placeholder, im_size=im_size)
def process_event_cfs_speaker(identifier, via_hash=False): if request.method == 'GET': event = get_published_event_or_abort(identifier) placeholder_images = DataGetter.get_event_default_images() if event.sub_topic: custom_placeholder = DataGetter.get_custom_placeholder_by_name(event.sub_topic) elif event.topic: custom_placeholder = DataGetter.get_custom_placeholder_by_name(event.topic) else: custom_placeholder = DataGetter.get_custom_placeholder_by_name('Other') if not event.has_session_speakers: abort(404) call_for_speakers = DataGetter.get_call_for_papers(event.id).first() if not call_for_speakers or (not via_hash and call_for_speakers.privacy == 'private'): abort(404) form_elems = DataGetter.get_custom_form_elements(event.id) speaker_form = json.loads(form_elems.speaker_form) session_form = json.loads(form_elems.session_form) now = datetime.now(pytz.timezone(event.timezone if (event.timezone and event.timezone != '') else 'UTC')) start_date = pytz.timezone(event.timezone).localize(call_for_speakers.start_date) end_date = pytz.timezone(event.timezone).localize(call_for_speakers.end_date) state = "now" if end_date < now: state = "past" elif start_date > now: state = "future" speakers = DataGetter.get_speakers(event.id).all() accepted_sessions_count = get_count(DataGetter.get_sessions(event.id)) return render_template('gentelella/guest/event/cfs_new_speaker.html', event=event, speaker_form=speaker_form, accepted_sessions_count=accepted_sessions_count, session_form=session_form, call_for_speakers=call_for_speakers, placeholder_images=placeholder_images, state=state, speakers=speakers, via_hash=via_hash, custom_placeholder=custom_placeholder, from_path="cfs") if request.method == 'POST': email = request.form['email'] event = DataGetter.get_event_by_identifier(identifier) if not event.has_session_speakers: abort(404) DataManager.add_speaker_to_event(request, event.id) if login.current_user.is_authenticated: flash("You have been registered as Speaker", "success") return redirect(url_for('event_detail.display_event_cfs', identifier=identifier)) else: flash(Markup( "You have been registered as Speaker. Please login/register with <strong><u>" + email + "</u></strong> to manage it."), "success") return redirect(url_for('admin.login_view', next=url_for('my_sessions.display_my_sessions_view')))
def display_event_cfs(identifier, via_hash=False): event = get_published_event_or_abort(identifier) placeholder_images = DataGetter.get_event_default_images() if login.current_user.is_authenticated: email = login.current_user.email user_speaker = DataGetter.get_speaker_by_email(email) existing_sessions = [] for speaker in user_speaker: current_session = [] for session in speaker.sessions: if session.event_id == event.id and not session.in_trash: if session.title: current_session.append(session) if current_session: existing_sessions.append(current_session) if event.sub_topic: custom_placeholder = DataGetter.get_custom_placeholder_by_name(event.sub_topic) elif event.topic: custom_placeholder = DataGetter.get_custom_placeholder_by_name(event.topic) else: custom_placeholder = DataGetter.get_custom_placeholder_by_name('Other') if not event.has_session_speakers: abort(404) call_for_speakers = DataGetter.get_call_for_papers(event.id).first() if not call_for_speakers or (not via_hash and call_for_speakers.privacy == 'private'): abort(404) form_elems = DataGetter.get_custom_form_elements(event.id) speaker_form = json.loads(form_elems.speaker_form) session_form = json.loads(form_elems.session_form) now = datetime.now(pytz.timezone(event.timezone if (event.timezone and event.timezone != '') else 'UTC')) start_date = pytz.timezone(event.timezone).localize(call_for_speakers.start_date) end_date = pytz.timezone(event.timezone).localize(call_for_speakers.end_date) state = "now" if end_date < now: state = "past" elif start_date > now: state = "future" speakers = DataGetter.get_speakers(event.id).all() accepted_sessions_count = get_count(DataGetter.get_sessions(event.id)) if not login.current_user.is_authenticated: return render_template('gentelella/guest/event/cfs.html', event=event, speaker_form=speaker_form, accepted_sessions_count=accepted_sessions_count, session_form=session_form, call_for_speakers=call_for_speakers, placeholder_images=placeholder_images, state=state, speakers=speakers, via_hash=via_hash, custom_placeholder=custom_placeholder) else: return render_template('gentelella/guest/event/cfs.html', event=event, speaker_form=speaker_form, accepted_sessions_count=accepted_sessions_count, session_form=session_form, call_for_speakers=call_for_speakers, placeholder_images=placeholder_images, state=state, speakers=speakers, via_hash=via_hash, custom_placeholder=custom_placeholder, existing_sessions=existing_sessions)
def display_event_tickets(identifier): event = get_published_event_or_abort(identifier) placeholder_images = DataGetter.get_event_default_images() if event.sub_topic: custom_placeholder = DataGetter.get_custom_placeholder_by_name(event.sub_topic) elif event.topic: custom_placeholder = DataGetter.get_custom_placeholder_by_name(event.topic) else: custom_placeholder = DataGetter.get_custom_placeholder_by_name('Other') if event.copyright: licence_details = DataGetter.get_licence_details(event.copyright.licence) else: licence_details = None module = DataGetter.get_module() tickets = DataGetter.get_sales_open_tickets(event.id, True) accepted_sessions_count = get_count(DataGetter.get_sessions(event.id)) timenow_event_tz = datetime.now(pytz.timezone(event.timezone)) fees = DataGetter.get_fee_settings_by_currency(event.payment_currency) return render_template('gentelella/guest/event/details.html', event=event, placeholder_images=placeholder_images, custom_placeholder=custom_placeholder, accepted_sessions_count=accepted_sessions_count, licence_details=licence_details, module=module, timenow_event_tz=timenow_event_tz, current_timezone=get_current_timezone(), tickets=tickets if tickets else [], fees=fees)
def display_event_schedule(identifier): event = get_published_event_or_abort(identifier) placeholder_images = DataGetter.get_event_default_images() if event.sub_topic: custom_placeholder = DataGetter.get_custom_placeholder_by_name( event.sub_topic) elif event.topic: custom_placeholder = DataGetter.get_custom_placeholder_by_name( event.topic) else: custom_placeholder = DataGetter.get_custom_placeholder_by_name('Other') if not event.has_session_speakers: abort(404) tracks = DataGetter.get_tracks(event.id) accepted_sessions_count = get_count(DataGetter.get_sessions(event.id)) call_for_speakers = DataGetter.get_call_for_papers(event.id).first() if accepted_sessions_count == 0 or not event.schedule_published_on: abort(404) return render_template('gentelella/guest/event/schedule.html', event=event, placeholder_images=placeholder_images, accepted_sessions_count=accepted_sessions_count, call_for_speakers=call_for_speakers, tracks=tracks, custom_placeholder=custom_placeholder)
def process_event_cfs_speaker(identifier, via_hash=False): if request.method == 'GET': event = get_published_event_or_abort(identifier) placeholder_images = DataGetter.get_event_default_images() if event.sub_topic: custom_placeholder = DataGetter.get_custom_placeholder_by_name(event.sub_topic) elif event.topic: custom_placeholder = DataGetter.get_custom_placeholder_by_name(event.topic) else: custom_placeholder = DataGetter.get_custom_placeholder_by_name('Other') if not event.has_session_speakers: abort(404) call_for_speakers = DataGetter.get_call_for_papers(event.id).first() if not call_for_speakers or (not via_hash and call_for_speakers.privacy == 'private'): abort(404) form_elems = DataGetter.get_custom_form_elements(event.id) speaker_form = json.loads(form_elems.speaker_form) session_form = json.loads(form_elems.session_form) now = datetime.now(pytz.timezone(event.timezone if (event.timezone and event.timezone != '') else 'UTC')) start_date = pytz.timezone(event.timezone).localize(call_for_speakers.start_date) end_date = pytz.timezone(event.timezone).localize(call_for_speakers.end_date) state = "now" if end_date < now: state = "past" elif start_date > now: state = "future" speakers = DataGetter.get_speakers(event.id).all() accepted_sessions_count = get_count(DataGetter.get_sessions(event.id)) return render_template('gentelella/guest/event/cfs_new_speaker.html', event=event, speaker_form=speaker_form, accepted_sessions_count=accepted_sessions_count, session_form=session_form, call_for_speakers=call_for_speakers, placeholder_images=placeholder_images, state=state, speakers=speakers, via_hash=via_hash, custom_placeholder=custom_placeholder, from_path="cfs") if request.method == 'POST': email = request.form['email'] event = DataGetter.get_event_by_identifier(identifier) if not event.has_session_speakers: abort(404) DataManager.add_speaker_to_event(request, event.id) if login.current_user.is_authenticated: flash("You have been registered as Speaker", "success") return redirect(url_for('event_detail.display_event_cfs', identifier=identifier)) else: flash(Markup( "You have been registered as Speaker. Please login/register with <strong><u>" + email + "</u></strong> to manage it."), "success") return redirect(url_for('admin.login_view', next=url_for('my_sessions.display_my_sessions_view')))
def display_event_detail_home(identifier): event = get_published_event_or_abort(identifier) placeholder_images = DataGetter.get_event_default_images() if event.sub_topic: custom_placeholder = DataGetter.get_custom_placeholder_by_name( event.sub_topic) elif event.topic: custom_placeholder = DataGetter.get_custom_placeholder_by_name( event.topic) else: custom_placeholder = DataGetter.get_custom_placeholder_by_name('Other') call_for_speakers = DataGetter.get_call_for_papers(event.id).first() accepted_sessions = DataGetter.get_sessions(event.id).all() if event.copyright: licence_details = DataGetter.get_licence_details( event.copyright.licence) else: licence_details = None speakers = [] for session in accepted_sessions: for speaker in session.speakers: if speaker not in speakers: speakers.append(speaker) '''Timezone aware current datetime object according to event timezone''' timenow_event_tz = datetime.now( pytz.timezone(event.timezone if ( event.timezone and event.timezone != '') else 'UTC')) module = DataGetter.get_module() tickets = DataGetter.get_sales_open_tickets(event.id, True) '''Sponsor Levels''' sponsors = {-1: []} for sponsor in event.sponsor: if not sponsor.level: sponsors[-1].append(sponsor) elif int(sponsor.level) in sponsors.keys(): sponsors[int(sponsor.level)].append(sponsor) else: sponsors[int(sponsor.level)] = [sponsor] fees = DataGetter.get_fee_settings_by_currency(event.payment_currency) code = request.args.get("code") return render_template('gentelella/guest/event/details.html', event=event, sponsors=sponsors, placeholder_images=placeholder_images, custom_placeholder=custom_placeholder, accepted_sessions=accepted_sessions, accepted_sessions_count=len(accepted_sessions), call_for_speakers=call_for_speakers, licence_details=licence_details, speakers=speakers, module=module, timenow_event_tz=timenow_event_tz, current_timezone=get_current_timezone(), tickets=tickets if tickets else [], fees=fees, code=code)
def process_event_cfs(identifier, via_hash=False): if request.method == 'GET': event = get_published_event_or_abort(identifier) placeholder_images = DataGetter.get_event_default_images() if event.sub_topic: custom_placeholder = DataGetter.get_custom_placeholder_by_name(event.sub_topic) elif event.topic: custom_placeholder = DataGetter.get_custom_placeholder_by_name(event.topic) else: custom_placeholder = DataGetter.get_custom_placeholder_by_name('Other') if not event.has_session_speakers: abort(404) call_for_speakers = DataGetter.get_call_for_papers(event.id).first() if not call_for_speakers or (not via_hash and call_for_speakers.privacy == 'private'): abort(404) form_elems = DataGetter.get_custom_form_elements(event.id) speaker_form = json.loads(form_elems.speaker_form) session_form = json.loads(form_elems.session_form) now = datetime.now(pytz.timezone(event.timezone if (event.timezone and event.timezone != '') else 'UTC')) start_date = pytz.timezone(event.timezone).localize(call_for_speakers.start_date) end_date = pytz.timezone(event.timezone).localize(call_for_speakers.end_date) state = "now" if end_date < now: state = "past" elif start_date > now: state = "future" speakers = DataGetter.get_speakers(event.id).all() user_speaker = DataGetter.get_speaker_by_email_event(login.current_user.email, event.id) accepted_sessions_count = get_count(DataGetter.get_sessions(event.id)) return render_template('gentelella/guest/event/cfs_new_session.html', event=event, speaker_form=speaker_form, user_speaker=user_speaker, accepted_sessions_count=accepted_sessions_count, session_form=session_form, call_for_speakers=call_for_speakers, placeholder_images=placeholder_images, state=state, speakers=speakers, via_hash=via_hash, custom_placeholder=custom_placeholder, from_path="cfs") if request.method == 'POST': event = DataGetter.get_event_by_identifier(identifier) if not event.has_session_speakers: abort(404) if login.current_user.is_authenticated: DataManager.add_session_to_event(request, event.id, no_name=True) flash("Your session proposal has been submitted", "success") return redirect(url_for('my_sessions.display_my_sessions_view', event_id=event.id)) return redirect(url_for('admin.login_view', next=url_for('my_sessions.display_my_sessions_view')))
def process_event_cfs(identifier, via_hash=False): if request.method == 'GET': event = get_published_event_or_abort(identifier) placeholder_images = DataGetter.get_event_default_images() if event.sub_topic: custom_placeholder = DataGetter.get_custom_placeholder_by_name(event.sub_topic) elif event.topic: custom_placeholder = DataGetter.get_custom_placeholder_by_name(event.topic) else: custom_placeholder = DataGetter.get_custom_placeholder_by_name('Other') if not event.has_session_speakers: abort(404) call_for_speakers = DataGetter.get_call_for_papers(event.id).first() if not call_for_speakers or (not via_hash and call_for_speakers.privacy == 'private'): abort(404) form_elems = DataGetter.get_custom_form_elements(event.id) speaker_form = json.loads(form_elems.speaker_form) session_form = json.loads(form_elems.session_form) now = datetime.now(pytz.timezone(event.timezone if (event.timezone and event.timezone != '') else 'UTC')) start_date = pytz.timezone(event.timezone).localize(call_for_speakers.start_date) end_date = pytz.timezone(event.timezone).localize(call_for_speakers.end_date) state = "now" if end_date < now: state = "past" elif start_date > now: state = "future" speakers = DataGetter.get_speakers(event.id).all() user_speaker = DataGetter.get_speaker_by_email_event(login.current_user.email, event.id) accepted_sessions_count = get_count(DataGetter.get_sessions(event.id)) return render_template('gentelella/guest/event/cfs_new_session.html', event=event, speaker_form=speaker_form, user_speaker=user_speaker, accepted_sessions_count=accepted_sessions_count, session_form=session_form, call_for_speakers=call_for_speakers, placeholder_images=placeholder_images, state=state, speakers=speakers, via_hash=via_hash, custom_placeholder=custom_placeholder, from_path="cfs") if request.method == 'POST': event = DataGetter.get_event_by_identifier(identifier) if not event.has_session_speakers: abort(404) if login.current_user.is_authenticated: DataManager.add_session_to_event(request, event.id, no_name=True) flash("Your session proposal has been submitted", "success") return redirect(url_for('my_sessions.display_my_sessions_view', event_id=event.id)) return redirect(url_for('admin.login_view', next=url_for('my_sessions.display_my_sessions_view')))
def display_event_detail_home(identifier): event = get_published_event_or_abort(identifier) placeholder_images = DataGetter.get_event_default_images() if event.sub_topic: custom_placeholder = DataGetter.get_custom_placeholder_by_name(event.sub_topic) elif event.topic: custom_placeholder = DataGetter.get_custom_placeholder_by_name(event.topic) else: custom_placeholder = DataGetter.get_custom_placeholder_by_name('Other') call_for_speakers = DataGetter.get_call_for_papers(event.id).first() accepted_sessions = DataGetter.get_sessions(event.id).all() if event.copyright: licence_details = DataGetter.get_licence_details(event.copyright.licence) else: licence_details = None speakers = [] for session in accepted_sessions: for speaker in session.speakers: if speaker not in speakers: speakers.append(speaker) '''Timezone aware current datetime object according to event timezone''' timenow_event_tz = datetime.now(pytz.timezone(event.timezone if (event.timezone and event.timezone != '') else 'UTC')) module = DataGetter.get_module() tickets = DataGetter.get_sales_open_tickets(event.id, True) '''Sponsor Levels''' sponsors = {-1: []} for sponsor in event.sponsor: if not sponsor.level: sponsors[-1].append(sponsor) elif int(sponsor.level) in sponsors.keys(): sponsors[int(sponsor.level)].append(sponsor) else: sponsors[int(sponsor.level)] = [sponsor] fees = DataGetter.get_fee_settings_by_currency(event.payment_currency) code = request.args.get("code") return render_template('gentelella/guest/event/details.html', event=event, sponsors=sponsors, placeholder_images=placeholder_images, custom_placeholder=custom_placeholder, accepted_sessions=accepted_sessions, accepted_sessions_count=len(accepted_sessions), call_for_speakers=call_for_speakers, licence_details=licence_details, speakers=speakers, module=module, timenow_event_tz=timenow_event_tz, current_timezone=get_current_timezone(), tickets=tickets if tickets else [], fees=fees, code=code)
def display_event_cfs_via_hash(hash): call_for_speakers = CallForPaper.query.filter_by(hash=hash).first() if not call_for_speakers: abort(404) event = DataGetter.get_event(call_for_speakers.event_id) placeholder_images = DataGetter.get_event_default_images() if event.sub_topic: custom_placeholder = DataGetter.get_custom_placeholder_by_name( event.sub_topic) elif event.topic: custom_placeholder = DataGetter.get_custom_placeholder_by_name( event.topic) else: custom_placeholder = DataGetter.get_custom_placeholder_by_name('Other') if not event.has_session_speakers: abort(404) if not call_for_speakers: abort(404) if request.method == 'POST': return process_event_cfs(event.identifier) form_elems = DataGetter.get_custom_form_elements(event.id) speaker_form = json.loads(form_elems.speaker_form) session_form = json.loads(form_elems.session_form) now = datetime.now( pytz.timezone(event.timezone if ( event.timezone and event.timezone != '') else 'UTC')) start_date = pytz.timezone(event.timezone).localize( call_for_speakers.start_date) end_date = pytz.timezone(event.timezone).localize( call_for_speakers.end_date) state = "now" if end_date < now: state = "past" elif start_date > now: state = "future" speakers = DataGetter.get_speakers(event.id).all() accepted_sessions_count = get_count(DataGetter.get_sessions(event.id)) return render_template('gentelella/guest/event/cfs.html', event=event, speaker_form=speaker_form, accepted_sessions_count=accepted_sessions_count, session_form=session_form, call_for_speakers=call_for_speakers, placeholder_images=placeholder_images, state=state, speakers=speakers, via_hash=True, custom_placeholder=custom_placeholder)
def display_event_coc(identifier): event = get_published_event_or_abort(identifier) placeholder_images = DataGetter.get_event_default_images() custom_placeholder = DataGetter.get_custom_placeholders() call_for_speakers = DataGetter.get_call_for_papers(event.id).first() if not (event.code_of_conduct and event.code_of_conduct != '' and event.code_of_conduct != ' '): abort(404) accepted_sessions_count = get_count(DataGetter.get_sessions(event.id)) return render_template('gentelella/guest/event/code_of_conduct.html', event=event, placeholder_images=placeholder_images, accepted_sessions_count=accepted_sessions_count, custom_placeholder=custom_placeholder, call_for_speakers=call_for_speakers)
def index(): call_for_speakers_events = DataGetter.get_call_for_speakers_events() upcoming_events = DataGetter.get_all_published_events().limit(12).all() placeholder_images = DataGetter.get_event_default_images() custom_placeholder = DataGetter.get_custom_placeholders() im_config = DataGetter.get_image_configs() im_size = '' for config in im_config: if config.page == 'front': im_size = config.size return render_template('gentelella/guest/home.html', call_for_speakers_events=call_for_speakers_events, upcoming_events=upcoming_events, placeholder_images=placeholder_images, custom_placeholder=custom_placeholder, im_size=im_size)
def index(): call_for_speakers_events = DataGetter.get_call_for_speakers_events() upcoming_events = DataGetter.get_all_published_events().limit(12).all() placeholder_images = DataGetter.get_event_default_images() custom_placeholder = DataGetter.get_custom_placeholders() im_config = DataGetter.get_image_configs() im_size = '' for config in im_config: if config.page == 'front': im_size = config.size return render_template('gentelella/index.html', call_for_speakers_events=call_for_speakers_events, upcoming_events=upcoming_events, placeholder_images=placeholder_images, custom_placeholder=custom_placeholder, im_size=im_size)
def display_event_sessions(identifier): event = get_published_event_or_abort(identifier) placeholder_images = DataGetter.get_event_default_images() custom_placeholder = DataGetter.get_custom_placeholders() if not event.has_session_speakers: abort(404) call_for_speakers = DataGetter.get_call_for_papers(event.id).first() accepted_session_count = get_count(DataGetter.get_sessions(event.id)) tracks = DataGetter.get_tracks(event.id) return render_template('gentelella/guest/event/sessions.html', event=event, placeholder_images=placeholder_images, tracks=tracks, accepted_sessions_count=accepted_session_count, call_for_speakers=call_for_speakers, custom_placeholder=custom_placeholder)
def display_event_schedule(identifier): event = get_published_event_or_abort(identifier) placeholder_images = DataGetter.get_event_default_images() custom_placeholder = DataGetter.get_custom_placeholders() if not event.has_session_speakers: abort(404) tracks = DataGetter.get_tracks(event.id) accepted_sessions_count = get_count(DataGetter.get_sessions(event.id)) if accepted_sessions_count == 0 or not event.schedule_published_on: abort(404) return render_template('gentelella/guest/event/schedule.html', event=event, placeholder_images=placeholder_images, accepted_sessions_count=accepted_sessions_count, tracks=tracks, custom_placeholder=custom_placeholder)
def display_event_cfs_via_hash(hash): call_for_speakers = CallForPaper.query.filter_by(hash=hash).first() if not call_for_speakers: abort(404) event = DataGetter.get_event(call_for_speakers.event_id) placeholder_images = DataGetter.get_event_default_images() if event.sub_topic: custom_placeholder = DataGetter.get_custom_placeholder_by_name(event.sub_topic) elif event.topic: custom_placeholder = DataGetter.get_custom_placeholder_by_name(event.topic) else: custom_placeholder = DataGetter.get_custom_placeholder_by_name('Other') if not event.has_session_speakers: abort(404) if not call_for_speakers: abort(404) if request.method == 'POST': return process_event_cfs(event.identifier) form_elems = DataGetter.get_custom_form_elements(event.id) speaker_form = json.loads(form_elems.speaker_form) session_form = json.loads(form_elems.session_form) now = datetime.now(pytz.timezone(event.timezone if (event.timezone and event.timezone != '') else 'UTC')) start_date = pytz.timezone(event.timezone).localize(call_for_speakers.start_date) end_date = pytz.timezone(event.timezone).localize(call_for_speakers.end_date) state = "now" if end_date < now: state = "past" elif start_date > now: state = "future" speakers = DataGetter.get_speakers(event.id).all() accepted_sessions_count = get_count(DataGetter.get_sessions(event.id)) return render_template('gentelella/guest/event/cfs.html', event=event, speaker_form=speaker_form, accepted_sessions_count=accepted_sessions_count, session_form=session_form, call_for_speakers=call_for_speakers, placeholder_images=placeholder_images, state=state, speakers=speakers, via_hash=True, custom_placeholder=custom_placeholder)
def display_event_coc(identifier): event = get_published_event_or_abort(identifier) placeholder_images = DataGetter.get_event_default_images() if event.sub_topic: custom_placeholder = DataGetter.get_custom_placeholder_by_name(event.sub_topic) elif event.topic: custom_placeholder = DataGetter.get_custom_placeholder_by_name(event.topic) else: custom_placeholder = DataGetter.get_custom_placeholder_by_name('Other') call_for_speakers = DataGetter.get_call_for_papers(event.id).first() if not (event.code_of_conduct and event.code_of_conduct != '' and event.code_of_conduct != ' '): abort(404) accepted_sessions_count = get_count(DataGetter.get_sessions(event.id)) return render_template('gentelella/guest/event/code_of_conduct.html', event=event, placeholder_images=placeholder_images, accepted_sessions_count=accepted_sessions_count, custom_placeholder=custom_placeholder, call_for_speakers=call_for_speakers)
def display_event_sessions(identifier): event = get_published_event_or_abort(identifier) placeholder_images = DataGetter.get_event_default_images() if event.sub_topic: custom_placeholder = DataGetter.get_custom_placeholder_by_name(event.sub_topic) elif event.topic: custom_placeholder = DataGetter.get_custom_placeholder_by_name(event.topic) else: custom_placeholder = DataGetter.get_custom_placeholder_by_name('Other') if not event.has_session_speakers: abort(404) call_for_speakers = DataGetter.get_call_for_papers(event.id).first() accepted_session_count = get_count(DataGetter.get_sessions(event.id)) tracks = DataGetter.get_tracks(event.id) return render_template('gentelella/guest/event/sessions.html', event=event, placeholder_images=placeholder_images, tracks=tracks, accepted_sessions_count=accepted_session_count, call_for_speakers=call_for_speakers, custom_placeholder=custom_placeholder)
def display_event_tickets(identifier): event = get_published_event_or_abort(identifier) placeholder_images = DataGetter.get_event_default_images() custom_placeholder = DataGetter.get_custom_placeholders() if event.copyright: licence_details = DataGetter.get_licence_details( event.copyright.licence) else: licence_details = None module = DataGetter.get_module() tickets = DataGetter.get_sales_open_tickets(event.id, True) accepted_sessions_count = get_count(DataGetter.get_sessions(event.id)) return render_template('gentelella/guest/event/details.html', event=event, placeholder_images=placeholder_images, custom_placeholder=custom_placeholder, accepted_sessions_count=accepted_sessions_count, licence_details=licence_details, module=module, tickets=tickets if tickets else [])
def user_sessions(user_id): placeholder_images = DataGetter.get_event_default_images() custom_placeholder = DataGetter.get_custom_placeholders() upcoming_events_sessions = DataGetter.get_sessions_of_user(upcoming_events=True, user_id=user_id) speakers = DataGetter.get_speakers(1) im_config = DataGetter.get_image_configs() im_size = '' for config in im_config: if config.page == 'mysession': im_size = config.size past_events_sessions = DataGetter.get_sessions_of_user(upcoming_events=False, user_id=user_id) admin_access = 1 page_content = {"tab_upcoming_events": "Upcoming Sessions", "tab_past_events": "Past Sessions", "title": "My Session Proposals"} return render_template('gentelella/users/mysessions/mysessions_list.html', upcoming_events_sessions=upcoming_events_sessions, past_events_sessions=past_events_sessions, page_content=page_content, placeholder_images=placeholder_images, custom_placeholder=custom_placeholder, im_size=im_size, speakers = speakers, admin_access=admin_access)
def index_view(): placeholder_images = DataGetter.get_event_default_images() pages = DataGetter.get_all_pages() custom_placeholder = DataGetter.get_custom_placeholders() subtopics = DataGetter.get_event_subtopics() settings = get_settings() languages_copy = copy.deepcopy(LANGUAGES) try: languages_copy.pop("en") except: pass if request.method == 'POST': dic = dict(request.form.copy()) for key, value in dic.items(): settings[key] = value[0] set_settings(**settings) return render_template( 'gentelella/admin/super_admin/content/content.html', pages=pages, settings=settings, placeholder_images=placeholder_images, subtopics=subtopics, custom_placeholder=custom_placeholder, languages=languages_copy, navigation_bar=list_navbar() )
def display_event_detail_home(identifier): event = get_published_event_or_abort(identifier) placeholder_images = DataGetter.get_event_default_images() if event.sub_topic: custom_placeholder = DataGetter.get_custom_placeholder_by_name(event.sub_topic) elif event.topic: custom_placeholder = DataGetter.get_custom_placeholder_by_name(event.topic) else: custom_placeholder = DataGetter.get_custom_placeholder_by_name('Other') call_for_speakers = DataGetter.get_call_for_papers(event.id).first() accepted_sessions = DataGetter.get_sessions(event.id).all() if event.copyright: licence_details = DataGetter.get_licence_details(event.copyright.licence) else: licence_details = None speakers = [] for session in accepted_sessions: for speaker in session.speakers: if speaker not in speakers: speakers.append(speaker) '''Timezone aware current datetime object according to event timezone''' timenow_event_tz = datetime.now(pytz.timezone(event.timezone)) module = DataGetter.get_module() tickets = DataGetter.get_sales_open_tickets(event.id, True) return render_template('gentelella/guest/event/details.html', event=event, placeholder_images=placeholder_images, custom_placeholder=custom_placeholder, accepted_sessions=accepted_sessions, accepted_sessions_count=len(accepted_sessions), call_for_speakers=call_for_speakers, licence_details=licence_details, speakers=speakers, module=module, timenow_event_tz=timenow_event_tz, current_timezone=get_current_timezone(), tickets=tickets if tickets else [])
def user_tickets(user_id): page_content = {"tab_upcoming_events": "Upcoming Events", "tab_past_events": "Past Events", "title": "My Tickets"} upcoming_events_orders = TicketingManager.get_orders_of_user(user_id=user_id, upcoming_events=True) past_events_orders = TicketingManager.get_orders_of_user(user_id=user_id, upcoming_events=False) placeholder_images = DataGetter.get_event_default_images() custom_placeholder = DataGetter.get_custom_placeholders() im_config = DataGetter.get_image_configs() im_size = '' for config in im_config: if config.page == 'mysession': im_size = config.size return render_template('gentelella/users/mytickets/mytickets_list.html', page_content=page_content, upcoming_events_orders=upcoming_events_orders, past_events_orders=past_events_orders, placeholder_images=placeholder_images, custom_placeholder=custom_placeholder, im_size=im_size)