From 3afd6aa24e1391f980bffb3b2c9a6cbdd88cdf55 Mon Sep 17 00:00:00 2001 From: Toni Fisler Date: Mon, 14 Mar 2022 20:52:50 +0100 Subject: [PATCH 01/14] add favicon, closes #35 --- public/android-chrome-192x192.png | Bin 0 -> 15412 bytes public/android-chrome-512x512.png | Bin 0 -> 88957 bytes public/apple-touch-icon.png | Bin 0 -> 9665 bytes public/favicon-16x16.png | Bin 0 -> 1440 bytes public/favicon-32x32.png | Bin 0 -> 2000 bytes public/favicon.ico | Bin 0 -> 15086 bytes public/mstile-150x150.png | Bin 0 -> 9139 bytes public/site.webmanifest | 19 +++++++++++++++++++ src/pages/index.jsx | 12 +++++------- 9 files changed, 24 insertions(+), 7 deletions(-) create mode 100644 public/android-chrome-192x192.png create mode 100644 public/android-chrome-512x512.png create mode 100644 public/apple-touch-icon.png create mode 100644 public/favicon-16x16.png create mode 100644 public/favicon-32x32.png create mode 100644 public/mstile-150x150.png create mode 100644 public/site.webmanifest diff --git a/public/android-chrome-192x192.png b/public/android-chrome-192x192.png new file mode 100644 index 0000000000000000000000000000000000000000..586ec5a7a2ea2d4eec1dd4e1aebaa2fcea76dc10 GIT binary patch literal 15412 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 z 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 literal 0 HcmV?d00001 diff --git a/public/favicon-16x16.png b/public/favicon-16x16.png new file mode 100644 index 0000000000000000000000000000000000000000..95c4e407c5dcbbc793af588fc846c98ac48b5ff4 GIT binary patch literal 1440 zcmZ`(cT`hX7{3gSfT)PAs8pjUgb@fEf{Z|dnGi!r!q5UCK?Ec~tbnKyw1RCNh~mIH zD|Ts7TdTIURjii10xH;r_Vjp;5;9-jN?+P~JpH5h-21-!jo){F-}~OXO~SM_?yien z0RZkCHd92%dG$34DLul(pv?Uka9fLK7=$EG(lk(BQhfrxHHqdXa-h|%01@9`w#(I%`MOfbrw26mm zX!<1?hLs|-M2+@qEhW`h-vG2(jSco;+FoRDDgL+**)2q>!>2tn_1baQj`)M7)J(%>gCCKi~uax;IOnJKVjWkK>BNSO((XG}R~>s+MM9+~<@ z8Tw^HgRj6C%rg)w(7?p+Aq6wfxZSUOkPw1>ptmu?Ie*lf0* zfOD6Lua>VCrP=?0SA)d4_!L2&UgVIxnqR(b_VViJnAzMslk?&Qr@ei05+TOqWP7_^ zx7!J~mp$w?jDNN#nn>nQz+1z7CR4cGCKMMHJF5yfXK?Jxp+%Xpf-sWQ907~;htnKS zKeBk+fQ-N_;V>CuuVIII4pX>2huduTIdkWE%=cX2NT^QEZ@jsXFGx!luJu~9*l`A! zxx`zPA?6D*B|@p}t;LRD>9VZsoZNNm-_Fd-FOZX$gB3o73T4rT;*BMxWt+-Zt^&TQ zipnbW=6AMK*VJyUEARu9ZQFNfcGfrS+WqdH#-_dgAmF|CKd9Wd|G>fKLoJ7ov<8Bp zqsNY)Xgm4gsfN>M&Yn9@1;HO(XutUJC!c=y`K8NWbX*Amw5!*?{Ob7iuW#JE_06~6 z-3|p|;otvo=Wge{AMZc-sjE985=2G!^!D`+3=R#CXh+9lVgZRB_wdo<@rfrt5C8J( z>iAiJM50G0{Pz3!#N^Y&B!-KN{RJhbFj=W<*c>j8xV-MAm*yJ}D(@4HRce+@U6`*{ z(B+j1LVz$@SQwQSP7RF^hsM&wi5V71qtR)!YpSK1{{YI$3yYOC{|~rFy+GV)Kw2x7 zsYUr)$g0Y6WpSy3tgcZh$i*tP9DwS!N&W0u6%q=iE4{mi^GpPseB6TNZk|4#yh96| zJjqN=#N9$CpQ~bW_rs9~ojsl2ouqCJ`!qKgJYVRc)+a|ECXN6cRvPnCa$fykoDY*B literal 0 HcmV?d00001 diff --git a/public/favicon-32x32.png b/public/favicon-32x32.png new file mode 100644 index 0000000000000000000000000000000000000000..be116984b6973b2297f116f759ca30bea47bf11a GIT binary patch literal 2000 zcmZ`)c{J1u8~!nqS?os5mEjxNDvdo&_GL7N>|@tOlVzlAGipRLl`xmFj!UVG>`GE` zt;2+by5f%IX1RpSbt{wHgfidw^ZVmF@A91UyyrRZIqx6u!}M^&%fb)B0RWICIN`j+ zh~6uxl(;7*CvS)W9BJoj2LMgE(%-}O?F~szUakO;tOEdyGyvEZQw#wBPz?cKH535M zO8@{Fccw?DtqP^gB)f9>uSe#QpA^`R#?3DyN!r_pZgir{sj*#~tIfO2n znEJ+FEDR>#?1=uotYX*NGk*IA=%TL8ECQ*3yU|rDf4$%C4}yiB=Px&-^y)w#ooWki zE8~nkPHS_^Q9ST_oiCJr1|^ZmjN8S6t9UK;t64%xYr zIFd?Zs$*voCj%oJs1w_bxtQI7=52mWkCx+K4(pngogsspg`M7mrOb4;pR$$9dIzq| zN2sbrxAm=R6n$*jrs}<5#acpri9_;v-?auI?9Pmm!U7GI`<}*qGIgm*j_Wr2f0*+O z6o1J1HuTa(B2??=<_t8$q@yT>&6d}rwWrj1ZoQlPA}D4D=>~2~jv8ooXHpea)OH6N z)LM6!e+Y68hRE+YS=TL%C}6xksRWP==Wb8Daoq?}957s&G#@=FEHk(&cVX!A@swXn z+>g-KTF+MK@XrWJh36YcR)P3jE(3f0@7QC2{AU7!1RziQPq*636a zz6JXkXQKpTl!y9s5Uj~ldH^I_QRRxVK0-l7=3+O;V0tw93FXNZm^EQO{$Umnzsxh3 zFH&~0)Z8f2KXEXeU{zUL!OHw+s9tv(a<^6WCAiFbcj_6U8J+we2el`5U^GcJyyt~f zTW!4AlPf7NwjywA=dPsK<~#V)!E?@ALpXl*YF-$}7p-MV(~W^@i|U2r+H6*f`*WN? zLa9=N>-#O{Zn|uFXnmK%%|?U!(NpF|J=T>y(@epYy5|+4AF^Xg-u|8*$<3AeLm>@` z{D~_>feX1*l&fp**@NKX_qA8IOu>lmZIWpliERK2x!d2U-a8r54n@%T@8@i*GR~0Y zi#T$vN_lV2ct=IUl{LHtZczzvS2tw4#Dkfl$A}o!o(Ue-25Ie6(GB-FFW;>0Mttjz zrV3w2h>W=F}bd<+u9y!G#%ou;{CFS_dTN``??+HRRsErUYZ7!H|iDI7R@PR`%1c?GNn0_(zKOq* zkSWoAUiDr8>Skv{&Po{u6uG1Iv;Sd@>V?>8x8zlv7;=hNq`Tp>kB!RY1$ogSaYXDT_vq71Vd zD)UDEe279yWzbPG_{X>DX0yuRJRz|H#O)`gvZ_&z>8!`f6h7;SW+* zb1!FN18oN;KXm>cF;jRZ_F5M$zzV;#+Bx4p?t8%QS}u6TBW_{*yX z@(&HXnttn;QAie2CB0?sxmI_%%RUq@82y{Gy|;a8co^#)74;}KStMDM^KG?{7Txq& zJ`ykYF#es45d0n$z#R;2*!40>xc_5yTPMK#W+FfN5ZyFhidQ|kI~F^(=yxOI00OU= z0lTMe0ct5}-3o5~`mKetR7|*<|H@G^=IWOb($|YL>;)9F2b8G`v*rk_v}&3(10q{1 zih9XIjfLNp2G{cHY<9nvO*ALEKqjySP;SONUb(AmX@@yiCwR?5=v7*}Y;-tVyR56? z=m0TjjxK)NBI)h>ie(e6D-~kv(WW^1Q_h7^!p%tu;bH)c4ULU4h9(#zQ=-vHa}#kI z>lqrF8yY@~Q)m2-;6m&oU-I-@}K8+=pKgmc0OwrnEju8lj1BDO3g_&^U%^?>Ug>QzCkJivP0jRUfJk eGR$z|IO_weNJYxJ{qZ943V`6~hI?cmdi}qHlZUSW literal 0 HcmV?d00001 diff --git a/public/favicon.ico b/public/favicon.ico index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..3fc6846b2138d4671c9611873fca68396bb399b4 100644 GIT binary patch literal 15086 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 literal 0 HcmV?d00001 diff --git a/public/mstile-150x150.png b/public/mstile-150x150.png new file mode 100644 index 0000000000000000000000000000000000000000..0376c984963663954ba897f1c991ec3feb2d75af GIT binary patch literal 9139 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
+
+ +
+

{t('error.404')}

+
+ ); +}; + +export default NoMatch; diff --git a/src/svg/ghost.svg b/src/svg/ghost.svg new file mode 100644 index 0000000..bcd9e40 --- /dev/null +++ b/src/svg/ghost.svg @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + From 50b08fa8b01f21c632e05a60a73c7862af1018ae Mon Sep 17 00:00:00 2001 From: Toni Fisler Date: Mon, 14 Mar 2022 21:42:20 +0100 Subject: [PATCH 04/14] add subject for update email, closes #88 --- src/components/Game/Detail/GameDetail.jsx | 94 +++++++++++------------ src/locales/en.json | 3 +- 2 files changed, 47 insertions(+), 50 deletions(-) diff --git a/src/components/Game/Detail/GameDetail.jsx b/src/components/Game/Detail/GameDetail.jsx index 9ffc6d0..4cf93b2 100644 --- a/src/components/Game/Detail/GameDetail.jsx +++ b/src/components/Game/Detail/GameDetail.jsx @@ -28,7 +28,7 @@ const GameDetail = ({game}) => { const releaseYear = releases[0]?.year || t('game.release_TBA'); const completeness_percent = Math.round( - ((completeness ?? 0) / config.MAX_COMPLETENESS) * 100, + ((completeness ?? 0) / config.MAX_COMPLETENESS) * 100 ); const has2Images = images.data.length === 2; @@ -68,43 +68,37 @@ const GameDetail = ({game}) => { return output.map(col =>
{renderImages(col, 'mb-4')}
); }; - const renderStudioPeople = ({title, field_path, id}) => - ( - - ); - + const renderStudioPeople = ({title, field_path, id}) => ( + + ); return ( -
-
-
-
+
+
+
+
{/* STUDIOS / PEOPLE */} - - {(studios || members)?.data.map(renderStudioPeople)} - + {(studios || members)?.data.map(renderStudioPeople)} {/* FIRST RELEASE YEAR */} - {releaseYear && {releaseYear}} + {releaseYear && {releaseYear}}
{/* GAME TITLE */} -

{title}

+

{title}

{/* PLATFORMS */} {platforms && ( -
+
{platforms.data.map(({slug, id}) => ( - + {t(`platforms.${slug}`)} @@ -114,11 +108,10 @@ const GameDetail = ({game}) => { {/* GENRES */} {genres && ( -
+
{genres.data.map(({slug, id}) => ( - + {t(`genres.${slug}`)} @@ -130,11 +123,11 @@ const GameDetail = ({game}) => { {/* DESCRIPTION */} {body ? (
) : ( -
+
{t('game.no_description')}
)} @@ -145,12 +138,12 @@ const GameDetail = ({game}) => { {/* IMAGES */}
{has2Images ? ( -
{renderImages()}
+
{renderImages()}
) : hasManyImages ? ( -
+
) : ( @@ -164,8 +157,8 @@ const GameDetail = ({game}) => { {/* LANGUAGES */} {languages.data.length > 0 && ( - -
+ +
{languages.data.map(({name}) => name).join(', ')}
@@ -174,13 +167,13 @@ const GameDetail = ({game}) => { {/* AWARDS */} {/*TODO add award location*/} {awards.length > 0 && ( - -
    + +
      {awards?.map((award, i) => ( -
    • - +
    • +
      -
      {award}
      +
      {award}
      {/*
      location
      */}
    • @@ -191,9 +184,9 @@ const GameDetail = ({game}) => { {/* CREDITS */} {credits && ( - +
      @@ -202,25 +195,28 @@ const GameDetail = ({game}) => { {/* DATA QUALITY */} {completeness && ( -
      +
      {completeness_percent}%
      -

      +

      {t('game.completeness_description')}

      {t('gos.contact_us')} -
      +
      * {t('game.completeness_help')}
      diff --git a/src/locales/en.json b/src/locales/en.json index 0d690fe..7248d2c 100644 --- a/src/locales/en.json +++ b/src/locales/en.json @@ -171,7 +171,8 @@ "sponsors": "Sponsor", "sponsors_plural": "Sponsors", "social_networks": "Social Network", - "social_networks_plural": "Social Networks" + "social_networks_plural": "Social Networks", + "update_mail_subject": "Game update suggestion - [{{game}}]" }, "games": { "fetched_in_ms": "fetched in {{ms}}", From 708911515bc1eff9f4a61f47917490c82791abf7 Mon Sep 17 00:00:00 2001 From: Toni Fisler Date: Mon, 14 Mar 2022 22:53:18 +0100 Subject: [PATCH 05/14] did a lot of things while fixing icon colors #85 --- public/pattern.svg | 817 ++++++++++++++++++ src/components/Dropdown/Dropdown.jsx | 12 +- src/components/Game/Teaser/GameTeaser.jsx | 2 +- .../Games/AutoSuggest/AutoSuggest.jsx | 3 +- .../Games/Filters/ReleasesFilter.jsx | 2 +- src/pages/index.jsx | 23 +- src/styles/_custom-base.css | 4 - src/styles/_custom-components.css | 4 +- src/styles/_layout.css | 13 +- src/styles/_tippy.css | 6 +- tailwind.config.js | 19 +- 11 files changed, 864 insertions(+), 41 deletions(-) create mode 100644 public/pattern.svg diff --git a/public/pattern.svg b/public/pattern.svg new file mode 100644 index 0000000..a7f9ff3 --- /dev/null +++ b/public/pattern.svg @@ -0,0 +1,817 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/components/Dropdown/Dropdown.jsx b/src/components/Dropdown/Dropdown.jsx index 1700f4d..796ccde 100644 --- a/src/components/Dropdown/Dropdown.jsx +++ b/src/components/Dropdown/Dropdown.jsx @@ -12,9 +12,8 @@ const Dropdown = ({ className, ...rest }) => { - const {ref, isComponentVisible, setIsComponentVisible} = useComponentVisible( - false - ); + const {ref, isComponentVisible, setIsComponentVisible} = + useComponentVisible(false); const toggle = () => { const newState = !isComponentVisible; @@ -45,8 +44,9 @@ const Dropdown = ({ const btnClasses = classNames( 'z-10 inline-flex items-center dropdown-toggle border py-2 px-4 text-white text-md focus:outline-none whitespace-nowrap', { - 'open bg-gray-1000 border-gray-850 text-white z-20': isComponentVisible, - 'bg-gray-900 hover:bg-gray-850 border-gray-900 hover:border-gray-850': !isComponentVisible, + 'open bg-gray-1100 border-gray-850 text-white z-20': isComponentVisible, + 'bg-gray-900 hover:bg-gray-850 border-gray-900 hover:border-gray-850': + !isComponentVisible, } ); @@ -65,7 +65,7 @@ const Dropdown = ({ {isComponentVisible && (
      diff --git a/src/components/Game/Teaser/GameTeaser.jsx b/src/components/Game/Teaser/GameTeaser.jsx index a82c723..5e39aed 100644 --- a/src/components/Game/Teaser/GameTeaser.jsx +++ b/src/components/Game/Teaser/GameTeaser.jsx @@ -63,7 +63,7 @@ const GameTeaser = ({game}) => {
      {genres.map(({slug}) => ( - + {t(`genres.${slug}`)} diff --git a/src/components/Games/AutoSuggest/AutoSuggest.jsx b/src/components/Games/AutoSuggest/AutoSuggest.jsx index 8742e7e..0e7c9db 100644 --- a/src/components/Games/AutoSuggest/AutoSuggest.jsx +++ b/src/components/Games/AutoSuggest/AutoSuggest.jsx @@ -61,7 +61,8 @@ const AutoSuggest = props => { {...getMenuProps({ className: classNames('absolute w-full top-full z-50', { hidden: !isOpen, - 'flex flex-col border border-gray-850 border-t-0 text-white bg-gray-1000': isOpen, + 'flex flex-col border border-gray-850 border-t-0 text-white bg-gray-1100': + isOpen, }), })} > diff --git a/src/components/Games/Filters/ReleasesFilter.jsx b/src/components/Games/Filters/ReleasesFilter.jsx index d58af59..e887384 100644 --- a/src/components/Games/Filters/ReleasesFilter.jsx +++ b/src/components/Games/Filters/ReleasesFilter.jsx @@ -183,7 +183,7 @@ const ReleasesFilter = ({data, filterName}) => {
      = values[0] && numberKey <= values[1] ? 'bg-gray-200 hover:bg-red-600' : 'bg-gray-700 hover:bg-gray-500' diff --git a/src/pages/index.jsx b/src/pages/index.jsx index 21e56cd..6dc3f1b 100644 --- a/src/pages/index.jsx +++ b/src/pages/index.jsx @@ -63,11 +63,24 @@ const GamesListing = () => { return ( <> -
      - {t('games.title_1')} - - {t('games.title_2')} - +
      + {/**/} +
      + +
      +
      + + {t('games.title_1')} + + + {t('games.title_2')} + +
      diff --git a/src/styles/_custom-base.css b/src/styles/_custom-base.css index 76b6f74..c7a86dc 100644 --- a/src/styles/_custom-base.css +++ b/src/styles/_custom-base.css @@ -26,8 +26,4 @@ font-display: swap; font-weight: 300; } - - body { - @apply bg-gray-1000; - } } diff --git a/src/styles/_custom-components.css b/src/styles/_custom-components.css index 3e61abc..3ffe1f8 100644 --- a/src/styles/_custom-components.css +++ b/src/styles/_custom-components.css @@ -16,7 +16,7 @@ &.open:before { content: ''; - @apply block absolute bg-gray-1000 border-l border-r border-gray-850 w-full; + @apply block absolute bg-gray-1100 border-l border-r border-gray-850 w-full; top: 100%; left: -1px; box-sizing: content-box; @@ -49,7 +49,7 @@ } &::-webkit-scrollbar-thumb { - @apply bg-gray-850 border-l-8 border-gray-1000; + @apply bg-gray-850 border-l-8 border-gray-1100; } } diff --git a/src/styles/_layout.css b/src/styles/_layout.css index f1726cb..a68560f 100644 --- a/src/styles/_layout.css +++ b/src/styles/_layout.css @@ -1,5 +1,5 @@ body { - @apply bg-black; + @apply bg-gray-1000; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } @@ -23,3 +23,14 @@ body { grid-template: 'title search menu' auto / auto 1fr auto; } } + +.shadows-tb { + &:after { + content: ''; + @apply block h-12 bg-gradient-to-t from-gray-1000 absolute inset-x-0 bottom-0; + } + &:before { + content: ''; + @apply block h-12 bg-gradient-to-b from-gray-1000 absolute inset-x-0 top-0; + } +} diff --git a/src/styles/_tippy.css b/src/styles/_tippy.css index ca1a749..4f3d9b6 100644 --- a/src/styles/_tippy.css +++ b/src/styles/_tippy.css @@ -3,7 +3,7 @@ } .tippy-box { - @apply outline-none leading-snug text-sm rounded text-white bg-black relative shadow-lg; + @apply outline-none leading-snug text-sm rounded text-white bg-gray-1100 relative shadow-lg; transition-property: transform, visibility, opacity; &[data-animation='fade'][data-state='hidden'] { @@ -64,12 +64,12 @@ /* THEME LIGHT */ &[data-theme='light'] { - @apply text-black bg-white; + @apply text-gray-1100 bg-white; } } .tippy-arrow { - @apply w-4 h-4 text-black; + @apply w-4 h-4 text-gray-1100; &:before { content: ''; diff --git a/tailwind.config.js b/tailwind.config.js index b7777ef..b33db89 100644 --- a/tailwind.config.js +++ b/tailwind.config.js @@ -3,10 +3,7 @@ const flattenColorPalette = module.exports = { purge: { - content: [ - './src/components/**/*.{js,ts,jsx,tsx}', - './src/pages/**/*.{js,ts,jsx,tsx}', - ], + content: ['./src/**/*.{js,ts,jsx,tsx}'], options: { whitelist: ['text-red-500', 'text-green-500', 'text-purple-500'], }, @@ -49,19 +46,6 @@ module.exports = { lg: '1024px', xl: '1400px', }, - // forms: theme => ({ - // default: { - // select: { - // backgroundColor: theme('colors.gray.900'), - // borderWidth: 0, - // '&:hover': { - // backgroundColor: theme('colors.gray.850'), - // }, - // icon: - // '', - // }, - // }, - // }), extend: { spacing: { 1: '0.3125rem', @@ -88,6 +72,7 @@ module.exports = { 900: '#282828', 950: '#1d1d1d', 1000: '#121212', + 1100: '#111', }, pink: { 50: '#fef2f7', From 9a0cc596c6b7e25f81a5498705ef9612f54ac43f Mon Sep 17 00:00:00 2001 From: Toni Fisler Date: Mon, 14 Mar 2022 23:50:20 +0100 Subject: [PATCH 06/14] fix game teasers and btn label, closes #64 --- src/components/Dropdown/Dropdown.jsx | 2 +- src/components/Game/Teaser/GameTeaser.jsx | 6 ++---- src/components/Header/Header.jsx | 9 ++++++-- src/components/Image.jsx | 1 + src/locales/en.json | 2 +- src/pages/about.jsx | 2 +- src/pages/add.jsx | 2 +- src/pages/contact.jsx | 2 +- src/pages/donation.jsx | 2 +- src/pages/index.jsx | 2 +- src/styles/_button.css | 2 +- src/styles/_layout.css | 25 ++++++++++++++--------- 12 files changed, 33 insertions(+), 24 deletions(-) diff --git a/src/components/Dropdown/Dropdown.jsx b/src/components/Dropdown/Dropdown.jsx index 796ccde..894ad0c 100644 --- a/src/components/Dropdown/Dropdown.jsx +++ b/src/components/Dropdown/Dropdown.jsx @@ -38,7 +38,7 @@ const Dropdown = ({ const wrapperClasses = classNames('relative', className, { 'border-gradient border-gradient-full': !isComponentVisible && isSelected, - 'z-20': isComponentVisible, + 'z-50': isComponentVisible, }); const btnClasses = classNames( diff --git a/src/components/Game/Teaser/GameTeaser.jsx b/src/components/Game/Teaser/GameTeaser.jsx index 5e39aed..716b496 100644 --- a/src/components/Game/Teaser/GameTeaser.jsx +++ b/src/components/Game/Teaser/GameTeaser.jsx @@ -20,16 +20,14 @@ const GameTeaser = ({game}) => { const teaserPicture = medias.length > 0 && medias[0]; return ( -
      +
      {title}
      diff --git a/src/components/Header/Header.jsx b/src/components/Header/Header.jsx index 8a2838c..19e954a 100644 --- a/src/components/Header/Header.jsx +++ b/src/components/Header/Header.jsx @@ -57,9 +57,14 @@ const Header = () => { ))} +
      + diff --git a/src/components/Image.jsx b/src/components/Image.jsx index 143aee2..a5e49ee 100644 --- a/src/components/Image.jsx +++ b/src/components/Image.jsx @@ -97,6 +97,7 @@ const Image = ({ loading="lazy" style={style} onLoad={() => setLoaded(true)} + className="w-full" />
      diff --git a/src/locales/en.json b/src/locales/en.json index 7248d2c..a4c22f0 100644 --- a/src/locales/en.json +++ b/src/locales/en.json @@ -194,7 +194,7 @@ "gos": { "copyright": "Copyright © {{year}}", "contact_us": "Contact us", - "add_game": "Add a game" + "add_game": "Suggest a game" }, "pages": { "about": "About", diff --git a/src/pages/about.jsx b/src/pages/about.jsx index 6a2c568..188c8d8 100644 --- a/src/pages/about.jsx +++ b/src/pages/about.jsx @@ -19,7 +19,7 @@ const About = () => { return ( <> -
      +
      {t('about.title_1')} {t('about.title_2')}
      diff --git a/src/pages/add.jsx b/src/pages/add.jsx index 938a8e4..a8f3d07 100644 --- a/src/pages/add.jsx +++ b/src/pages/add.jsx @@ -6,7 +6,7 @@ const Add = () => { const {t} = useTranslation(); return ( <> -
      +
      {t('add.title_1')} {t('add.title_2')}
      diff --git a/src/pages/contact.jsx b/src/pages/contact.jsx index 1f67a10..5fa8365 100644 --- a/src/pages/contact.jsx +++ b/src/pages/contact.jsx @@ -6,7 +6,7 @@ const Contact = () => { const {t} = useTranslation(); return ( <> -
      +
      {t('contact.title_1')} diff --git a/src/pages/donation.jsx b/src/pages/donation.jsx index 71f104d..6770960 100644 --- a/src/pages/donation.jsx +++ b/src/pages/donation.jsx @@ -16,7 +16,7 @@ const Donation = () => { return ( <> -
      +
      {t('donation.title_1')} diff --git a/src/pages/index.jsx b/src/pages/index.jsx index 6dc3f1b..0a476ed 100644 --- a/src/pages/index.jsx +++ b/src/pages/index.jsx @@ -73,7 +73,7 @@ const GamesListing = () => { // style={{width: 'calc(100% + 0.9375rem * 2)'}} />
      -
      +
      {t('games.title_1')} diff --git a/src/styles/_button.css b/src/styles/_button.css index f8d5b04..a034024 100644 --- a/src/styles/_button.css +++ b/src/styles/_button.css @@ -1,5 +1,5 @@ .btn { - @apply py-2 px-5 leading-none tracking-wider whitespace-nowrap text-sm uppercase font-medium transition duration-300 whitespace-nowrap text-center; + @apply py-2 px-5 leading-none tracking-wider truncate text-sm uppercase font-medium transition duration-300 text-center; &:disabled { @apply cursor-default bg-opacity-50 text-opacity-50; diff --git a/src/styles/_layout.css b/src/styles/_layout.css index a68560f..8c10a27 100644 --- a/src/styles/_layout.css +++ b/src/styles/_layout.css @@ -5,22 +5,27 @@ body { } .header { - @apply grid gap-6; + @apply grid gap-4; grid-template: - 'title' auto - 'search' auto - 'menu' auto - / auto; + 'title cta' auto + 'menu menu' auto + 'search search' auto + / auto auto; - @screen xs { + @screen sm { grid-template: - 'title menu' auto - 'search search' auto - / auto 1fr; + 'title menu cta' auto + 'search search search' auto + / auto 1fr auto; } @screen md { - grid-template: 'title search menu' auto / auto 1fr auto; + @apply gap-6; + } + + @screen lg { + @apply gap-6; + grid-template: 'title search menu cta' auto / auto 1fr auto; } } From 9ba930356ab6d654884c7bbda7f122012530fd18 Mon Sep 17 00:00:00 2001 From: Toni Fisler Date: Tue, 15 Mar 2022 00:07:13 +0100 Subject: [PATCH 07/14] setup games empty state, closes #28 --- src/locales/en.json | 3 ++- src/pages/index.jsx | 11 +++++++++-- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/src/locales/en.json b/src/locales/en.json index a4c22f0..c7adf4f 100644 --- a/src/locales/en.json +++ b/src/locales/en.json @@ -183,7 +183,8 @@ "load_more": "Load more", "loading_more": "Loading more...", "load_more_end": "Nothing more to load", - "no_games": "No games to show.", + "no_games_title": "Oops!", + "no_games": "Looks like there aren't any games matching your search.", "pager": "{{end}} of {{total}}", "results": "{{count}} game", "results_plural": "{{count}} games", diff --git a/src/pages/index.jsx b/src/pages/index.jsx index 0a476ed..28db130 100644 --- a/src/pages/index.jsx +++ b/src/pages/index.jsx @@ -6,6 +6,7 @@ import GamesFilters from 'components/Games/Filters'; import Loading from 'components/Loading'; import {LoadingSVG} from 'components/Loading/Loading'; import {useTranslation} from 'react-i18next'; +import GhostIcon from 'svg/ghost.svg'; const PAGE_SIZE = 24; @@ -26,7 +27,7 @@ const GamesListing = () => { const {pages = [], facets = {}, total} = data; const renderGames = () => - pages.length > 0 ? ( + total > 0 ? ( <>
      {pages.map(page => @@ -58,7 +59,13 @@ const GamesListing = () => {
      ) : ( -

      {t('games.no_games')}

      +
      + +
      +

      {t('games.no_games_title')}

      +

      {t('games.no_games')}

      +
      +
      ); return ( From 007ceb6fea23ae1410e625de93131e1f01fc6437 Mon Sep 17 00:00:00 2001 From: Kevin Wenger Date: Tue, 15 Mar 2022 09:37:03 +0100 Subject: [PATCH 08/14] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 7cbd905..5ac5a9a 100644 --- a/README.md +++ b/README.md @@ -111,5 +111,5 @@ bundle exec cap staging deploy Contributions, issues and feature requests are welcome! -Feel free to check [issues page](https://github.com/Games-of-Switzerland/gos-website/issues). +Feel free to check [issues page](https://github.com/Games-of-Switzerland/swissgamesgarden/issues). From 1386daa3ded680e4053fec48bde1f76c638e6c32 Mon Sep 17 00:00:00 2001 From: Kevin Wenger Date: Tue, 15 Mar 2022 09:41:53 +0100 Subject: [PATCH 09/14] add License --- LICENSE | 339 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 339 insertions(+) create mode 100644 LICENSE diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..23cb790 --- /dev/null +++ b/LICENSE @@ -0,0 +1,339 @@ + GNU GENERAL PUBLIC LICENSE + Version 2, June 1991 + + Copyright (C) 1989, 1991 Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +License is intended to guarantee your freedom to share and change free +software--to make sure the software is free for all its users. This +General Public License applies to most of the Free Software +Foundation's software and to any other program whose authors commit to +using it. (Some other Free Software Foundation software is covered by +the GNU Lesser General Public License instead.) You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +this service if you wish), that you receive source code or can get it +if you want it, that you can change the software or use pieces of it +in new free programs; and that you know you can do these things. + + To protect your rights, we need to make restrictions that forbid +anyone to deny you these rights or to ask you to surrender the rights. +These restrictions translate to certain responsibilities for you if you +distribute copies of the software, or if you modify it. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must give the recipients all the rights that +you have. You must make sure that they, too, receive or can get the +source code. And you must show them these terms so they know their +rights. + + We protect your rights with two steps: (1) copyright the software, and +(2) offer you this license which gives you legal permission to copy, +distribute and/or modify the software. + + Also, for each author's protection and ours, we want to make certain +that everyone understands that there is no warranty for this free +software. If the software is modified by someone else and passed on, we +want its recipients to know that what they have is not the original, so +that any problems introduced by others will not reflect on the original +authors' reputations. + + Finally, any free program is threatened constantly by software +patents. We wish to avoid the danger that redistributors of a free +program will individually obtain patent licenses, in effect making the +program proprietary. To prevent this, we have made it clear that any +patent must be licensed for everyone's free use or not licensed at all. + + The precise terms and conditions for copying, distribution and +modification follow. + + GNU GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. This License applies to any program or other work which contains +a notice placed by the copyright holder saying it may be distributed +under the terms of this General Public License. The "Program", below, +refers to any such program or work, and a "work based on the Program" +means either the Program or any derivative work under copyright law: +that is to say, a work containing the Program or a portion of it, +either verbatim or with modifications and/or translated into another +language. (Hereinafter, translation is included without limitation in +the term "modification".) Each licensee is addressed as "you". + +Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running the Program is not restricted, and the output from the Program +is covered only if its contents constitute a work based on the +Program (independent of having been made by running the Program). +Whether that is true depends on what the Program does. + + 1. You may copy and distribute verbatim copies of the Program's +source code as you receive it, in any medium, provided that you +conspicuously and appropriately publish on each copy an appropriate +copyright notice and disclaimer of warranty; keep intact all the +notices that refer to this License and to the absence of any warranty; +and give any other recipients of the Program a copy of this License +along with the Program. + +You may charge a fee for the physical act of transferring a copy, and +you may at your option offer warranty protection in exchange for a fee. + + 2. You may modify your copy or copies of the Program or any portion +of it, thus forming a work based on the Program, and copy and +distribute such modifications or work under the terms of Section 1 +above, provided that you also meet all of these conditions: + + a) You must cause the modified files to carry prominent notices + stating that you changed the files and the date of any change. + + b) You must cause any work that you distribute or publish, that in + whole or in part contains or is derived from the Program or any + part thereof, to be licensed as a whole at no charge to all third + parties under the terms of this License. + + c) If the modified program normally reads commands interactively + when run, you must cause it, when started running for such + interactive use in the most ordinary way, to print or display an + announcement including an appropriate copyright notice and a + notice that there is no warranty (or else, saying that you provide + a warranty) and that users may redistribute the program under + these conditions, and telling the user how to view a copy of this + License. (Exception: if the Program itself is interactive but + does not normally print such an announcement, your work based on + the Program is not required to print an announcement.) + +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Program, +and can be reasonably considered independent and separate works in +themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you +distribute the same sections as part of a whole which is a work based +on the Program, the distribution of the whole must be on the terms of +this License, whose permissions for other licensees extend to the +entire whole, and thus to each and every part regardless of who wrote it. + +Thus, it is not the intent of this section to claim rights or contest +your rights to work written entirely by you; rather, the intent is to +exercise the right to control the distribution of derivative or +collective works based on the Program. + +In addition, mere aggregation of another work not based on the Program +with the Program (or with a work based on the Program) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. + + 3. You may copy and distribute the Program (or a work based on it, +under Section 2) in object code or executable form under the terms of +Sections 1 and 2 above provided that you also do one of the following: + + a) Accompany it with the complete corresponding machine-readable + source code, which must be distributed under the terms of Sections + 1 and 2 above on a medium customarily used for software interchange; or, + + b) Accompany it with a written offer, valid for at least three + years, to give any third party, for a charge no more than your + cost of physically performing source distribution, a complete + machine-readable copy of the corresponding source code, to be + distributed under the terms of Sections 1 and 2 above on a medium + customarily used for software interchange; or, + + c) Accompany it with the information you received as to the offer + to distribute corresponding source code. (This alternative is + allowed only for noncommercial distribution and only if you + received the program in object code or executable form with such + an offer, in accord with Subsection b above.) + +The source code for a work means the preferred form of the work for +making modifications to it. For an executable work, complete source +code means all the source code for all modules it contains, plus any +associated interface definition files, plus the scripts used to +control compilation and installation of the executable. However, as a +special exception, the source code distributed need not include +anything that is normally distributed (in either source or binary +form) with the major components (compiler, kernel, and so on) of the +operating system on which the executable runs, unless that component +itself accompanies the executable. + +If distribution of executable or object code is made by offering +access to copy from a designated place, then offering equivalent +access to copy the source code from the same place counts as +distribution of the source code, even though third parties are not +compelled to copy the source along with the object code. + + 4. You may not copy, modify, sublicense, or distribute the Program +except as expressly provided under this License. Any attempt +otherwise to copy, modify, sublicense or distribute the Program is +void, and will automatically terminate your rights under this License. +However, parties who have received copies, or rights, from you under +this License will not have their licenses terminated so long as such +parties remain in full compliance. + + 5. You are not required to accept this License, since you have not +signed it. However, nothing else grants you permission to modify or +distribute the Program or its derivative works. These actions are +prohibited by law if you do not accept this License. Therefore, by +modifying or distributing the Program (or any work based on the +Program), you indicate your acceptance of this License to do so, and +all its terms and conditions for copying, distributing or modifying +the Program or works based on it. + + 6. Each time you redistribute the Program (or any work based on the +Program), the recipient automatically receives a license from the +original licensor to copy, distribute or modify the Program subject to +these terms and conditions. You may not impose any further +restrictions on the recipients' exercise of the rights granted herein. +You are not responsible for enforcing compliance by third parties to +this License. + + 7. If, as a consequence of a court judgment or allegation of patent +infringement or for any other reason (not limited to patent issues), +conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot +distribute so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you +may not distribute the Program at all. For example, if a patent +license would not permit royalty-free redistribution of the Program by +all those who receive copies directly or indirectly through you, then +the only way you could satisfy both it and this License would be to +refrain entirely from distribution of the Program. + +If any portion of this section is held invalid or unenforceable under +any particular circumstance, the balance of the section is intended to +apply and the section as a whole is intended to apply in other +circumstances. + +It is not the purpose of this section to induce you to infringe any +patents or other property right claims or to contest validity of any +such claims; this section has the sole purpose of protecting the +integrity of the free software distribution system, which is +implemented by public license practices. Many people have made +generous contributions to the wide range of software distributed +through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing +to distribute software through any other system and a licensee cannot +impose that choice. + +This section is intended to make thoroughly clear what is believed to +be a consequence of the rest of this License. + + 8. If the distribution and/or use of the Program is restricted in +certain countries either by patents or by copyrighted interfaces, the +original copyright holder who places the Program under this License +may add an explicit geographical distribution limitation excluding +those countries, so that distribution is permitted only in or among +countries not thus excluded. In such case, this License incorporates +the limitation as if written in the body of this License. + + 9. The Free Software Foundation may publish revised and/or new versions +of the General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + +Each version is given a distinguishing version number. If the Program +specifies a version number of this License which applies to it and "any +later version", you have the option of following the terms and conditions +either of that version or of any later version published by the Free +Software Foundation. If the Program does not specify a version number of +this License, you may choose any version ever published by the Free Software +Foundation. + + 10. If you wish to incorporate parts of the Program into other free +programs whose distribution conditions are different, write to the author +to ask for permission. For software which is copyrighted by the Free +Software Foundation, write to the Free Software Foundation; we sometimes +make exceptions for this. Our decision will be guided by the two goals +of preserving the free status of all derivatives of our free software and +of promoting the sharing and reuse of software generally. + + NO WARRANTY + + 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY +FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN +OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES +PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED +OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS +TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE +PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, +REPAIR OR CORRECTION. + + 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR +REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, +INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING +OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED +TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY +YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER +PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE +POSSIBILITY OF SUCH DAMAGES. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +convey the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + {description} + Copyright (C) {year} {fullname} + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along + with this program; if not, write to the Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +Also add information on how to contact you by electronic and paper mail. + +If the program is interactive, make it output a short notice like this +when it starts in an interactive mode: + + Gnomovision version 69, Copyright (C) year name of author + Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. + This is free software, and you are welcome to redistribute it + under certain conditions; type `show c' for details. + +The hypothetical commands `show w' and `show c' should show the appropriate +parts of the General Public License. Of course, the commands you use may +be called something other than `show w' and `show c'; they could even be +mouse-clicks or menu items--whatever suits your program. + +You should also get your employer (if you work as a programmer) or your +school, if any, to sign a "copyright disclaimer" for the program, if +necessary. Here is a sample; alter the names: + + Yoyodyne, Inc., hereby disclaims all copyright interest in the program + `Gnomovision' (which makes passes at compilers) written by James Hacker. + + {signature of Ty Coon}, 1 April 1989 + Ty Coon, President of Vice + +This General Public License does not permit incorporating your program into +proprietary programs. If your program is a subroutine library, you may +consider it more useful to permit linking proprietary applications with the +library. If this is what you want to do, use the GNU Lesser General +Public License instead of this License. From 3b9b16fcad67afa1c7080888ed7b359f778aca91 Mon Sep 17 00:00:00 2001 From: Kevin Wenger Date: Thu, 8 Sep 2022 12:14:10 +0200 Subject: [PATCH 10/14] update host name of staging --- docker/setup_hosts.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docker/setup_hosts.sh b/docker/setup_hosts.sh index c02d6dd..936aa3c 100755 --- a/docker/setup_hosts.sh +++ b/docker/setup_hosts.sh @@ -15,9 +15,9 @@ while [ $# -gt 0 ]; do shift done -host gos_staging_app_1 | awk '/has address/ { print $4 " staging-api-gos.museebolo.ch" }' >> /etc/hosts +host gos_staging_app-1 | awk '/has address/ { print $4 " staging-api-gos.museebolo.ch" }' >> /etc/hosts host gos_production_app_1 | awk '/has address/ { print $4 " api-gos.museebolo.ch" }' >> /etc/hosts -host gos_staging_app_1 | awk '/has address/ { print $4 " staging-api.swissgames.garden" }' >> /etc/hosts +host gos_staging_app-1 | awk '/has address/ { print $4 " staging-api.swissgames.garden" }' >> /etc/hosts host gos_production_app_1 | awk '/has address/ { print $4 " api.swissgames.garden" }' >> /etc/hosts cat /etc/hosts From b79629f9a055138e552c7857dca292626a01a3ab Mon Sep 17 00:00:00 2001 From: Kevin Wenger Date: Thu, 8 Sep 2022 12:14:10 +0200 Subject: [PATCH 11/14] update host name of staging --- docker/setup_hosts.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docker/setup_hosts.sh b/docker/setup_hosts.sh index c02d6dd..dc2141d 100755 --- a/docker/setup_hosts.sh +++ b/docker/setup_hosts.sh @@ -15,9 +15,9 @@ while [ $# -gt 0 ]; do shift done -host gos_staging_app_1 | awk '/has address/ { print $4 " staging-api-gos.museebolo.ch" }' >> /etc/hosts +host gos_staging-app-1 | awk '/has address/ { print $4 " staging-api-gos.museebolo.ch" }' >> /etc/hosts host gos_production_app_1 | awk '/has address/ { print $4 " api-gos.museebolo.ch" }' >> /etc/hosts -host gos_staging_app_1 | awk '/has address/ { print $4 " staging-api.swissgames.garden" }' >> /etc/hosts +host gos_staging-app-1 | awk '/has address/ { print $4 " staging-api.swissgames.garden" }' >> /etc/hosts host gos_production_app_1 | awk '/has address/ { print $4 " api.swissgames.garden" }' >> /etc/hosts cat /etc/hosts From d98216a2313498cbc9d80a7da63a251c530eb8ab Mon Sep 17 00:00:00 2001 From: Kevin Wenger Date: Thu, 8 Sep 2022 13:36:20 +0200 Subject: [PATCH 12/14] add && fix hosts hack --- docker/setup_hosts.sh | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/docker/setup_hosts.sh b/docker/setup_hosts.sh index dc2141d..e7e2eee 100755 --- a/docker/setup_hosts.sh +++ b/docker/setup_hosts.sh @@ -15,10 +15,16 @@ while [ $# -gt 0 ]; do shift done +# The following "hack" prevent the docker container to go "outside" when reaching the Drupal APIs. +# Ineed, on the Bolo Server the host machine can't reach the internet. +host gos_staging_app_1 | awk '/has address/ { print $4 " staging-api-gos.museebolo.ch" }' >> /etc/hosts host gos_staging-app-1 | awk '/has address/ { print $4 " staging-api-gos.museebolo.ch" }' >> /etc/hosts host gos_production_app_1 | awk '/has address/ { print $4 " api-gos.museebolo.ch" }' >> /etc/hosts +host gos_production-app-1 | awk '/has address/ { print $4 " api-gos.museebolo.ch" }' >> /etc/hosts +host gos_staging_app_1 | awk '/has address/ { print $4 " staging-api.swissgames.garden" }' >> /etc/hosts host gos_staging-app-1 | awk '/has address/ { print $4 " staging-api.swissgames.garden" }' >> /etc/hosts host gos_production_app_1 | awk '/has address/ { print $4 " api.swissgames.garden" }' >> /etc/hosts +host gos_production-app-1 | awk '/has address/ { print $4 " api.swissgames.garden" }' >> /etc/hosts cat /etc/hosts From a6ac31b7cb5a4776bcb3fddce5f9ef87ff2348ff Mon Sep 17 00:00:00 2001 From: Kevin Wenger Date: Thu, 8 Sep 2022 14:47:06 +0200 Subject: [PATCH 13/14] update changelog following 'keep a changelog' --- .chanrc | 3 +++ CHANGELOG.md | 12 ++++++++++++ 2 files changed, 15 insertions(+) create mode 100644 .chanrc create mode 100644 CHANGELOG.md diff --git a/.chanrc b/.chanrc new file mode 100644 index 0000000..bf32955 --- /dev/null +++ b/.chanrc @@ -0,0 +1,3 @@ +{ + "release-prefix": "" +} diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000..af4e6d9 --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,12 @@ +# Changelog +All notable changes to this project will be documented in this file. + +The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), +and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). + +## [Unreleased] +### Changed +- update the hosts strategy to be compliante with new Docker container naming architecture + +### Added +- update changelog following 'keep a changelog' From 1b1ab7c989fa499b289f57515854d369f2bd1f2e Mon Sep 17 00:00:00 2001 From: Kevin Wenger Date: Thu, 8 Sep 2022 14:49:46 +0200 Subject: [PATCH 14/14] bump version & changelog --- CHANGELOG.md | 5 +++++ VERSION | 1 + 2 files changed, 6 insertions(+) create mode 100644 VERSION diff --git a/CHANGELOG.md b/CHANGELOG.md index af4e6d9..739ed43 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,8 +5,13 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). ## [Unreleased] + +## [0.1.0] - 2022-09-08 ### Changed - update the hosts strategy to be compliante with new Docker container naming architecture ### Added - update changelog following 'keep a changelog' + +[Unreleased]: https://github.com/Games-of-Switzerland/gos-website/compare/0.1.0...HEAD +[0.1.0]: https://github.com/Games-of-Switzerland/gos-website/releases/tag/0.1.0 diff --git a/VERSION b/VERSION new file mode 100644 index 0000000..6e8bf73 --- /dev/null +++ b/VERSION @@ -0,0 +1 @@ +0.1.0

Do-O8mgcW*zH1eL90d?^ewyZcM-QpU6%7m zg6Gn8|F^NwlE>I~WmtL;{;G2o8j>Kb1=IdFx`8eJ3Orv}ns);a+=2(}E38<}-NO z|7D|JKX3)wrsw^K{a!_;{~z`{b4&AElsd_nCCkR4@QO`u4kMPObQtzvJ^OukqQc5o z<%H$UlZ$7Ko&_KK#E1q8q_;C#()1EB{)c_nKmIZvy=^Me>eMZg+cSry-mB}QR?;Hz zF&5W%>BSls#yb1uW~2Z0fQJ8#kcx=+BX@*!$6t~d$G76JAtz7V z6b;<0%-!BgS-QN(COFT8pFI;078MW?(-V=D62+dPe8R#~!ot*qbYlMxz~0fy=7ZP& zA7J_JX9O1T=ChuGo36Pho0E&<2OGQhY;Imo@7Zje+$^zCG}#*`qz{~5^Y9F64GpVo z>f+qvAQ7}Aq2ZuWOQO9;!=?}*)@5~%G{s-ymhxY&g literal 0 HcmV?d00001 diff --git a/public/site.webmanifest b/public/site.webmanifest new file mode 100644 index 0000000..6d6a263 --- /dev/null +++ b/public/site.webmanifest @@ -0,0 +1,19 @@ +{ + "name": "Swiss Games Garden", + "short_name": "swissgamesgarden", + "icons": [ + { + "src": "/android-chrome-192x192.png", + "sizes": "192x192", + "type": "image/png" + }, + { + "src": "/android-chrome-512x512.png", + "sizes": "512x512", + "type": "image/png" + } + ], + "theme_color": "#000", + "background_color": "#000", + "display": "standalone" +} diff --git a/src/pages/index.jsx b/src/pages/index.jsx index 8bb061c..21e56cd 100644 --- a/src/pages/index.jsx +++ b/src/pages/index.jsx @@ -1,17 +1,16 @@ -import {GameTeaser} from 'components/Game'; -import {useTranslation} from 'react-i18next'; import {prefetchGames, useGames} from 'api/games'; -import Loading from 'components/Loading'; import Error from 'components/Error'; -import GamesFilters from 'components/Games/Filters'; +import {GameTeaser} from 'components/Game'; import {FilterContextProvider} from 'components/Games/context'; +import GamesFilters from 'components/Games/Filters'; +import Loading from 'components/Loading'; import {LoadingSVG} from 'components/Loading/Loading'; +import {useTranslation} from 'react-i18next'; const PAGE_SIZE = 24; const GamesListing = () => { const {t} = useTranslation(); - const query = useGames(); const { data = {}, fetchNextPage, @@ -22,8 +21,7 @@ const GamesListing = () => { error, isFetchingNextPage, hasNextPage, - } = query - console.log(query); + } = useGames(); const {pages = [], facets = {}, total} = data; From 12ed3df553dff9754360205bf12c755a80cc11c3 Mon Sep 17 00:00:00 2001 From: Toni Fisler Date: Mon, 14 Mar 2022 21:17:48 +0100 Subject: [PATCH 02/14] add mail body for game suggestion #89 --- src/locales/en.json | 4 +++- src/pages/add.jsx | 7 ++++++- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/src/locales/en.json b/src/locales/en.json index 8914e63..b405f56 100644 --- a/src/locales/en.json +++ b/src/locales/en.json @@ -349,7 +349,9 @@ "add": { "title_1": "Plant", "title_2": "your seed", - "description_markdown": "Take a place in the Swiss game community and help it grow!\n\nWhether you spot incorrect data, think about a missing game, or are currently working on one, feel free to suggest a new entry or an update! All rays of sunshine are welcomed.\n\n Your data will be reviewed by our team and then published on the website. " + "description_markdown": "Take a place in the Swiss game community and help it grow!\n\nWhether you spot incorrect data, think about a missing game, or are currently working on one, feel free to suggest a new entry or an update! All rays of sunshine are welcomed.\n\n Your data will be reviewed by our team and then published on the website. ", + "mail_subject": "New game suggestion", + "mail_body":"Dear gamer,\nThank you for your participation!\n\nBelow is the information needed to add a new game entry.\nIt doesn't matter if you don't have all the data, we will be very happy with what you managed to send us!\n\nGeneral\nTitle:\nSummary:\nImage URL or add an attached file:\n\nReleases\nPublisher(s):\nRelease 1\nRelease 1 date:\nRelease 1 platform:\nRelease 1 state:\n(You can add several release dates)\n\nAuthors\nMembers\nPerson 1\nRole person 1\n(You can add several team members)\n\nStudio(s)\nStudio 1 name:\n(You can add several studios)\n\nDetailed info about the game\nNumber of players\nMinimum number of players:\nMaximum number of players:\n\nStore(s)\nStore 1:\nLink to the game in the store 1:\n(You can add several stores)\n\nLocation(s)\nWhere the game's team was working:\n(You can add several locations)\n\nLanguage(s)\nGame's available language 1:\n(You can add several languages)\n\nGenre(s)\nGame's genre 1:\n(You can add several genres)\n\nSponsor(s)\nGame's sponsor 1:\n(You can add several sponsors)\n\nReferences\nGame's website:\nArticles about the game:\nGame's sources:\nGame's awards:\nGame's social networks link:\nOther links about the game:\nGame's credit:\n\nOther\nAny comment or other information you would like to share:\n\n\n\n ----" }, "error": { "message": "Oops! An error occurred. Try reloading!", diff --git a/src/pages/add.jsx b/src/pages/add.jsx index 2df6b83..938a8e4 100644 --- a/src/pages/add.jsx +++ b/src/pages/add.jsx @@ -17,7 +17,12 @@ const Add = () => { {t('add.description_markdown')} - + {t('contact.send_mail')} From 42ae021c027e89ae32df47917650430d7068ab0a Mon Sep 17 00:00:00 2001 From: Toni Fisler Date: Mon, 14 Mar 2022 21:35:29 +0100 Subject: [PATCH 03/14] setup 404 page, closes #87 --- src/locales/en.json | 3 ++- src/pages/404.jsx | 16 ++++++++++++++++ src/svg/ghost.svg | 18 ++++++++++++++++++ 3 files changed, 36 insertions(+), 1 deletion(-) create mode 100644 src/pages/404.jsx create mode 100644 src/svg/ghost.svg diff --git a/src/locales/en.json b/src/locales/en.json index b405f56..0d690fe 100644 --- a/src/locales/en.json +++ b/src/locales/en.json @@ -355,7 +355,8 @@ }, "error": { "message": "Oops! An error occurred. Try reloading!", - "with_message": "An error occured: {{message}}" + "with_message": "An error occured: {{message}}", + "404": "404 - Page Not Found" }, "save": "Save", "reset_filters": "Reset all filters " diff --git a/src/pages/404.jsx b/src/pages/404.jsx new file mode 100644 index 0000000..c71818e --- /dev/null +++ b/src/pages/404.jsx @@ -0,0 +1,16 @@ +import {useTranslation} from 'react-i18next'; +import GhostIcon from 'svg/ghost.svg'; + +const NoMatch = () => { + const {t} = useTranslation(); + return ( +