Skip to content

Commit d75efd4

Browse files
shubham-padianiranjan94
authored andcommitted
Optimise approach for displaying placeholders (#2709)
1 parent df487e7 commit d75efd4

File tree

4 files changed

+65
-42
lines changed

4 files changed

+65
-42
lines changed

app/__init__.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -281,6 +281,12 @@ def app_logo():
281281
return dict(logo=logo)
282282

283283

284+
@app.context_processor
285+
def app_avatar():
286+
avatar = DataGetter.get_custom_placeholder_by_name('Avatar')
287+
return dict(avatar=avatar)
288+
289+
284290
@app.template_filter('pretty_name')
285291
def pretty_name_filter(string):
286292
string = str(string)

app/templates/gentelella/admin/menu.html

Lines changed: 3 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -46,18 +46,11 @@
4646
<img src="{{ current_user.user_detail.icon }}" onerror="imgError(this)"/>
4747
{% elif current_user.user_detail.avatar_uploaded %}
4848
<img src="{{ current_user.user_detail.avatar_uploaded }}" onerror="imgError(this)"/>
49+
{% elif avatar != None %}
50+
<img src='{{ avatar.url }}'/>
4951
{% else %}
50-
{% set vars = {'foo': False} %}
51-
{% for custom_image in custom_placeholder %}
52-
{% if custom_image.name == "Avatar" %}
53-
<img src='{{ custom_image.url }}'/>
54-
{% if vars.update({'foo': True}) %} {% endif %}
55-
{% endif %}
56-
{% endfor %}
57-
{% if not vars.foo %}
58-
<img src="{{ url_for('static', filename='placeholders/avatar.png') }}"
52+
<img src="{{ url_for('static', filename='placeholders/avatar.png') }}"
5953
onerror="imgError(this)"/>
60-
{% endif %}
6154
{% endif %}
6255
<span class="user-text">{{ current_user.user_detail.firstname | default(current_user.email, true) }}</span>
6356
<span class=" fa fa-angle-down"></span>

app/templates/gentelella/guest/event/base.html

Lines changed: 7 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -8,32 +8,16 @@
88
{# Set `event_image` to use inside template #}
99
{% if event.background_url %}
1010
{% set event_image = event.background_url %}
11-
{% elif event.sub_topic %}
12-
{% set event_image = {'status': False,'img': event_image} %}
13-
{% for custom_image in custom_placeholder %}
14-
{% if custom_image.name == event.sub_topic %}
15-
{% if event_image.update({'status': True,'img': custom_image.url}) %} {% endif %}
16-
{% endif %}
17-
{% endfor %}
18-
{% set event_image_status = event_image.status %}
19-
{% set event_image = event_image.img %}
20-
{% if not event_image_status %}
11+
{% elif custom_placeholder != None %}
12+
{% set event_image = custom_placeholder.url %}
13+
{% else %}
14+
{% if event.sub_topic %}
2115
{% set event_image = url_for("static", filename="placeholders/" + placeholder_images[event.sub_topic], _external=True) %}
22-
{% endif %}
23-
{% elif event.topic %}
24-
{% set event_image = {'status': False,'img': event_image} %}
25-
{% for custom_image in custom_placeholder %}
26-
{% if custom_image.name == event.topic %}
27-
{% if event_image.update({'status': True,'img': custom_image.url}) %} {% endif %}
28-
{% endif %}
29-
{% endfor %}
30-
{% set event_image_status = event_image.status %}
31-
{% set event_image = event_image.img %}
32-
{% if not event_image_status %}
16+
{% elif event.topic %}
3317
{% set event_image = url_for("static", filename="placeholders/" + placeholder_images[event.topic], _external=True) %}
18+
{% else %}
19+
{% set event_image = url_for("static", filename="placeholders/" + placeholder_images["Other"], _external=True) %}
3420
{% endif %}
35-
{% else %}
36-
{% set event_image = url_for("static", filename="placeholders/" + placeholder_images["Other"], _external=True) %}
3721
{% endif %}
3822

3923
{% block head_meta %}
@@ -173,7 +157,6 @@ <h4 style="font-weight: 300;"><i class="glyphicon glyphicon-map-marker"></i> {{
173157
<div class="col-md-8 col-sm-8 col-xs-12 col-md-push-1 col-sm-push-2 event-info-container-holder"
174158
style="min-height: 600px;">
175159
{% block content %}
176-
177160
{% endblock %}
178161
</div>
179162
<div class="col-md-2 col-md-push-1 hidden-xs hidden-sm">

app/views/public/event_detail.py

Lines changed: 49 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,13 @@ def display_default():
4545
def display_event_detail_home(identifier):
4646
event = get_published_event_or_abort(identifier)
4747
placeholder_images = DataGetter.get_event_default_images()
48-
custom_placeholder = DataGetter.get_custom_placeholders()
48+
if event.sub_topic:
49+
custom_placeholder = DataGetter.get_custom_placeholder_by_name(event.sub_topic)
50+
elif event.topic:
51+
custom_placeholder = DataGetter.get_custom_placeholder_by_name(event.topic)
52+
else:
53+
custom_placeholder = DataGetter.get_custom_placeholder_by_name('Other')
54+
4955
call_for_speakers = DataGetter.get_call_for_papers(event.id).first()
5056
accepted_sessions = DataGetter.get_sessions(event.id).all()
5157
if event.copyright:
@@ -71,7 +77,12 @@ def display_event_detail_home(identifier):
7177
def display_event_sessions(identifier):
7278
event = get_published_event_or_abort(identifier)
7379
placeholder_images = DataGetter.get_event_default_images()
74-
custom_placeholder = DataGetter.get_custom_placeholders()
80+
if event.sub_topic:
81+
custom_placeholder = DataGetter.get_custom_placeholder_by_name(event.sub_topic)
82+
elif event.topic:
83+
custom_placeholder = DataGetter.get_custom_placeholder_by_name(event.topic)
84+
else:
85+
custom_placeholder = DataGetter.get_custom_placeholder_by_name('Other')
7586
if not event.has_session_speakers:
7687
abort(404)
7788
call_for_speakers = DataGetter.get_call_for_papers(event.id).first()
@@ -87,7 +98,12 @@ def display_event_sessions(identifier):
8798
def display_event_schedule(identifier):
8899
event = get_published_event_or_abort(identifier)
89100
placeholder_images = DataGetter.get_event_default_images()
90-
custom_placeholder = DataGetter.get_custom_placeholders()
101+
if event.sub_topic:
102+
custom_placeholder = DataGetter.get_custom_placeholder_by_name(event.sub_topic)
103+
elif event.topic:
104+
custom_placeholder = DataGetter.get_custom_placeholder_by_name(event.topic)
105+
else:
106+
custom_placeholder = DataGetter.get_custom_placeholder_by_name('Other')
91107
if not event.has_session_speakers:
92108
abort(404)
93109
tracks = DataGetter.get_tracks(event.id)
@@ -143,7 +159,12 @@ def display_event_schedule_xcal(identifier):
143159
def display_event_cfs(identifier, via_hash=False):
144160
event = get_published_event_or_abort(identifier)
145161
placeholder_images = DataGetter.get_event_default_images()
146-
custom_placeholder = DataGetter.get_custom_placeholders()
162+
if event.sub_topic:
163+
custom_placeholder = DataGetter.get_custom_placeholder_by_name(event.sub_topic)
164+
elif event.topic:
165+
custom_placeholder = DataGetter.get_custom_placeholder_by_name(event.topic)
166+
else:
167+
custom_placeholder = DataGetter.get_custom_placeholder_by_name('Other')
147168
if not event.has_session_speakers:
148169
abort(404)
149170

@@ -179,7 +200,12 @@ def display_event_cfs_via_hash(hash):
179200
abort(404)
180201
event = DataGetter.get_event(call_for_speakers.event_id)
181202
placeholder_images = DataGetter.get_event_default_images()
182-
custom_placeholder = DataGetter.get_custom_placeholders()
203+
if event.sub_topic:
204+
custom_placeholder = DataGetter.get_custom_placeholder_by_name(event.sub_topic)
205+
elif event.topic:
206+
custom_placeholder = DataGetter.get_custom_placeholder_by_name(event.topic)
207+
else:
208+
custom_placeholder = DataGetter.get_custom_placeholder_by_name('Other')
183209
if not event.has_session_speakers:
184210
abort(404)
185211

@@ -214,7 +240,12 @@ def process_event_cfs(identifier, via_hash=False):
214240
if request.method == 'GET':
215241
event = get_published_event_or_abort(identifier)
216242
placeholder_images = DataGetter.get_event_default_images()
217-
custom_placeholder = DataGetter.get_custom_placeholders()
243+
if event.sub_topic:
244+
custom_placeholder = DataGetter.get_custom_placeholder_by_name(event.sub_topic)
245+
elif event.topic:
246+
custom_placeholder = DataGetter.get_custom_placeholder_by_name(event.topic)
247+
else:
248+
custom_placeholder = DataGetter.get_custom_placeholder_by_name('Other')
218249
if not event.has_session_speakers:
219250
abort(404)
220251

@@ -262,7 +293,12 @@ def process_event_cfs(identifier, via_hash=False):
262293
def display_event_coc(identifier):
263294
event = get_published_event_or_abort(identifier)
264295
placeholder_images = DataGetter.get_event_default_images()
265-
custom_placeholder = DataGetter.get_custom_placeholders()
296+
if event.sub_topic:
297+
custom_placeholder = DataGetter.get_custom_placeholder_by_name(event.sub_topic)
298+
elif event.topic:
299+
custom_placeholder = DataGetter.get_custom_placeholder_by_name(event.topic)
300+
else:
301+
custom_placeholder = DataGetter.get_custom_placeholder_by_name('Other')
266302
call_for_speakers = DataGetter.get_call_for_papers(event.id).first()
267303
if not (event.code_of_conduct and event.code_of_conduct != '' and event.code_of_conduct != ' '):
268304
abort(404)
@@ -278,7 +314,12 @@ def display_event_coc(identifier):
278314
def display_event_tickets(identifier):
279315
event = get_published_event_or_abort(identifier)
280316
placeholder_images = DataGetter.get_event_default_images()
281-
custom_placeholder = DataGetter.get_custom_placeholders()
317+
if event.sub_topic:
318+
custom_placeholder = DataGetter.get_custom_placeholder_by_name(event.sub_topic)
319+
elif event.topic:
320+
custom_placeholder = DataGetter.get_custom_placeholder_by_name(event.topic)
321+
else:
322+
custom_placeholder = DataGetter.get_custom_placeholder_by_name('Other')
282323
if event.copyright:
283324
licence_details = DataGetter.get_licence_details(event.copyright.licence)
284325
else:

0 commit comments

Comments
 (0)