]> Untitled Git - lemmy.git/blob - ui/src/components/sponsors.tsx
Updating code url references to https://github.com/LemmyNet/lemmy
[lemmy.git] / ui / src / components / sponsors.tsx
1 import { Component } from 'inferno';
2 import { WebSocketService } from '../services';
3 import { i18n } from '../i18next';
4 import { T } from 'inferno-i18next';
5 import { repoUrl } from '../utils';
6
7 let general = [
8   'Nathan J. Goode',
9   'Andre Vallestero',
10   'riccardo',
11   'NotTooHighToHack',
12 ];
13 let highlighted = ['Alex Benishek'];
14 // let silver = [];
15 // let gold = [];
16 // let latinum = [];
17
18 export class Sponsors extends Component<any, any> {
19   constructor(props: any, context: any) {
20     super(props, context);
21   }
22
23   componentDidMount() {
24     document.title = `${i18n.t('sponsors')} - ${
25       WebSocketService.Instance.site.name
26     }`;
27     window.scrollTo(0, 0);
28   }
29
30   render() {
31     return (
32       <div class="container text-center">
33         {this.topMessage()}
34         <hr />
35         {this.sponsors()}
36         <hr />
37         {this.bitcoin()}
38       </div>
39     );
40   }
41
42   topMessage() {
43     return (
44       <div>
45         <h5>{i18n.t('donate_to_lemmy')}</h5>
46         <p>
47           <T i18nKey="sponsor_message">
48             #<a href={repoUrl}>#</a>
49           </T>
50         </p>
51         <a class="btn btn-secondary" href="https://liberapay.com/Lemmy/">
52           {i18n.t('support_on_liberapay')}
53         </a>
54         <a
55           class="btn btn-secondary ml-2"
56           href="https://www.patreon.com/dessalines"
57         >
58           {i18n.t('support_on_patreon')}
59         </a>
60       </div>
61     );
62   }
63   sponsors() {
64     return (
65       <div class="container">
66         <h5>{i18n.t('sponsors')}</h5>
67         <p>{i18n.t('general_sponsors')}</p>
68         <div class="row card-columns">
69           {highlighted.map(s => (
70             <div class="card bg-primary col-12 col-md-2 font-weight-bold">
71               <div>{s}</div>
72             </div>
73           ))}
74           {general.map(s => (
75             <div class="card col-12 col-md-2">
76               <div>{s}</div>
77             </div>
78           ))}
79         </div>
80       </div>
81     );
82   }
83
84   bitcoin() {
85     return (
86       <div>
87         <h5>{i18n.t('crypto')}</h5>
88         <div class="table-responsive">
89           <table class="table table-hover text-center">
90             <tbody>
91               <tr>
92                 <td>{i18n.t('bitcoin')}</td>
93                 <td>
94                   <code>1Hefs7miXS5ff5Ck5xvmjKjXf5242KzRtK</code>
95                 </td>
96               </tr>
97               <tr>
98                 <td>{i18n.t('ethereum')}</td>
99                 <td>
100                   <code>0x400c96c96acbC6E7B3B43B1dc1BB446540a88A01</code>
101                 </td>
102               </tr>
103               <tr>
104                 <td>{i18n.t('monero')}</td>
105                 <td>
106                   <code>
107                     41taVyY6e1xApqKyMVDRVxJ76sPkfZhALLTjRvVKpaAh2pBd4wv9RgYj1tSPrx8wc6iE1uWUfjtQdTmTy2FGMeChGVKPQuV
108                   </code>
109                 </td>
110               </tr>
111             </tbody>
112           </table>
113         </div>
114       </div>
115     );
116   }
117 }