Add new contributor and improve contributors generation

This commit is contained in:
Arnaud Vergnet 2020-10-07 10:08:07 +02:00
parent 25a12dad94
commit f1318c6aed
3 changed files with 69 additions and 95 deletions

View file

@ -364,13 +364,14 @@
"thanks": "Thanks", "thanks": "Thanks",
"user": { "user": {
"you": "You ?", "you": "You ?",
"arnaud": "Student in IR (2020). He is the creator of this beautiful app you use everyday. Some say he is handsome as well.", "arnaud": "Student in 4IR (2020). He is the creator of this app you use everyday.",
"yohan": "Student in IR (2020). He helped to fix bugs. I think he is handsome as well but I don't know him personally.", "docjyj": "Student in 2MIC FAS (2020). He added some new features and fixed some bugs.",
"beranger": "Student in AE (2020) and president of the Amicale when the app was created. The app was his idea. He helped a lot to find bugs, new features and communication.", "yohan": "Student in 4IR (2020). He helped to fix bugs and gave some ideas.",
"celine": "Student in GPE (2020). Without her, everything would be less cute. She helped to write the text, for communication, and also to create the mascot 🦊.", "beranger": "Student in 4AE (2020) and president of the Amicale when the app was created. The app was his idea. He helped a lot to find bugs, new features and communication.",
"damien": "Student in IR (2020) and creator of the 2020 version of the Amicale's website. Thanks to his help, integrating Amicale's services into the app was child's play.", "celine": "Student in 4GPE (2020). Without her, everything would be less cute. She helped to write the text, for communication, and also to create the mascot 🦊.",
"titouan": "Student in IR (2020). He helped a lot in finding bugs and new features.", "damien": "Student in 4IR (2020) and creator of the 2020 version of the Amicale's website. Thanks to his help, integrating Amicale's services into the app was child's play.",
"theo": "Student in AE (2020). If the app works on iOS, this is all thanks to his help during his numerous tests." "titouan": "Student in 4IR (2020). He helped a lot in finding bugs and new features.",
"theo": "Student in 4AE (2020). If the app works on iOS, this is all thanks to his help during his numerous tests."
} }
}, },
"feedback": { "feedback": {

View file

@ -364,13 +364,14 @@
"thanks": "Remerciements", "thanks": "Remerciements",
"user": { "user": {
"you": "Toi ?", "you": "Toi ?",
"arnaud": "Étudiant en IR (2020). C'est le créateur de cette magnifique application que t'utilises tous les jour. Et il est vraiment BG aussi.", "arnaud": "Étudiant en 4IR (2020). C'est le créateur de cette application que t' utilises tous les jours.",
"yohan": "Étudiant en IR (2020). Il a aidé à corriger des bug. Et j'imagine aussi qu'il est BG mais je le connait pas.", "docjyj": "Étudiant en 2MIC FAS (2020). Il a ajouté quelques nouvelles fonctionnalités et corrigé des bugs.",
"beranger": "Étudiant en AE (2020) et Président de lAmicale au moment de la création et du lancement du projet. Lapplication, cétait son idée. Il a beaucoup aidé pour trouver des bugs, de nouvelles fonctionnalités et faire de la com.", "yohan": "Étudiant en 4IR (2020). Il a aidé à corriger des bug et a proposé quelques idées.",
"celine": "Étudiante en GPE (2020). Sans elle, tout serait moins mignon. Elle a aidé pour écrire le texte, faire de la com, et aussi à créer la mascotte 🦊.", "beranger": "Étudiant en 4AE (2020) et Président de lAmicale au moment de la création et du lancement du projet. Lapplication, cétait son idée. Il a beaucoup aidé pour trouver des bugs, de nouvelles fonctionnalités et faire de la com.",
"damien": "Étudiant en IR (2020) et créateur de la dernière version du site de lAmicale. Grâce à son aide, intégrer les services de lAmicale à lapplication a été très simple.", "celine": "Étudiante en 4GPE (2020). Sans elle, tout serait moins mignon. Elle a aidé pour écrire le texte, faire de la com, et aussi à créer la mascotte 🦊.",
"titouan": "Étudiant en IR (2020). Il a beaucoup aidé pour trouver des bugs et proposer des nouvelles fonctionnalités.", "damien": "Étudiant en 4IR (2020) et créateur de la dernière version du site de lAmicale. Grâce à son aide, intégrer les services de lAmicale à lapplication a été très simple.",
"theo": "Étudiant en AE (2020). Si lapplication marche sur iOS, cest grâce à son aide lors de ses nombreux tests." "titouan": "Étudiant en 4IR (2020). Il a beaucoup aidé pour trouver des bugs et proposer des nouvelles fonctionnalités.",
"theo": "Étudiant en 4AE (2020). Si lapplication marche sur iOS, cest grâce à son aide lors de ses nombreux tests."
} }
}, },
"feedback": { "feedback": {

View file

@ -84,8 +84,8 @@ class AboutScreen extends React.Component<PropsType, StateType> {
/** /**
* Object containing data relative to major contributors * Object containing data relative to major contributors
*/ */
majorContributors: {[key: string]: MemberItemType} = { majorContributors: Array<MemberItemType> = [
arnaud: { {
name: 'Arnaud Vergnet', name: 'Arnaud Vergnet',
message: i18n.t('screens.about.user.arnaud'), message: i18n.t('screens.about.user.arnaud'),
icon: 'crown', icon: 'crown',
@ -98,7 +98,18 @@ class AboutScreen extends React.Component<PropsType, StateType> {
'&body=' + '&body=' +
'Coucou !\n\n', 'Coucou !\n\n',
}, },
yohan: { {
name: 'Jean-Yves Saint-Loubert',
message: i18n.t('screens.about.user.docjyj'),
icon: 'xml',
mail:
'mailto:saint-lo@etud.insa-toulouse.fr?' +
'subject=' +
'Application Amicale INSA Toulouse' +
'&body=' +
'Coucou !\n\n',
},
{
name: 'Yohan Simard', name: 'Yohan Simard',
message: i18n.t('screens.about.user.yohan'), message: i18n.t('screens.about.user.yohan'),
icon: 'xml', icon: 'xml',
@ -110,38 +121,38 @@ class AboutScreen extends React.Component<PropsType, StateType> {
'&body=' + '&body=' +
'Coucou !\n\n', 'Coucou !\n\n',
}, },
}; ];
/** /**
* Object containing data relative to users who helped during development * Object containing data relative to users who helped during development
*/ */
helpfulUsers: {[key: string]: MemberItemType} = { helpfulUsers: Array<MemberItemType> = [
beranger: { {
name: 'Béranger Quintana Y Arciosana', name: 'Béranger Quintana Y Arciosana',
message: i18n.t('screens.about.user.beranger'), message: i18n.t('screens.about.user.beranger'),
icon: 'account-heart', icon: 'account-heart',
}, },
celine: { {
name: 'Céline Tassin', name: 'Céline Tassin',
message: i18n.t('screens.about.user.celine'), message: i18n.t('screens.about.user.celine'),
icon: 'brush', icon: 'brush',
}, },
damien: { {
name: 'Damien Molina', name: 'Damien Molina',
message: i18n.t('screens.about.user.damien'), message: i18n.t('screens.about.user.damien'),
icon: 'web', icon: 'web',
}, },
titouan: { {
name: 'Titouan Labourdette', name: 'Titouan Labourdette',
message: i18n.t('screens.about.user.titouan'), message: i18n.t('screens.about.user.titouan'),
icon: 'shield-bug', icon: 'shield-bug',
}, },
theo: { {
name: 'Théo Tami', name: 'Théo Tami',
message: i18n.t('screens.about.user.theo'), message: i18n.t('screens.about.user.theo'),
icon: 'food-apple', icon: 'food-apple',
}, },
}; ];
/** /**
* Data to be displayed in the app card * Data to be displayed in the app card
@ -196,79 +207,12 @@ class AboutScreen extends React.Component<PropsType, StateType> {
/** /**
* Data to be displayed in the team card * Data to be displayed in the team card
*/ */
teamData: Array<ListItemType> = [ teamData: Array<ListItemType>;
{
onPressCallback: () => {
this.onContributorListItemPress(this.majorContributors.arnaud);
},
icon: this.majorContributors.arnaud.icon,
text: this.majorContributors.arnaud.name,
showChevron: false,
},
{
onPressCallback: () => {
this.onContributorListItemPress(this.majorContributors.yohan);
},
icon: this.majorContributors.yohan.icon,
text: this.majorContributors.yohan.name,
showChevron: false,
},
{
onPressCallback: () => {
const {navigation} = this.props;
navigation.navigate('feedback');
},
icon: 'hand-pointing-right',
text: i18n.t('screens.about.user.you'),
showChevron: true,
},
];
/** /**
* Data to be displayed in the thanks card * Data to be displayed in the thanks card
*/ */
thanksData: Array<ListItemType> = [ thanksData: Array<ListItemType>;
{
onPressCallback: () => {
this.onContributorListItemPress(this.helpfulUsers.beranger);
},
icon: this.helpfulUsers.beranger.icon,
text: this.helpfulUsers.beranger.name,
showChevron: false,
},
{
onPressCallback: () => {
this.onContributorListItemPress(this.helpfulUsers.celine);
},
icon: this.helpfulUsers.celine.icon,
text: this.helpfulUsers.celine.name,
showChevron: false,
},
{
onPressCallback: () => {
this.onContributorListItemPress(this.helpfulUsers.damien);
},
icon: this.helpfulUsers.damien.icon,
text: this.helpfulUsers.damien.name,
showChevron: false,
},
{
onPressCallback: () => {
this.onContributorListItemPress(this.helpfulUsers.titouan);
},
icon: this.helpfulUsers.titouan.icon,
text: this.helpfulUsers.titouan.name,
showChevron: false,
},
{
onPressCallback: () => {
this.onContributorListItemPress(this.helpfulUsers.theo);
},
icon: this.helpfulUsers.theo.icon,
text: this.helpfulUsers.theo.name,
showChevron: false,
},
];
/** /**
* Data to be displayed in the technologies card * Data to be displayed in the technologies card
@ -319,6 +263,34 @@ class AboutScreen extends React.Component<PropsType, StateType> {
dialogMessage: '', dialogMessage: '',
dialogButtons: [], dialogButtons: [],
}; };
this.teamData = [
...this.getMemberData(this.majorContributors),
{
onPressCallback: () => {
const {navigation} = this.props;
navigation.navigate('feedback');
},
icon: 'hand-pointing-right',
text: i18n.t('screens.about.user.you'),
showChevron: true,
},
];
this.thanksData = this.getMemberData(this.helpfulUsers);
}
getMemberData(data: Array<MemberItemType>): Array<ListItemType> {
const final: Array<ListItemType> = [];
data.forEach((item) => {
final.push({
onPressCallback: () => {
this.onContributorListItemPress(item);
},
icon: item.icon,
text: item.name,
showChevron: false,
});
});
return final;
} }
/** /**
@ -355,7 +327,7 @@ class AboutScreen extends React.Component<PropsType, StateType> {
} }
if (trollLink) { if (trollLink) {
dialogBtn.push({ dialogBtn.push({
title: 'SWAG', title: 'Coucou',
onPress: () => { onPress: () => {
openWebLink(trollLink); openWebLink(trollLink);
}, },