diff --git a/src/assets/supporters-noneedtostudy-logo-medium.png b/src/assets/supporters-noneedtostudy-logo-medium.png new file mode 100644 index 000000000000..ad66b46da15f Binary files /dev/null and b/src/assets/supporters-noneedtostudy-logo-medium.png differ diff --git a/src/components/Support/Support.jsx b/src/components/Support/Support.jsx index 936c12a0ebfe..b05cad10b78d 100644 --- a/src/components/Support/Support.jsx +++ b/src/components/Support/Support.jsx @@ -252,9 +252,11 @@ export default class Support extends Component { : SmallIcon } alt={ - supporter.name || supporter.slug - ? `${supporter.name || supporter.slug}'s avatar` - : 'avatar' + supporter.alt + ? supporter.alt + : supporter.name || supporter.slug + ? `${supporter.name || supporter.slug}'s avatar` + : 'avatar' } onError={this._handleImgError} /> diff --git a/src/utilities/fetch-supporters.mjs b/src/utilities/fetch-supporters.mjs index 0a068608fa4a..275ec38dcd0f 100644 --- a/src/utilities/fetch-supporters.mjs +++ b/src/utilities/fetch-supporters.mjs @@ -81,15 +81,30 @@ const transactionsGraphqlQuery = `query transactions($dateFrom: DateTime, $limit } }`; -const nodeToSupporter = (node) => ({ - name: node.account.name, - slug: node.account.slug, - website: node.account.website, - avatar: node.account.imageUrl, - firstDonation: node.createdAt, - totalDonations: node.totalDonations.value * 100, - monthlyDonations: 0, -}); +const additionalInformation = { + 'gem-m': { + website: 'https://www.noneedtostudy.com/take-my-praxis-test-for-me', + avatar: + 'https://webpack.js.org/assets/supporters-noneedtostudy-logo-medium.png', + alt: 'Take My Praxis Test For Me - NoNeedToStudy.com Praxis Tutors', + }, +}; + +const nodeToSupporter = (node) => { + const { slug } = node.account; + const info = additionalInformation[slug]; + + return { + name: node.account.name, + website: node.account.website, + avatar: node.account.imageUrl, + ...info, + slug: slug, + firstDonation: node.createdAt, + totalDonations: node.totalDonations.value * 100, + monthlyDonations: 0, + }; +}; const getAllNodes = async (graphqlQuery, getNodes) => { const body = { @@ -113,7 +128,7 @@ const getAllNodes = async (graphqlQuery, getNodes) => { remaining = 100; } // Handling pagination if necessary - + while (true) { if (remaining === 0) { console.log(`Rate limit exceeded. Sleeping until ${new Date(reset)}.`); diff --git a/webpack.ssg.mjs b/webpack.ssg.mjs index 657496ef021e..3b362c2fa2b2 100644 --- a/webpack.ssg.mjs +++ b/webpack.ssg.mjs @@ -115,6 +115,10 @@ export default (env) => from: './assets/icon-square-big.svg', to: './assets/', }, + { + from: './assets/supporters-*.png', + to: './', + }, { from: './assets/robots.txt', to: './',