Skip to content

Commit 75b6103

Browse files
authored
feat: Add group banner and logo (#7555)
* add group banner and logo * fix merge conflicts
1 parent 581668b commit 75b6103

File tree

5 files changed

+80
-38
lines changed

5 files changed

+80
-38
lines changed

app/models/group.js

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,9 @@ export default class Group extends ModelBase.extend({
1111

1212

1313
name : attr('string'),
14+
about : attr('string'),
15+
logoUrl : attr('string'),
16+
bannerUrl : attr('string'),
1417
createdAt : attr('moment', { readOnly: true }),
1518
modifiedAt : attr('moment'),
1619
deletedAt : attr('moment'),

app/templates/components/forms/group/group-settings-form.hbs

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,32 @@
1010
</div>
1111

1212
<form class="ui form {{if this.isLoading 'loading'}}" >
13+
<div class="fields">
14+
<div class="fifteen wide field">
15+
<Widgets::Forms::ImageUpload
16+
@imageUrl={{@group.bannerUrl}}
17+
@needsCropper={{true}}
18+
@label={{t "Event Image"}}
19+
@id="event_image"
20+
@icon="camera"
21+
@hint={{t "Select Group Banner Image"}}
22+
@imageText={{t "Header Image"}}
23+
@isHeaderImage={{true}}
24+
@maxSizeInKb={{this.settings.imageSize}}
25+
@helpText={{t "We recommend using at least a 2160x1080px (2:1 ratio) image"}}
26+
@requiresDivider={{true}} />
27+
</div>
28+
<div class="five wide field">
29+
<Widgets::Forms::ImageUpload
30+
@imageUrl={{@group.logoUrl}}
31+
@label={{t "Logo"}}
32+
@id="event_logo"
33+
@icon="image"
34+
@hint={{t "Select Logo"}}
35+
@imageText={{t "Logo"}}
36+
@maxSizeInKb={{this.settings.logoSize}} />
37+
</div>
38+
</div>
1339
<div class="mt-4 mb-8">
1440
<h4>
1541
{{t 'Social Media'}}
Lines changed: 50 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -1,40 +1,54 @@
1-
<div class="ui container">
2-
<div class="mb-4">
3-
{{#if @group.events}}
4-
<h2 class="main-heading mb-4 centered text">{{@group.name}}</h2>
5-
<div class="social-icons d-flex mt-8 mb-8 wrap" style="justify-content: center;">
6-
{{#each @group.socialLinks as |socialLink|}}
7-
{{#if (eq socialLink.name 'website')}}
8-
<a class="m-1 ml-0" href={{socialLink.link}} target="_blank" rel="noopener noreferrer"><i class="globe big icon"></i></a>
9-
{{else if (eq socialLink.name 'groups.google')}}
10-
<a class="m-1 ml-0" href={{socialLink.link}} target="_blank" rel="noopener noreferrer"><i class="google big icon"></i></a>
11-
{{else if (eq socialLink.name 'mastodon')}}
12-
<a class="m-1 ml-0" href={{socialLink.link}} target="_blank" rel="noopener noreferrer"><Icons::Mastodon /></a>
13-
{{else if socialLink.is_custom}}
14-
<UiPopup @content={{t-var socialLink.name}}>
15-
<a class="m-1 ml-0" href="{{socialLink.link}}" target="_blank" rel="noopener nofollow"><i style="font-size: 1.5rem;" class="external alternate icon"></i></a>
16-
</UiPopup>
17-
{{else}}
18-
<a class="m-1 ml-0" href={{socialLink.link}} target="_blank" rel="noopener noreferrer"><i class="{{socialLink.name}} {{socialLink.color}} big icon"></i></a>
19-
{{/if}}
1+
<div class="ui fluid public-event ui relaxed grid mt-0 pt-0">
2+
<div class="sixteen wide column lead">
3+
<Widgets::SafeImage class="background" @src={{if @group.bannerUrl @group.bannerUrl "/images/landing.jpg"}} />
4+
<div class="content">
5+
<div class="ui container">
6+
<div class="ui info d-flex">
7+
{{#if @group.logoUrl}}
8+
<img src="{{@group.logoUrl}}" class="logo mr-8" />
9+
{{/if}}
10+
<div>
11+
<h1 class="event name text-white">{{@group.name}}</h1>
12+
</div>
13+
</div>
14+
</div>
15+
</div>
16+
</div>
17+
<div style="margin: auto;" class="mb-4 twelve wide column container">
18+
{{#if @group.events}}
19+
<div class="social-icons d-flex mt-4 mb-8 wrap" style="justify-content: center;">
20+
{{#each @group.socialLinks as |socialLink|}}
21+
{{#if (eq socialLink.name 'website')}}
22+
<a class="m-1 ml-0" href={{socialLink.link}} target="_blank" rel="noopener noreferrer"><i class="globe big icon"></i></a>
23+
{{else if (eq socialLink.name 'groups.google')}}
24+
<a class="m-1 ml-0" href={{socialLink.link}} target="_blank" rel="noopener noreferrer"><i class="google big icon"></i></a>
25+
{{else if (eq socialLink.name 'mastodon')}}
26+
<a class="m-1 ml-0" href={{socialLink.link}} target="_blank" rel="noopener noreferrer"><Icons::Mastodon /></a>
27+
{{else if socialLink.is_custom}}
28+
<UiPopup @content={{t-var socialLink.name}}>
29+
<a class="m-1 ml-0" href="{{socialLink.link}}" target="_blank" rel="noopener nofollow"><i style="font-size: 1.5rem;" class="external alternate icon"></i></a>
30+
</UiPopup>
31+
{{else}}
32+
<a class="m-1 ml-0" href={{socialLink.link}} target="_blank" rel="noopener noreferrer"><i class="{{socialLink.name}} {{socialLink.color}} big icon"></i></a>
33+
{{/if}}
34+
{{/each}}
35+
</div>
36+
{{#if this.upcomingEvents}}
37+
<h2 class="main-heading mb-4">{{t 'Upcoming Events'}}</h2>
38+
<div class="ui stackable three column grid">
39+
{{#each this.upcomingEvents as |event|}}
40+
<EventCard @event={{event}} @shareEvent={{action "shareEvent"}} />
2041
{{/each}}
2142
</div>
22-
{{#if this.upcomingEvents}}
23-
<h2 class="main-heading mb-4">{{t 'Upcoming Events'}}</h2>
24-
<div class="ui stackable three column grid">
25-
{{#each this.upcomingEvents as |event|}}
26-
<EventCard @event={{event}} @shareEvent={{action "shareEvent"}} />
27-
{{/each}}
28-
</div>
29-
{{/if}}
30-
{{#if this.pastEvents}}
31-
<h2 class="main-heading mb-4">{{t 'Past Events'}}</h2>
32-
<div class="ui stackable three column grid">
33-
{{#each this.pastEvents as |event|}}
34-
<EventCard @event={{event}} @shareEvent={{action "shareEvent"}} />
35-
{{/each}}
36-
</div>
37-
{{/if}}
3843
{{/if}}
39-
</div>
44+
{{#if this.pastEvents}}
45+
<h2 class="main-heading mb-4">{{t 'Past Events'}}</h2>
46+
<div class="ui stackable three column grid">
47+
{{#each this.pastEvents as |event|}}
48+
<EventCard @event={{event}} @shareEvent={{action "shareEvent"}} />
49+
{{/each}}
50+
</div>
51+
{{/if}}
52+
{{/if}}
53+
</div>
4054
</div>

app/templates/components/group-card.hbs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
{{#unless this.device.isMobile}}
33
<div class="ui card three wide computer six wide tablet column">
44
<a class="image" href={{href-to 'groups.view' @group.id}}>
5-
<Widgets::SafeImage @src={{"/images/landing.jpg"}} />
5+
<Widgets::SafeImage @src={{if @group.bannerUrl @group.bannerUrl "/images/landing.jpg"}} />
66
</a>
77
</div>
88
{{/unless}}

app/templates/groups/view.hbs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
<GroupHeader />
21
<div class="row">
32
<div class="sixteen wide column">
43
<Forms::group::GroupView

0 commit comments

Comments
 (0)