Skip to content

Commit d91db93

Browse files
committed
Add social fields for international organizers
1 parent 8455fe8 commit d91db93

File tree

2 files changed

+56
-13
lines changed

2 files changed

+56
-13
lines changed

frontend/ChapterList.vue

+49-9
Original file line numberDiff line numberDiff line change
@@ -387,7 +387,12 @@
387387
<p v-if="!currentChapter.ChapterID">
388388
Please save the new chapter before adding organizers.
389389
</p>
390-
<b-table :data="currentChapter.Organizers" v-if="currentChapter.ChapterID">
390+
<b-table
391+
:data="currentChapter.Organizers"
392+
detailed
393+
:show-detail-icon="true"
394+
v-if="currentChapter.ChapterID"
395+
>
391396
<template #empty>
392397
<div class="has-text-centered">No organizers found. Add one below.</div>
393398
</template>
@@ -415,19 +420,51 @@
415420
icon="phone"
416421
></b-input>
417422
</b-table-column>
418-
<b-table-column field="Facebook" label="Facebook" v-slot="props">
419-
<b-input
420-
type="text"
421-
v-model="props.row.Facebook"
422-
placeholder="Facebook"
423-
icon="facebook"
424-
></b-input>
425-
</b-table-column>
426423
<b-table-column v-slot="props">
427424
<b-button @click="deleteOrganizer(props.row)">
428425
<b-icon icon="delete" type="is-danger"></b-icon>
429426
</b-button>
430427
</b-table-column>
428+
<template #detail="props">
429+
<div style="display: flex; flex-wrap: wrap; gap: 10px">
430+
<b-field label="Facebook" label-position="on-border" style="max-width: 300px">
431+
<b-input
432+
type="text"
433+
v-model="props.row.Facebook"
434+
placeholder="Facebook"
435+
icon="facebook"
436+
maxlength="100"
437+
></b-input>
438+
</b-field>
439+
<b-field label="Instagram" label-position="on-border" style="max-width: 300px">
440+
<b-input
441+
type="text"
442+
v-model="props.row.Instagram"
443+
placeholder="Instagram"
444+
icon="instagram"
445+
maxlength="100"
446+
></b-input>
447+
</b-field>
448+
<b-field label="Twitter" label-position="on-border" style="max-width: 300px">
449+
<b-input
450+
type="text"
451+
v-model="props.row.Twitter"
452+
placeholder="Twitter"
453+
icon="twitter"
454+
maxlength="100"
455+
></b-input>
456+
</b-field>
457+
<b-field label="Website" label-position="on-border" style="max-width: 300px">
458+
<b-input
459+
type="text"
460+
v-model="props.row.Website"
461+
placeholder="Website"
462+
icon="web"
463+
maxlength="100"
464+
></b-input>
465+
</b-field>
466+
</div>
467+
</template>
431468
</b-table>
432469
</b-field>
433470
<b-button
@@ -582,6 +619,9 @@ interface Organizer {
582619
Email: string;
583620
Phone: string;
584621
Facebook: string;
622+
Instagram: string;
623+
Twitter: string;
624+
Website: string;
585625
}
586626
587627
export default Vue.extend({

server/src/model/chapters.go

+7-4
Original file line numberDiff line numberDiff line change
@@ -63,10 +63,13 @@ type ChapterWithToken struct {
6363
}
6464

6565
type Organizer struct {
66-
Name string
67-
Email string
68-
Phone string
69-
Facebook string
66+
Name string
67+
Email string
68+
Phone string
69+
Facebook string
70+
Instagram string
71+
Twitter string
72+
Website string
7073
}
7174

7275
type Organizers []*Organizer

0 commit comments

Comments
 (0)