From 870fe89a80ca031782629a60aff3ccfbe134797c Mon Sep 17 00:00:00 2001 From: ogerly Date: Thu, 22 Sep 2022 19:49:24 +0200 Subject: [PATCH 01/12] refactor rebranding --- branding/assets/styles/import/_branding.scss | 5 +++++ branding/constants/headerMenu.js | 12 ++++++++++++ branding/constants/logos.js | 1 + docker-compose.ocelotsocial-branded.yml | 4 ++++ docker-compose.yml | 4 ++++ docker/webapp.Dockerfile | 2 ++ 6 files changed, 28 insertions(+) create mode 100644 branding/assets/styles/import/_branding.scss create mode 100644 branding/constants/headerMenu.js diff --git a/branding/assets/styles/import/_branding.scss b/branding/assets/styles/import/_branding.scss new file mode 100644 index 0000000..7505859 --- /dev/null +++ b/branding/assets/styles/import/_branding.scss @@ -0,0 +1,5 @@ +/* + * + * Here, all SCSS variables and classes can be adapted to your custom design. + * +*/ \ No newline at end of file diff --git a/branding/constants/headerMenu.js b/branding/constants/headerMenu.js new file mode 100644 index 0000000..33cba8d --- /dev/null +++ b/branding/constants/headerMenu.js @@ -0,0 +1,12 @@ +export default { + MENU: [ + // { + // name: 'Beiträge', + // path: '/#', + // }, + // { + // name: 'Über Yunite', + // url: 'https://yunite.org', + // }, + ], +} diff --git a/branding/constants/logos.js b/branding/constants/logos.js index d093c7b..2bea199 100644 --- a/branding/constants/logos.js +++ b/branding/constants/logos.js @@ -2,6 +2,7 @@ // this are the paths in the webapp export default { LOGO_HEADER_PATH: '/img/custom/logo-horizontal.svg', + LOGO_HEADER_WIDTH: '130px', LOGO_SIGNUP_PATH: '/img/custom/logo-squared.svg', LOGO_WELCOME_PATH: '/img/custom/logo-squared.svg', LOGO_LOGOUT_PATH: '/img/custom/logo-squared.svg', diff --git a/docker-compose.ocelotsocial-branded.yml b/docker-compose.ocelotsocial-branded.yml index b8c3ce4..0c42d62 100644 --- a/docker-compose.ocelotsocial-branded.yml +++ b/docker-compose.ocelotsocial-branded.yml @@ -21,6 +21,8 @@ services: - MAPBOX_TOKEN="pk.eyJ1IjoiYnVzZmFrdG9yIiwiYSI6ImNraDNiM3JxcDBhaWQydG1uczhpZWtpOW4ifQ.7TNRTO-o9aK1Y6MyW_Nd4g" # - WEBSOCKETS_URI=ws://backend:4000/graphql # is not working and not given in Docker YAML in main repo - PUBLIC_REGISTRATION=true + - INVITE_REGISTRATION=true + - CATEGORIES_ACTIVE=true ######################################################## # BACKEND ############################################## @@ -47,6 +49,8 @@ services: - EMAIL_DEFAULT_SENDER=info@wir.social # - PRODUCTION_DB_CLEAN_ALLOW=false # only true for production environments on staging servers - PUBLIC_REGISTRATION=true + - INVITE_REGISTRATION=true + - CATEGORIES_ACTIVE=true - SMTP_USERNAME=${SMTP_USERNAME} - SMTP_PASSWORD=${SMTP_PASSWORD} - SMTP_HOST=mailserver diff --git a/docker-compose.yml b/docker-compose.yml index 285a0d3..535d485 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -26,6 +26,8 @@ services: - MAPBOX_TOKEN="pk.eyJ1IjoiYnVzZmFrdG9yIiwiYSI6ImNraDNiM3JxcDBhaWQydG1uczhpZWtpOW4ifQ.7TNRTO-o9aK1Y6MyW_Nd4g" # - WEBSOCKETS_URI=ws://backend:4000/graphql # is not working and not given in Docker YAML in main repo - PUBLIC_REGISTRATION=true + - INVITE_REGISTRATION=true + - CATEGORIES_ACTIVE=true ######################################################## # BACKEND ############################################## @@ -56,6 +58,8 @@ services: - EMAIL_DEFAULT_SENDER=info@wir.social # - PRODUCTION_DB_CLEAN_ALLOW=false # only true for production environments on staging servers - PUBLIC_REGISTRATION=true + - INVITE_REGISTRATION=true + - CATEGORIES_ACTIVE=true - SMTP_USERNAME=${SMTP_USERNAME} - SMTP_PASSWORD=${SMTP_PASSWORD} - SMTP_HOST=mailserver diff --git a/docker/webapp.Dockerfile b/docker/webapp.Dockerfile index 1d7ee67..81748e0 100644 --- a/docker/webapp.Dockerfile +++ b/docker/webapp.Dockerfile @@ -13,6 +13,7 @@ FROM $APP_IMAGE_CODE as code COPY branding/static/ static/ COPY branding/constants/ constants/ COPY branding/locales/ locales/ +COPY branding/assets/styles/imports/ assets/styles/imports/ ################################################################################## # BUILD ########################################################################## @@ -41,6 +42,7 @@ COPY --from=build ${DOCKER_WORKDIR}/config/ ./config/ COPY --from=build ${DOCKER_WORKDIR}/constants ./constants COPY --from=build ${DOCKER_WORKDIR}/static ./static COPY --from=build ${DOCKER_WORKDIR}/locales ./locales +COPY --from=build ${DOCKER_WORKDIR}/assets/styles/imports ./assets/styles/imports # Copy package.json for script definitions (lock file should not be needed) COPY --from=build ${DOCKER_WORKDIR}/package.json ./package.json From 5f967f563a37bda6d1dd8db1e80fc4b81607b5fd Mon Sep 17 00:00:00 2001 From: ogerly Date: Thu, 22 Sep 2022 20:48:40 +0200 Subject: [PATCH 02/12] update package.json to v1.1.1 -228 --- package.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/package.json b/package.json index 021f7ca..61afb1f 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "ocelot-social-branded", - "version": "1.1.0", - "ocelotDockerVersionTag": "1.1.0-225", + "version": "1.1.1", + "ocelotDockerVersionTag": "1.1.1-228", "dockerOrganisation": "ocelotsocialnetwork", "description": "ocelot.social Branded", "author": "ocelot.social Community", From e0b2b098cfc544c6704a023c9ee54558a31ecc66 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Wolfgang=20Hu=C3=9F?= Date: Fri, 23 Sep 2022 07:20:14 +0200 Subject: [PATCH 03/12] Fix folder name from `branding/assets/styles/import` to `branding/assets/styles/imports` --- branding/assets/styles/{import => imports}/_branding.scss | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename branding/assets/styles/{import => imports}/_branding.scss (100%) diff --git a/branding/assets/styles/import/_branding.scss b/branding/assets/styles/imports/_branding.scss similarity index 100% rename from branding/assets/styles/import/_branding.scss rename to branding/assets/styles/imports/_branding.scss From 0f2785828456d9bb9d3953e9f53ba362d85a1f47 Mon Sep 17 00:00:00 2001 From: ogerly Date: Fri, 23 Sep 2022 08:45:41 +0200 Subject: [PATCH 04/12] resolve conflicts --- branding/assets/styles/imports/_branding.scss | 28 ++++++ branding/constants/emails.js | 8 +- branding/constants/headerMenu.js | 16 ++-- branding/constants/links.js | 38 ++++---- branding/constants/logos.js | 2 +- branding/constants/metadata.js | 10 +- branding/static/favicon.ico | Bin 5558 -> 5558 bytes branding/static/icon.png | Bin 21631 -> 7958 bytes .../static/img/custom/logo-horizontal.svg | 81 ++-------------- branding/static/img/custom/logo-squared.svg | 87 ++---------------- 10 files changed, 83 insertions(+), 187 deletions(-) create mode 100644 branding/assets/styles/imports/_branding.scss diff --git a/branding/assets/styles/imports/_branding.scss b/branding/assets/styles/imports/_branding.scss new file mode 100644 index 0000000..5f66070 --- /dev/null +++ b/branding/assets/styles/imports/_branding.scss @@ -0,0 +1,28 @@ +/* + * + * Here, all SCSS variables and classes can be adapted to your custom design. + * +*/ + +$color-primary: #6e8b87; +$color-primary-light: #a6ff00; + +$color-header-background: $color-primary; +$color-footer-background: $color-primary-light; + +$color-locale-menu: $color-primary-light; + +.main-navigation a { + color: $color-primary-light; +} +.main-navigation a:hover { + color: $color-neutral-100; +} + +.main-navigation .locale-menu { + color: $color-primary-light; +} + +.main-navigation .base-button { + color: $color-primary-light; +} \ No newline at end of file diff --git a/branding/constants/emails.js b/branding/constants/emails.js index f5bd9a4..d64a9e7 100644 --- a/branding/constants/emails.js +++ b/branding/constants/emails.js @@ -1,8 +1,8 @@ // this file is duplicated in `backend/src/config/` and `webapp/constants/` and replaced on rebranding by https://github.com/Ocelot-Social-Community/Ocelot-Social-Deploy-Rebranding/tree/master/branding/constants/ export default { - SUPPORT_EMAIL: 'hello@ocelot.social', - MODERATION_EMAIL: 'hello@ocelot.social', + SUPPORT_EMAIL: 'support@yunite.org', + MODERATION_EMAIL: 'hello@yunite.org', // ATTENTION: the following links have to be defined even for internal pages with full URLs as example like 'https://staging.ocelot.social/support', because they are used in e-mails! - ORGANIZATION_LINK: 'https://ocelot.social', - SUPPORT_LINK: 'https://ocelot.social', + ORGANIZATION_LINK: 'https://yunite.org', + SUPPORT_LINK: 'https://yunite.org', } diff --git a/branding/constants/headerMenu.js b/branding/constants/headerMenu.js index 33cba8d..c95e791 100644 --- a/branding/constants/headerMenu.js +++ b/branding/constants/headerMenu.js @@ -1,12 +1,12 @@ export default { MENU: [ - // { - // name: 'Beiträge', - // path: '/#', - // }, - // { - // name: 'Über Yunite', - // url: 'https://yunite.org', - // }, + { + name: 'Beiträge', + path: '/#', + }, + { + name: 'Über Yunite', + url: 'https://yunite.org', + }, ], } diff --git a/branding/constants/links.js b/branding/constants/links.js index 9cbc605..4d27e96 100644 --- a/branding/constants/links.js +++ b/branding/constants/links.js @@ -3,7 +3,7 @@ import { defaultPageParamsPages } from '~/components/utils/InternalPages.js' const ORGANIZATION = defaultPageParamsPages.ORGANIZATION.overwrite({ - externalLink: 'https://ocelot.social', // if string is defined and not empty it's dominating + externalLink: 'https://yunite.org', // if string is defined and not empty it's dominating internalPage: { // footerIdent: 'site.made', // localized string identifier, if undefined default is used @@ -12,12 +12,12 @@ const ORGANIZATION = defaultPageParamsPages.ORGANIZATION.overwrite({ hasContainer: true, hasBaseCard: true, hasLoginInHeader: true, - // in case internal page content is here 'branding/locales/html/' + // in case internal page content is here 'webapp/locales/html/' }, }) const DONATE = defaultPageParamsPages.DONATE.overwrite({ // we use 'ocelot-social.herokuapp.com' at the moment, because redirections of 'ocelot.social' subpages are not working correctly - externalLink: 'https://ocelot-social.herokuapp.com/donations', // if string is defined and not empty it's dominating + externalLink: 'https://yunite.org/brand-guidelines/', // if string is defined and not empty it's dominating internalPage: { // footerIdent: 'site.donate', // localized string identifier, if undefined default is used @@ -26,12 +26,12 @@ const DONATE = defaultPageParamsPages.DONATE.overwrite({ hasContainer: true, hasBaseCard: true, hasLoginInHeader: true, - // in case internal page content is here 'branding/locales/html/' + // in case internal page content is here 'webapp/locales/html/' }, }) const IMPRINT = defaultPageParamsPages.IMPRINT.overwrite({ // we use 'ocelot-social.herokuapp.com' at the moment, because redirections of 'ocelot.social' subpages are not working correctly - externalLink: 'https://ocelot-social.herokuapp.com/imprint', // if string is defined and not empty it's dominating + externalLink: 'https://yunite.org/impressum/', // if string is defined and not empty it's dominating internalPage: { // footerIdent: 'site.imprint', // localized string identifier, if undefined default is used @@ -40,7 +40,7 @@ const IMPRINT = defaultPageParamsPages.IMPRINT.overwrite({ hasContainer: true, hasBaseCard: true, hasLoginInHeader: true, - // in case internal page content is here 'branding/locales/html/' + // in case internal page content is here 'webapp/locales/html/' }, }) const TERMS_AND_CONDITIONS = defaultPageParamsPages.TERMS_AND_CONDITIONS.overwrite({ @@ -53,11 +53,11 @@ const TERMS_AND_CONDITIONS = defaultPageParamsPages.TERMS_AND_CONDITIONS.overwri hasContainer: true, hasBaseCard: true, hasLoginInHeader: true, - // in case internal page content is here 'branding/locales/html/' + // in case internal page content is here 'webapp/locales/html/' }, }) const CODE_OF_CONDUCT = defaultPageParamsPages.CODE_OF_CONDUCT.overwrite({ - // externalLink: null, // if string is defined and not empty it's dominating + externalLink: 'https://yunite.org/ueber-yunite/unsere-werte/', // if string is defined and not empty it's dominating internalPage: { // footerIdent: 'site.code-of-conduct', // localized string identifier, if undefined default is used @@ -66,11 +66,11 @@ const CODE_OF_CONDUCT = defaultPageParamsPages.CODE_OF_CONDUCT.overwrite({ hasContainer: true, hasBaseCard: true, hasLoginInHeader: true, - // in case internal page content is here 'branding/locales/html/' + // in case internal page content is here 'webapp/locales/html/' }, }) const DATA_PRIVACY = defaultPageParamsPages.DATA_PRIVACY.overwrite({ - // externalLink: null, // if string is defined and not empty it's dominating + externalLink: 'https://yunite.org/datenschutz/', // if string is defined and not empty it's dominating internalPage: { // footerIdent: 'site.data-privacy', // localized string identifier, if undefined default is used @@ -79,11 +79,11 @@ const DATA_PRIVACY = defaultPageParamsPages.DATA_PRIVACY.overwrite({ hasContainer: true, hasBaseCard: true, hasLoginInHeader: true, - // in case internal page content is here 'branding/locales/html/' + // in case internal page content is here 'webapp/locales/html/' }, }) const FAQ = defaultPageParamsPages.FAQ.overwrite({ - // externalLink: null, // if string is defined and not empty it's dominating + externalLink: 'https://yunite.org/ueber-yunite/faq-hilfe/', // if string is defined and not empty it's dominating internalPage: { // footerIdent: 'site.faq', // localized string identifier, if undefined default is used @@ -92,11 +92,11 @@ const FAQ = defaultPageParamsPages.FAQ.overwrite({ hasContainer: true, hasBaseCard: true, hasLoginInHeader: true, - // in case internal page content is here 'branding/locales/html/' + // in case internal page content is here 'webapp/locales/html/' }, }) const SUPPORT = defaultPageParamsPages.SUPPORT.overwrite({ - externalLink: 'https://ocelot.social', // if string is defined and not empty it's dominating + // externalLink: '', // if string is defined and not empty it's dominating internalPage: { // footerIdent: 'site.support', // localized string identifier, if undefined default is used @@ -105,7 +105,7 @@ const SUPPORT = defaultPageParamsPages.SUPPORT.overwrite({ hasContainer: true, hasBaseCard: true, hasLoginInHeader: true, - // in case internal page content is here 'branding/locales/html/' + // in case internal page content is here 'webapp/locales/html/' }, }) @@ -125,12 +125,12 @@ export default { FOOTER_LINK_LIST: [ ORGANIZATION, - TERMS_AND_CONDITIONS, + // TERMS_AND_CONDITIONS, CODE_OF_CONDUCT, DATA_PRIVACY, FAQ, - DONATE, + // DONATE, + // SUPPORT, IMPRINT, - SUPPORT, ], -} +} \ No newline at end of file diff --git a/branding/constants/logos.js b/branding/constants/logos.js index 2bea199..75ac91b 100644 --- a/branding/constants/logos.js +++ b/branding/constants/logos.js @@ -2,7 +2,7 @@ // this are the paths in the webapp export default { LOGO_HEADER_PATH: '/img/custom/logo-horizontal.svg', - LOGO_HEADER_WIDTH: '130px', + LOGO_HEADER_WIDTH: '47px', LOGO_SIGNUP_PATH: '/img/custom/logo-squared.svg', LOGO_WELCOME_PATH: '/img/custom/logo-squared.svg', LOGO_LOGOUT_PATH: '/img/custom/logo-squared.svg', diff --git a/branding/constants/metadata.js b/branding/constants/metadata.js index 3d09066..623612d 100644 --- a/branding/constants/metadata.js +++ b/branding/constants/metadata.js @@ -1,9 +1,9 @@ // this file is duplicated in `backend/src/config/metadata.js` and `webapp/constants/metadata.js` and replaced on rebranding export default { - APPLICATION_NAME: 'ocelot.social', - APPLICATION_SHORT_NAME: 'ocelot.social', - APPLICATION_DESCRIPTION: 'Ocelot Social Community', + APPLICATION_NAME: 'yunite.me', + APPLICATION_SHORT_NAME: 'yunite.me', + APPLICATION_DESCRIPTION: 'Yunite Community', COOKIE_NAME: 'ocelot-social-token', - ORGANIZATION_NAME: 'busFaktor e.V.', - ORGANIZATION_JURISDICTION: 'Deutschland', + ORGANIZATION_NAME: 'Verein Corona-Reset', + ORGANIZATION_JURISDICTION: 'Switzerland', } diff --git a/branding/static/favicon.ico b/branding/static/favicon.ico index 430cef437289d45eaceaa1d096a3674fccbf62cc..0f8dc3ea6fe96277c031128c682cfdcbe9d67a60 100644 GIT binary patch literal 5558 zcmds5X=oi)6rL<%^;gnG1%DV7Bxn^}sy`H$KWbG3e~1>5RuDC7+t?&+>e7;zzASAP zu}N(bmtri1wxP}P-po^DQ&3!fsI4GM!3CwbRuHVz_Zk`!9x!mcsUGU>vr@{t+~7$-837gh%8#$2H1O7CQ4CGO-A@YAs2f zaIuKv5DS#dAkJ~k_(dJ+!p2;NB(4MQQA^%~%~S?fCU(&O)KOj7fUSInB<=&|PwqPh z+2$PI*H2+`+#}k8%_u|cm5~1vv4dW)&7!GnhfXN}r#h{aJ?Fz><@6PA^@mVK{No?L5_LN&o z&K17aEnu2^OyfbHB9JYMe?KT&yVpx=do8F&w)E6V$sfberQIktD5G}??#<*A`Q#qY z$c@JaWP7|y;vKb0y$*vG%S6k?-*Q zDS%A&cQ?83)gQ%=Qhyy;_UnFW?p&wmjyZqLSFbCP=UHs-S|>|>I{^G#IgnX@quf6! zxdrzf-?bI{9mBpa1r~`pz`5;MTk&~+jy(vtf7}@4xPKjae7Hr=9rJHP|3%}>xJm z#n6lL=NYW{h(@(z+*1gkcp)@!=2DU5Bv_!=cGsEImb1~1P!svQCp5#as;xD6yUpy zwTMLCtvk8~8OZvFi+kMPZ=QE%3^lt!iTv!{&AMSzcGeF`z%SaKtuIAW<8s#rFDsGv zueq|&;gCZYV-58;{ca*=-9VGn4K_(SJ~31lI@GlvaAP%#O)Tm(?rPNjuQ<(rBgdFh z*RDDH`_`7yQ^VTJv!4&{;dx(DH%LDvHyj_-o`8Kpa1TDCAK-sVR*l3ZhMtD>XkZU* z{LhS^t^MwEJ2%Lh12IsuY~ER)(F6P9r+eVvKS!?kZb-Uf6>|GWy-Hp9Jt4h^l#5Osl*@kDE5&EVmB=r{ez@m>Ii8Wf h)aP*XnCHj)jfycQnY%8_`Ef0{f9HCB{Wc=<{{nFHQI7xs literal 5558 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 diff --git a/branding/static/icon.png b/branding/static/icon.png index 1c81fa5fca1a415323627f025eb8a68fbc2a6b79..8a3da6f6014ab8e257a8b5d3a88618216e7eab3b 100644 GIT binary patch delta 6718 zcmZvhWmHsM+klaf5)kR3q=&Ady9N;$9Hdj4fdOejVkD&oq>+XpM;abVNiO3Fk^LQzUVQCdz|LP}9W;y>1O9ReJ*9RgfbxTPed{)c?VCDF}YNij(YF`0}%#7uPmO9V*bN&HzHY>|;e!iks> z)`rrLs7Y%@$UPMism_UGaLil=@|5x$I%V4DzjceK4v}uSTIXF6verpJ+Ee}^Y#X-{ z;-ENO3ipsy(

dBJUR3asj)ose8e<@Xv&iXIfN)gh-R20zHfJztELqer7!cZN9n~# zMga{Z#>syFkOKOv*%BXQGq{|G_Ff2#>D3FhOjF#|FMs5O5%jP_3-I#m7$HVS8@GP^ zeQrPHY+qv0qe_;Q+V=Z1wQ2s7<;HKRL|8GlsQo+BEfu$`s`t7RdZBZ-p&Pc*^GWH9 zU*cK<-Fuguz{l3-@$WPAf)(Q8EZw`KKL2u@iMUkgiatPxE$|&5YrZbH5(~TI0(aXL zWm0n^ARr+3d1UENKtM@{zY%nI2=WS;2?&@b^|Uoif(yPCdivxqyd6O_c$>lXvqi@e z#CNa^%CC5yIPO7hITvzdiC1E(!BIeBAz%-G>d%oTfgc~pGG`aHV`=spLV*L z=~Uh?*vACe>O$ERo8);Uxh1*DKf+CvPUTORYZiP)FY9-peIH0L0v*cZ36hXxKko5Z z<}~@Va_(*O0G7fN2Uc%V4yB@Z=%4bZ9k4nFLm5vGi>Jemvy-j9c}&uzaO9RB9_Alste=p|4ZAS=$A@$%=HrP4yPO1e4;%tU}=Z-bzL zs#$GPN%3j3$~X;GRjM^$d1oKO*$!KF33YzJP>P{dJ=%-qutOyKLEFR~edgze!l&R3 zE_HDGdsPK8ih9p!`o8YPI;4zV4g&Y~vvWh9KkQeey;~aY=C9+W6x4X6F_vFGhpPfsf5mFV$|kmRYt8 zSBfkOU#hl8vETVFgfU#2o3DnH<>YiNTYh{O$aC84z^4=yW;w`@&AA0iBB`7II&rXU zYOSPX3UPdH*nWGr_aQb-8OVZ!%=$;2T%Ic7-w+`TZ!Z8v^<{c(JPJ@kz(PXdb|2(y zo0)c{H0`(FGl>05!g++nY+fwqjXmmM>quQgwMH07Xy#m zp7K-#D&P&>AhV9cz58V-Offhj`gMhePlQhc1)XMhy#S6FdYeOeWo-J=!o9QeR_j*) z?3*Z_TNH&v7SP*Du5o6Ea=y|7H2L9bSy5-Sm62h<*SN2!N7Y-VPUm9rXZW!SVp0tl znXULVhT6aCZTk8wtP5XvA9zX7>wR{Sh#rrc1U}L`rNnx^Haq{bS1@WE}#;qx=%)SJdeBeHGnqm2) zRifblpgMCEP|~)fi+Uflj9ungbnU2Gt_Q7(;^5YJOY&9t7hMr)0q42>1^JF3MZLeI z@Rkkls?!9k>H}cSDM^M7KdRX#rGfn>Z(3>1iI6HTH2WxF00DbBz}U;{S9?V)-l@VU`UEpl zJabw+j1@FPIUv@Lc65ht9Pa03lZlXRGGMXa?Ct z<{m-+Jq^`-Ri!ncdU{np(XbAhq~c^NzN1XqLL9V>fn{0TahV(QfoQSsExpCMU|Xi2 zB-9v6yU06@u5LIiP>%-R-wh+BVZ0Ck+Mt+1>UoP`r_a{$DUf}8lh7(XzLNaAAH`SNVeknbhlg0MlX7jwRh!p3 zKxIT+ziIsSvi#O;MYi^8(GpKWhtq-IJ9SPGj==FpF@1&mD`CasMku-;11%L=0O2mgk9=RDMsV+>J+PN+kD?~CTHh8!2?#7f2K?K z2oE;RPr@jaM3zhKwk!g`E^WFl_s2tEt+%XavU2 zPUxq{$Ul+mI_r%&T zuxF~1%_7C9GfsS;$zV!zJ8|1F74VpMh?R?41lJTRlZRT?CyBIspnv51+iV6$|Bm{^i z?cR!@!-)v##^U_rcPI;zWn0JfHr#=>x1bx+W*A6QS6rO@=g0#xW%~z5mJ;dWQZK)B zG}qp}=IyzC9+M)%Ia-PFztwD2%U0jW^!BTD6i1?8{2HrkngQ2;eKGyW|eCP#!qXy32_(pQMI`8SZNr(o?^11Fn^S#pky289n95 z2|^<`>$k~>&-zQ%knYz^hG)7`d7`xUTmAC#d{U|J&fBrE~Jb1r@BxpmlI;7`%l{JNrk z=)>q^qfkCul)oDEV+UF{%+T??YFdSW56wv>c7pf>-(@2;aC-P2Undx|WzYe%|JZS` z+=J-2J(e>}F`p?cWd!rp9y}$#2r97Ty9aOi5~1%lZj-~yBSDyD6AM20o%W|FQCGwHZIGGJfDn}W9XD@B(-kf-1hO-k^(3}pbZ7?#0aqDsh2 z5J%j4pQ37Fq+}?0y&fx~Fw9zmY_e;dzv2M~Rr+#=oK*q42hNIYz&qzV%dYIn9&op&WwCUvvBhRc}Ot8~6mIXO&dtpvCjdl;8 zu;i*t*Xpj8Mt#_=$m?$kHeQfNVJHd^$q*iR$BDPrGv`)r(reym!B9PO5Wr3OX07`i zY(gxw5=|lKS_SJ`7D}(siAgzRg_wgBKh`vl%^DLF^}BFoIgG>sxWn~7YSTNM%M>$M zBildCj&%6#!>v$RO0@(fNs8^5KwJ=4kkIB6{~&OK$6WSh_%OG}`O@z*MJ_~;P>58X zHVjm#j)mph_G742xJrWK@dZ=(pv&~I43w9GFRYCw7N1AB$?N5zV-wN5Fu+09H1z1Xe)r`Ci zU2{((v7XE4Cy`b3wFrq(+4{_rXq{Y4^^tB>(?Djc)XcVvGZ+OGI`c6E1FY1Vlw8)e ztLs^7VZa&U6p}Y4l~h2C)IZ>7{zJE319Pg3uM!n29tda}qkJnc^gGm7X1VvRUoW?U zP1W)ehsZM5Bo`W63+UwclIGl98AAq}DaL+bAz1dTKyf)Gghy>LljXj`Cxvv7iJGE# zGk>hmQRc_22or(qigGO%<1b;;4lg5dR)~|bt~X;ys{;9LMPKWJM19G|hk2sje^jW1 z;hYw4PS_;R-qZ#S{ znI4oN%Ag92jYM#BHK~DRb{3FYW^q4CE_lpV3I68ndheoMC##^}_s%DaVxBHvTiBB| zyYcZ!i<3&zHtFn-9XvB0Qh9~tQeNs*p3X{6uv@Pxr2Hw=l1`Z@8@WbiwS;}S@lT6U#(6RxhLYnUk(D-{zOJTs@-Y8uilED0CF5Ruz7qupqCq zzzo@3rbuZ(-9EMGu63*?BjEDo_uM~0;7sbHZg}QqI)1S@D|>KNU*Uo;TCiq-qTEo) ztL4j0ROd91p2a=4ZqO2dpNy%hI{yIaTV{Q(aquJI7LZ5P#}U!JuJR|71Bj8jAoNpv zJ^Rsjf;F0A{!S%_fS*-E5C)2iw^;p3&rc&>-d2<6x}~|X`DUE$6+OB2P^wV6tGBy& z9H1l7ocHkUBr7O*YoZU^>J4t=5}aR*jMV%z$Hq(wtU|qfHaUbrJuJ4`e;^JhXfv|_3D?>*9^PL&%s#zo+%So`bX zr*F(Dh8d1Je@nAjoH{AkR@;9_Df0|{v4#CA9FO{_Hvkn+#1)R!uHif5uT9w88ML3PxtRBP*y>Q|%;Sq8#ighaM& zBgcl#&&o6628v8g9zt&4g)}$1QGTjU>h~xTI=0jyY0eWU#NoT}Q*J8JFzM0kC{A+| zYK=BVX$2944GPc}6x0b5U5+Yy;M3At_=WzdPE)m`9OU*Zu4ml6ESHArMlpy_iP`TI}v^ zX!fLWA_dpz;%=CIi3WZ&Y^-x?M{Amm;W}K{-w!jMGTPi*g-pG?{Nz(;(UO>668Ckf zWdwq>XxXA%R62X^T>Ke<2CcSwJKLviUMI&d0XHhWh;9l#u{zi|XcU0p&x-Raz|3;m zD1^GG=TghkG53TE(~5F<5%fClqq01sGk>#d~{uX18CzeE&=xn9=X~v#Z&E!k z#(^WfgThC(6tjxFTi~;eU;6#`=pRYxAyDd^p{eH!^4oi$DhX<(q{TBejqj3G3Kt-X z7zG@Mbrsp$#WGEK$PwPkSsi0Qr3XFp<}$6UZs#*s6a};cw$`t@Jz&5hX^m3Pym;N| znYqp1{tlQ9sQ=<_QKCxu07PLR=@TQWb-Qp|$q>7_o&EDz((#?Y#=YcCw+{)3zpi#q zNq;?#eP}IrjxZ)p6hRUOd3bMCEGU=CmenT5h07SN59tpWN$+k(XEv#3-G3g@-v(sb z?JCVp%Ex0G#^ADEi5*Y+-15I#90%Jo|KUJ8MXbwwM-XGlN336;`qFkJ;S-U$R0!SP1_Iiqqacn=8y}vU3p^H6^^I1qt$;pDjHKo`aB6_-3Z*@? z#{NRq{=5mZfS_JMwzy{sckuMV<;GZ$_aeIO{E6h);JtxFfFVAX0&3m;4bDo&e_GGQ z--Qf#tnGsq7u?e&o^x(vY5(wJ)6Rzmk)9!oTT4@Q^-y(zpcH#V(bfoq1=F}ZTd?^V z&X_~2BtB{^^A$M5;9p2*>YAmp2|7c{-0CtI;+a}PI>tR+!%l6QhgK1<2OaF*m*NJ% zMZtB?ONKxc2fWv~c~}s&zeSsPMNAG-c!hRH-;r)DSN#z7L+GViLr|0S5Noqalj6_S z-gNeeUiS}(4r8&*dT_)2t$zH%Q#2kvK6*7J99+xsfdOS$xg(S39Iy2+vE*Axv4{ot zHb-$T__n}xiJ$NT3?Gzkv-NchaXQAh+;EeU_VR_*Ay0zcbG{`>j6X){JE#(=Wqs|-5A+Uqrz3qV8WUq3NqHy~GStdLyWY$se z49KHR3B1sx5zn3~gvr$zt}adf=C|j`*3@waB|wxXKWJRiG^$Nv|4VpT>lMAvT52Md z!dI;n_CE+eLe&hhP+lxPY@lgGJ61;!GOt$jT*=>+XZobItKl@Zxfc^dbjJKJs-_l8SA zT@Udi;CwpLj|;*J#$ORX`z+J%e71BR+3wG{eSXgAZB@l^Sk|Q74m8w)nGh(R$@7^1 oRCKMnMvHk01KeDk*#6Qau_iM12vq;X{~aLE(}8H$Yd(wmKcd#@8vp^qk}L7F9!=- zq6UodCw68w@QYi6om+sDO@NJ;k&Rt|?f>rbvUd_tv~)AIFm*GPFm2dbkOA+E{`u{(tTzhx-D%pfnZ_vHN^tM%I(jVMO7KTZW}K6$?oftBx_MCM+>L(-dEZw+{^}QLL7Hfonw5Ll9Gi zono;uoc+1&;Q%kSOYrv(Zx{bQn=8ECRCEHjZAaYL-i-|1W_nhJCqHRvj~HiG!w}9V zBD8SYQd>t}EM|{6>$x(LyJ~JKK;u(jy1*8u`LmIw6*c|=l_uWl{5 z7mY?(V!W?5t3%&04^L-+Q6)u#nrxso1J$Jjbp>CHQ&8RAPI zVs;O}n!{dlcGq}``rRL-e9*k=*mzK9lCPpLDu@`zqMzQqjL?faDyxv40yGH-BDLP$ zZs%m)J&w!~!EAc5jirz{Idoh9=GwSZyuOB<+&TRy-(@}TnJhmjiu}7C`h%N~zuM-K zna?mhR*?DUP$zYpf<6b*g!CjAf_;igm&)1F1b=ulhGBAbYryG;gXH@k1FW!i)-4Em z%_5#pccN0yWk*K!GMvu81Rz ziGiU^`a6kS(KIXRB@PrymXhaYcOU{fN$QwY)PNaJMy1x5L>k3b&-3*{S!_{Xh$h^@ z&Euaxe^OKNo1#!)gJx%E;ZX20g}kQ^-L&@Vvng^n-2{}gg<4E{!2f9k253$X^!Hm> zSsmRxmicN?^V>GB>`&wX)l)Y2qNohXw!6deOG`_dX=m!Q0!rCJ{AT@#$#Mg4^WkA( z<2j-m4$azU*o=KsK|w(*hOHMl6flQ}hvDx&l&!ku!NJkk zcJ=#v@cQyZNkPFNtV)O<*70(?@-Dmpi_@}juHg25a!EYJ~;hx5h1w6)F z)goUyjgBNb8!!umAd5^+pw-lL*NuDY4Me1)y&M`1gg?w!ZoV;j>&zr7+F* z`YgI0#?5tEiRtO-$;r65xC7SH%BpL>T=&PpK2K!w_j!m%$!sn1)RCY`qH!4{>@6BT z9SbsExwG7>*xA{6c<|&1jz<-I3V*lOWKSd%YrZ)ObrjEBWK{jpd_!?X@T*&>Pk%HN z#M#-o&EpiNfg=xi1_&e8?Hqm;0k|5U<#0{L|UYwbs)V=HUW{WCljYa^)Nm5yNZx z=ZF|0UZr%d-?oy~Ub5~XqhVz&mbB4k*!;GJOWd*<8%`^5;~T;jqv>cN@Ulb`-1D*@&_#?w=gdw_tP;lY;)Zztg~-wrpr} z?Z;&O;i=WHd7c?$XS5VwpxE)OfI|T`<+nS*(%lo@ksO6k&M2({`B;LpA;g1&*A32| z*Yy~0%f=|R^xN~ba-lJKW1!be>ZF`PQs5K(LX>`^HA>n9UJNFsRE1GT`pWVRj=$LF z&xfuP!k)Xsn7dPK1f3QUG)0{yN2G4RNtNIIGDoTt@O&vfwAX$w9s;k>%KAY(s<-hS-jbu%%~0jjyN?VBT8slK<|D= zMbWTmgP7M9Sf~^kZC|6Or?*o^+|)UKdwp_D&4mQCtl_>=&_O;*n7sK*-G~8>)GkQ; z{?A^;N?BD#9Y@vQzaqomo^RwNB=ky6M#KJYayIp+qJx+iu~Pf?6o3%L=M-?tTtWP@ zo2b0m^R70Z{=;r^HYt(O8Qt3}e+;7KpI?4Y9w{t_uaC#9UBH1llWtuh@b(I>(MzK?Wgk zD&ynhYhCt6Y#%n?WaFqF28kTouSOV^XqVBsn%gKiKMl-4A2Isy;(0pKS)rb-G_wi{ z5_yZH7s#l2exY-~X0F(N=9?_dK3G69t!3yR*>>WiQO<4$f$``G`1kffr*a;gE8m+r z?coAwVqakuVNU8oz5NTqqeqnYEE3t#i=2j?zAchbco+Bc&Zb$%52mg|F%*>i{@A^7 zQs#rv1RK8BigUsJuhw~UwjgHvg5a{N+JdMrATd*bsXnZU0AI->=r?i3A7r{%B%hLy zkbrMZv3n4S%LteRc|_yRLByaS@#Od5VB3k#G;jC|dYtIAt;GsG;;hoq(aFfmn^W3^ z5N|vR9kZT${yFJgT~xtoG#fy^SNKU>L|5kj^5}FwysVlh{KfVb0-;4(U#?v7g0fFM znkk-`uhjn}UgjzM7*0-0TWs9rKio|Q`B14>T-#!NGkzx1`pV&sK>rH#a|D z?-_CT*%N%RV1q|qA{zt^f#tim4LFL?;6k}OU0EpCuAZKrPR~?R*#WOAEiJW! zwI`)~b{E%C#KM6DKwY><|9xSmqvP|sATy8qJ>`Bp-;+W#pMT{rQD)+iz8z()0X^Hv zA}H7fd|9aSJX|r7auvf5pZm6{k6nG2BO}7C+45Fswe**>&W<2 zN*J9hgh|os!)sMF0Y1ZnFME+)v}a2A>n)I!lES&3NX!^{Szg?u{m+(Z{n1zF1OK)d zD-+Ynd?ish(J4Uub_cxinh&BTNWi5+u@z^SsdgQ41YPyl$K5lsvcA3CZ3s(e|GKQf zfPjLQngWQ9R!?FU z;&yWpld6>#+=BF6RM1S6fwFAy=%lXyz*E@U+dH~ma31@!?WYVWapnQu7^DxAIG2AW z&CI9rCAme*KYo&xm7T~I27?J8Mu?Dns5us;+>{ZG_wf_&zws==yR$Xdw}(_fX2zkI zuy*A-Tql5;Am5vv;KKq3I9a^latHYN1bBIQsi{N9F4x#JE{;Pkv{dH~CaYlMz7)_B z1xFV^AjB}F#f(e651r3fqu;P;>q6z8>z)7pNdw^xoCJ#RP34TM06RHTl~qixuZnbR zU%j|1&iV%wr%4f-O+L9`%1pQ_$Pq`3)QS`26sKXav9jipnA9~v6DB9RagD{Jfjw)=%wpGwa( zIiXG;5=FN!HX^Lsb!d2Glmd;pP?m?AfgPKvncz|k$NrT%%|wsr>pdkeZ?kHFl-+sj z*SoX5(Ui|>({EZicu_lmS1>$UIC&Vj)m9*0Rmi*N6NRvjF0C@dXR?lv2W@*cz&nD5~cHDY7X6p6)0zw~;e zznNCufZ0~~hQ}j`KoZTtB<)sC4Pmd$7qWM|K!jipB<0%U{0r&Gl*3x9rKKgil7Q>P zI_+zYljlo9!W@GfUsWZOmaI%jYD9NGECv!uXE&RPvkD%9r3d&U^h9zCDFHeZeqq`5 z@AX|d6s@tE~OLPOb=Mp$Y#c%QMG z?)LD`pSs`)xBJ#dVoo~f#8n#A%Ai{!l1+8Z`+lI$peiM~u2rr9cxa*wG5IahvrWOp08ZwT3;`3RZXuHwNZtUeEH)Yh)I9l89(^Z_p%BbsTV%R1D=(o=$kJDAx6f>lrV#7Hl707<;SH#9z?Dwd9VU=(TxbpWf zlJsmu#ltx=EFWj%^rEDsl#V3^4qva?rOnOE)_snd?-_vgy2?PpBUnr&yu};kBl}Xc z{x0Qrj%bol=Utx}+4H#Djbh3NP=Dhw7+cZYt(kb7R1{P2#2{H(B%c53T^xChrFL$cgmj&jMV>)$`$Vq!w8Z`MU#LJ@jef1Y$b^c$WSC^y&we68tQ=(IY1 zO0R2E*DWV^w5be)kdGAI^U;%3Uc;}sMrU1o7WX@NuHWR9z_i@EZhsh?IQh55aDuGI z`3$ ze|Mv>gEYP8e~xy%Ae|}>K=rZxqD7c_X7@N*1QYvi?LP}G>&s)&1E{{cKLlM#3BvWI zQ5IswQ&!+I#og4NZ2x^zwwqW^jIoz`W|HryW?V<>pHfo3Z)+a9y%K>uGWKO zy%NoKOB|u%P~XqnZC_B9ePQ`l#T&c}o%#+`_yR))*N_*g$`1qqL+RK%N4*$aohROS ziLhKx^R{Z;bB)~78O1)ha%rJiogn8Hz%j=Nou7Vtd%N@X@yophtaM^R!hDrs)K0{w z^Ru}=LI<*7EvXDi#Kp3+NgbEz{@cdE#$?SezHJbMo#p(!hA3$H#iFk+6*j+JZ3TF# ze*Jh7by&LnC@7u>sDSVyWkLD%--M{mWG;xDeLLQI`^&Ck*RBVZyT75o?y&U?vK#FE zij1bx-?4@=GHjz(j{ZVvF5hG5xqcO}Hn%`4cBKp8A~x;42EQPF`P&A$mv-W+|cOrYG2AnaOI0;Pvhz}gbXa}$x>_^Y?JB4Ex zH`~~MHlCcGMUv^AT{nF9M9jWFEY1O=vT$FN<1uqaSl@ie6%s5%)ek=2?`W1Yw>CH# z!#PWpU96t}fW*&KKgF{mS9QLQ8(8etmHd%IN?SD|VH$mL#@qQlSFQ~vW|2buBU64) zx8y^gispb>@1?iYb=kAVyT`ks7%e>V^!bmdPwr(%r{*C}jAn#9v^Q(ctiPeJpXi_v zV^_>f?<(r&1jSt&3JXIj8MY6!8aJ#$Xp>Gds0fR!T)5jX{5UJ67{`0OwH+$>zgW2j zOm(wgcr;`1#8Bs6*d>J6qo*e(1~Wk-MAqufI%$EU(g?!EPqX;`e5MUG5>Y<~zX{AI zVH8b~Yb6b0HJQ1qZPYtnd`3h6#Ip@nJO>+Pr*JcV(P^Ib2m9A51K6)tUdOAgNMo#`R7i#NH}?Z1{?7 z^y~!m_T#y1a94#9=5bE4YxUzn**L4np!>50b$1tf)ZtSHebwBv!APdOLC#7xKpL29 zy_B+LMpPvv);lcYq+$LZ5@aHliYi7+b?LiVvLNh&Vfx}76+aL*59aqM@|n_Tx$45I z+CLVp6SMRH5k6D}UyRtY^Zj6ANuJo!$}^zd9|5jA-Ss5h<`hY_8vFhslOD0@>={yw z3xRBkGX=yHILRVH0;us7h>tM}&I@bAR3i{0VkbG{SF)N|EE=CTr7 zE}6o9*xZHXwY3yP-%-5%?4%&_>msS3f{vs0R$PpiOJFdP?`qQ)i~dFz4dux}habpS z2tt$*c<7!Ia6jq}cDgcRGdtx+(f<%n=)vS1teD?MSM$R#?HvW#9-YB1RE;wZ!9TZ3 zu7ku>eh0SjjAE_stpmNU**EMc6uSkz&GG%8TpM)jtu8iO#OLLZdxBngEA5iC`A`!Z z;dokJyEm6TIa8sfOmPSd2TBlON%;UmA|jOHC|LOr3WP--VlePq?2Wa>{EXIbN8sJl z>Dn5wttKH6qE{IhKLpMh60q+iVC5T%E!}OqY?L!~G(-`aBkt9>_FK?wu$R4BI zXjsFmsm4buwztTgn1!L3F9Jvzdp|ZzYiGhK+tv!Tj9aDH;G{x9A&~=3b_|$dJY~ia zhcd=ane5rTy}oSq6rAkEL6deBl!+iYUjV|;y)+|XEo;fc0rI;GNXT(GdX6Ux)udOx zTCqQiih39hTd#kR8J?irRAo~1pL2k*Lbu?1o=J?IWr{y@+L0gNT64LQNPfkX=oYG# z#)W=>AV`OboBH?&n6ovndIMCfbfg=?bfpCen~i5#`@y_3;&G;JcHZr0ejZj-tZ)-(~lNT;=GW}wd}~;gDL`sf&Ci^A^DzPtM3V93%5{9^`|#mKlO#7 z1!v`V88^G^&%=^cC?Qwv&5~>V^S#*Zi2lqRtoTTKwj4Ar*0B{t-~oIb-n#lY>LA(RKj8p{-=8>o7>%&@%yYrfk`uo|Bh-_;C=}M?iC$`MFxR>7=qz>h$u2 zv5nxk*2>+k!rA?$=LsYnH+vG{JYt{!bqDrH^}dusAjcCK)$q!rNneVTb{&GDAuPKD z0jc%+2pMD{;#*+Gw}pld)6SQkoh{T>N@n$A0)SaKLI_H00r!0Jyb)b}^%(c4cZ3lp22 zp(wAY(5kJQtSobBJLDDazvwRhRz)J0xP{74=>Z)++!@!2P^74AD0oaVa&kdKqOa*t{T_ii9uZqRz>=i;BJBpESML=O&s4}+*oid z4aN{rV@dGs=(o9d!P~YR59Yy^JEB z8QAd8cysst3aj5>b2+DN+_OUkXY{0rauqjnV)BIyywL%YI%wBUbauh1D;56HtxpTTb970U9xm(HT% z^WeqEVS#ji^A&74LW)BU!ZozRIM=(c^1fa?^qV8LfP4S&yxMCxssCn#quD3wxzo4jebMU9 zM+PB>I`ti%T%%+TDlv^0RV5<1N3yU|vfy8dSkg^L{*I<`2N}1+=!glueL5SSDD;n`v$>g|cjGPZ zHE!`azsL)b;v}d-Ok@c*yQEY;YxlFAfJ=!;)L+Q=pciHch=tcOnZ0k~I9pDl)fHG+ zpio+?r|kH})emh4y&tUI2h<3Z>IyQ(ja-B5gvirLy_|82+;{RYQ;^}8S5yo|_jB#X zP}zDUq!+1xTd4D*xZoQRF3KA#A|89PC5if;5jWN&6+_tQcBodZz zwzCoJXJjxelqW?NRbeJWFy9MS^Ru3gXNCMbqS-<{4kk@Oa%UJ=uYcYOM_?Bc^4%ZL zVn~i;?|kwxac=l8Zrvk?Y(D!9>1uS{FZVX8?aO+g$Vvsl#(Gvsf}!bFOq~jyL9H1a z@!u`R=XxC~8XBcEj!2Eu6(fajl+-92AD-n%zb)I_U*9IUj;-*loUM;+Gp2qAPGT1TtDNhB{+9pOB& zXVbxVQ5-Pp@OjwV_TRA?iv6(F1Nl?&VM#5WDmZ+>cCHy>s;#`x5ZS=?ss3E`{K}AxB6Kc<#wdqRodGnTA3(f$H1(Ek#?r6nqmg90U>R#86|YA0h^_ z+U?m;%wnH4Sf%MB^XW!r3Tzwo#;iDr-Y-F#ZQo&_zrDjsN;epgs_T~kBH?nC z5Hab8;*+g%@{c04H1_q3wY1!tI#+c z9rwZZ>oQ5E?y%;#clKw^hGoI9`^cx^S0_tww@>iewcloSF{&g=G2}~Gk21&(Gsxa? zX`_*pLdYUpn(VPu0y(W<5`~*^QPa z<7%BQFDcC%xseTGZV+mA6M3zjRe;sH7w1u)JI~45?1LRQ%h8g}k_#`OvHxL)e&#h} zo`TZVk5iD&3j>BsL}3!lX|(iY<`S=NHySz`+j?K<%g0lBqu<@^TH+i9b^&i9vI&}~ zKG2X&!WgMi4VT@+%Z7fRe)|W>*GXC6%^q$R zt*>)i7xC++37uvWECC*XqbC+t-LK=QuJLF%5Z;l@jSsxBYdS{BtTuJ(j?X_c;xx}5 zrWWM0c6dGu!-U0s>6kh6z1S2h5?w|+C*D_A2+F7P;>mV#yL6_k%nMu_0=+<1eTkF&7^^eMx@6;PPY?^?;-Cs~Zt!cDOX0-4I zN7~Wy5MCqj`{+PyN|WtceHpg+CY|Y6?W$mw5~#y-q=9<nBo{R=&d{Q-Hi5GcqK z20JqDbv(~Jh$x#tlUQ0&QIVhDYr&z*g!jKT0Y#cbt@1hBMyvX?Jbj;(c;DRvPz>4X zDHMQ)bWgS2>I!yfGk~ae(p6_?q&yG>oNVoRG8lkke%4{i$nlt_jE-7`q`Q2&(`V6W z9bvL*`|Wz5QZGDbTOW+HXdUJw5i8{VRDIgL5UsPn^-22G7ONs4xniOAJ!G2A2~p*7_VmVR>{CQV1+$>g26yr8{0?En~b)9tV1 zRKyA}ZfL(F$??-)S1T_PM1Q#+MizuXv=KiIaw8hf5++gt{xi76ijDeZ)3QOOD-9PU z@6d5W{pV>c3}A#5P$4xRn4FVEE;ESye?gJF$o(VdJe*(nl;T9d34Fh8qpu-Ksd zI{J1xr76x@yl*GHMwy-h?gT~9>l2*IwffgvIaPtCZ4ER;7-1`a5>F-Pr@cO1y+Qd^ zdl|F`jvZk7W%Q~+`PpJP&BV-rvx~aQ>kt1B9P^kAFJ1j;-G1$!SZbk~lJZA?x4#=c zUB_+DmpihQcF}#XsgG-ad;5o=*L`YIonx=7mOOs0zR;4;Xmv!<^&{nO)bvXztycK? zSxc6tJwJI+p9atfhMo}QYcPDqO*Dt*T5S3YAKU|ox@Z(ku}SgmX6qHHeUdFiWg6po zaU1E^i2wCu1da^t=OlZgjPHmqm9e=gE7|QsZ*fgD%(~5bXk)n5efq4c$;Fu zt!_vC`-a2sqU^Th?2OdkoVduLDp$Pojiul}tzKR3()15a_?|ZQOZ!c3%GjD>iQ5Mp zf*{rCF*1^*HZ7t$JRz*Ub3;bV0w6DWe#p+N$Eb|_MMBouSOT|wm$xSB(&D@Q%NgeJ zZeP9jhjaa-rA5eEQHTw9fO|FDE_0*6OTw+UrkXwyi0J8`MG# zT}F5M(JH3qdNq)jmy}ErrAD^oVp0SLapaQwXKo%jN8uR*IrPJF^S(a{1hQliKew;z&Og#K zySS+1_2v9qVZTI}nt_2@Z=Rfd(X=c!jT@lWI1!%J#YbZka3Q~CJ4=HJ^DB~{B_ffs zzRI?9mU23ktmON>hXhrt2mq-POLYvnjCkrrgp}zwpGAM3Nq4Dw8W>QJhtB!uO(nfF z@1w;pC%xbbU@77_3<)>W+20jnz?GbzNV#duf|qX-@mfXqUH8w4D};F6!JjcauK!(T8)+tL6#8Xv7v<8Opx9-cvINY1zJPL#3Cj|4>5%@Qu&t(7!*gW zP%2R5Hx08!Y|@3daFC0W62~Z$;VzT@l0)E6xm@% zMn~Jls2P9}g-^B7zXD3UsFmg~caMM4J|rgci+uP2>iQNJA-~k|D=Z@g!+Wfk$2rEr zxdax>Uk=NWpozJ@TZm*9j+=JrK;ul@mdk%D0@eYirVT>-gXSpx3uNsf4t6vr^EXC!`QVr#;I4 z`~VEc@%#IKUEK_gveUe$D;}V%l7YH@C!yr6VPTO>^GMa|dHmO7%nN#{B{57{|0%pV z2p!C9wzXturl;{KLG|_4M>l7(&Qg9b;y7^b(Hhg229sH{YsFwufj%O+)QT24gEQH4 zNV9_lTeTS)!j_ws5|L*s9MM!9SlV0 zmB|H{Jxf_UkL~vmi_z*N5vnKIMxZdZI0GJEu8q1x4; z3F~0B6#JR`-&@C7OGO*GZ8_3QzWri?g)I8tX)8f3y~{008A|eZ08PGL zs0vTrc3)JJc~P|U=Z%t!q7R=$9fMaXmnUq|HVlG?RvJGCueN9tT90Q2?wRT75r#jF z(0Z0Qy5KlDWcd6$=)rHv$Z-r*aMlb|%L_=R8WGd_Gr@k&Q0PT<#$RGcYV4=9y1=kx$#z0vk8UklG2lDSuan!Go0;ToZ8{J{e2>t>R)O-wQjC>LcQl*E zdBNw2Y0ZO8pD>S(B&`qblDF*RHWfOH0z(A_1#$6S(A>C6NhNF48r>8{gD7B3BI2e)6Xsm8H8XP4Q0Ix_@o2e_roRKzU*apcWnTML$C` z;duCRi@ESv$EQ-z#cj_qn>xQJ{|AGrd}B=-Rw4=;Qs6gd2t?P^^KTk4Z_JOZySPAA zNC0?19ZQf=U@^w5czf^dDYz5l!s5ZOq@esIN(lTOnm=>6TjL%m?UM8rm?@A(R|eNG zi$VK=aqQq=KX{;v9L585J7MMhRtE9%U4s&Qdt@z4fpiLoWYss11v3J_c@5ZH-Oydv znsv_fnZ61q46p|vIggwT7}McJJ>8rh7k?J%FP$mg>In%6@mV)ec{Wu19?qwsrp!N5 znedK~D}vqS^wAv#2T@H@NYF+_-Vu$Fu5AL=9*f1R@IzwqN;I( zFMVlr$Br843q##9kGsQNDhcgWFIMv1{`Me!ApDxqmvDZ|IR&_s7lI~9tBao%?av-Y z*(vl-@8V^+Z2Kb!W`16x(^!8xw%PiVv~0X5JSC)dFQo@)q7;A~pRF?7@YzA*JF7UN zV`7rf!p`CPj78ehV;n0&j+v!In^Q)`7mE$sb4xs1ZQKQVfkE!+npntfSEe8gt;47V zDFo6FyKJxfqJmW272r*iSkgAZISwTHOBN;A!w*=@EcDI8cIYA7RrwtjSnw4_RGVNmJ{deIdA{7Spe+5Rq0bZby zDJcnOqK=>V;~*A))_7zjZ4h0y0-wdV-{F$H&2nV%GFIc6zw!Tc_&sSku-p}vBUz7U zOJZ?pNj_g>(!?PlLsF;3MEEdke`y}L5%DRxsQ9;BH>dwx^cT(DGjab?JBk&(upXA&fj7k%h!)#Vh@VtahZD#~Hnv5^C2I!ViRO=J4a zk86eK!TBX<89e0m$^Zhb+$%0bMA>*sMCzZes04Dxn!}s-sovXQ3b~l-?B7cLct5NE z9L^{4`|6Uh9P8ulc;VDJVocQx^bnKn{%_w@`0US4SHNYz=WjlD`Ly0Kd@zR>-&+k& zmd_jvU7#mh>>**Xn)0Rbn8&W<>}4jtK-yJR>=^6YF1W~mYhu$;1+##&I@s@D;|sc# zl~f5S;%zRs2WtA)+5iCatH0lz^X+O2IB?FTw|qSQy;OpNDGGYA9G-TSACgBE=iE{_xHE4 zv2nv`4bs#!snz*Wtryzx=k8!?=jpsFyy)ke!#@4OsYhFzYw&j|2;My&y#oc4*6+(FbBSnugsjQMAqW=aSih=*mpgv1=z0Y z;l@$5IP`^0t6BX-hJ4IZsnDr~ZmGB~b%lr2fZ2cf9J3%8y?v7a_d81pW3pVM-UmX$ z$W6NGgzpt-zq5k&y_dHKqD)zjD_2*I{a=zNc(;&JMsKc{8;8@=LE3MEh!YoVe#K?Qc#(+gD9?MEph7`AH`L`*nkeNQqtaC}1F=(Guku z2g$j{tpt7v_ns8A%|_+SaiK~^d^7BN37aK**a2;KMD=xXL9%%&CyTYgZC$1ojk;p^d=4J@I;?$R54vv7i_4b z^Ob`3M;h4%rrjoNzIT1-0>TvQ$U~RL{tuR5Ws?!BnwHjJI6h!%YP#A+$OVp&ZR4`* z2kV`Zr?>@BWrc+f)TUi zV?E1g1=1W@dC2jSoCsbWlm~{jII6i^6E=fi9+~;^q(r$u8a@`cXz-ibc7J7oE zecH5|`jfTAWc7!4Lus!2|9t#j7In_dYTt#MA1aI1E+K$MJ=hh-_(|JF-~K|Wf-V0z z9sZ-U5b00V3oEA{RC}Nh@fJhn7phsVrI^lzB$A#4q~1TLvfC-+$|h|1zX`8x5)57L z-kxUge5Qz()2=c?|Ta%X??D9C|F}k>d!!={74D_;b{hZ@f8`q7>b7Ycz z`dz=N%fb85p)6rjKL>p;!hwCc6pB&avF7f_9wf}PKsq+*w}qsnWcWMMpL-Ny7>Tq> z7V=TK0G;j2V9czt6mhZ!biJL!AjE~Yx*c9E7z3BzFZSu%#l^+r zmPj3Hjy?_BW2<#+cG+LGpIGPk&A-?DzB#$oH(UqJ<#mSl5DZP$79bB#I&!TjuB|hy z4kv4nq60$##K#ne5Wr! z6<=&M2ySW9zpc2mN;QTPCN=wuD5@;~S#-Y9_jU_+L{-+7tw|cv-@3jhNtR2Fd?dI& zTQ%jZ7_q1W*D_pe!!EpXtPi)S^S7d-nvdQ_>L6Mgw&7Lj9l5m3+b^m_tBF7UEVll4 zI$GIzAL%qcc0;C-9R`5M-SAI44B+)lBReTIVm0+ga`H<%2!bZhWt!zCj!oM4^05?V za;x3Wt1p(s?+~)QhntqKredKWIFjE6%pNH`+6?nl{vAx2?+nI7@An+K8IAn@yj=Lr z;8lW-Fm?xRdwaRbzI@@BUm)=UAvSO#N0ok{f-6QHg)kJE=^b((8((w*0{}w*plR=Z zLgBR!1E!@ksp7d?-cHjz`dB_#NGBbGKUM$L^H+_zuJ^lKozB1^K&p^U@#+G^=8LZROr zW)_Qv9Ya1=^eJ5)3Ib{sEcc_LjpfVpxK;Qhdg0P{3HvLaYU!h z{ExL$?i(LP*nU;4AL;#cI}EB2(J(UVJSomu^ymOBnQ4NaEH6O%4|T2bWO6>fj~F2f zMVYY_dnz;?PO~po7OfFP;2PN+^(kA&kwhcrbGkX21Bcq&m$cw_gWbc`ds^i%?mXfo zXA2+Nhd)UeiNVOAJuPb24MKu%Q15yC+HM&YxAV5p7p_MJ%As~$cA@g~PsqeD#_v?F zL4G4wxxLU5NV?dDL4cS@$R84wM)GlQ=S}PW7KeH0-kjE#jlm&ptIbsPKA$d<&l2>o zXfHP?H*EFgpVmT$q=J4e&?3DGOnYt=|ILCGyQs}dr23tQ@8q16PnR+}pf2U29eM%l zG7ai5Q^z;e?N`X=s}>y0`kl|AzY`0xQKQ;ny^{ea)aWmaiOB5L9Utqv=e(s-P!H>&D}}}<8Cp61yYAG17;eZ z1adAE)HiNT|8oy_WCrK5(R@tymrVfe>CT6j2$GWWz+-7pXf9arVNh>{##xOx1obrt z0ZRyuxLIU#kER8#ZGmrUL|3*avHfn=9}qI-$w;X-@P6(`dQ`UHTs=c8Z}ve&BM)r6 z{M-63^47gv_fYuC$jWd^)xTOj1dDT+gIfmd!I2}XdUB5lDen5<| z#18hQ?Sp`?*VuBSokuEI1AD$$3v+nyykY!Gy!TmfzcV-GE|E(1ee5>2BP$NFw_dId z|A@yJsO#x7{QxT@dc&2nL<|iKhy%+GI`6``n^y^nX|}n7Y)@}>ZAud0M*bF_Y5aQwU&%sL3<4e$e6fjCpiXzsngJ$h$2?K` zu|E61th0O_B>S~v>kP5`YH%5~xNK(+K=V()_w})fF0i=7_*zt&G~$L0&^H(HV_8rj;aZ%c#fp4gpLk&>ip9xl;~RF+~LlFvIpHTkvR_ z^#3{OT(r2Qjvt`x1(pi_S0b7oL|lvsyX7X}x4e993MZ*bOrtjci*{l{rBnlqk!`qq z&{XMJS@$2}=y8w}s1#|i@3_H2#~i;~U5gHrw|rOODWGAT+;4k|h&4P)?mmC`?8?W0%2PmE?r@` zT`%zff^50cD=L_H#R8j8Q92s$xOXzq8TqOXvkDrhbN21-1tr%QO0~`P?d(pr`oeR* zp7Ec}{8xC;ru zb}F2*8?fgzi}&~UVAY-5>GGWGWE24+04%~T71L{~QtwI9hxdtzel()pPo&NP?h_1H zHd@_})49K_d+%q7Yj|)#x=(UrS8KrvQQxiwY*|%!B25SK(XqmLaXbRU{WHOF9Dyo4 zL7@fv7Q`p#h_IEy91>QgGRpRoE}0hXHm5nsj1@!gv(6m{xa;xIh#H=$-g`DNpac~? zc{`88fO3Exl1b$hj}vJAKNXyHSX65l#Roys3!gMy}J)`Y>BDoDRom zrr6QKRILGn{X_RRm>`loHS>FA>`Frf<&FLx8{b$}g?0vQ#msJ}j#(~;D=*6|MNB-O9!9_ZL&$%LrzaQvZvmO8P#->o6zhvqe8 zEQ}&2rYTTJM@NU0*NTm;?UyKEWeE~3y@y#?rjfGS9Myl89YgAjAengAnTk!_ftq`; zoBel|j;cWyv%flcJUNoi{^k3Cc1^VBE#H^iMf<`@QNA8DumUaaTf~HLxzp585?Cpb ziUWY(?avO@GV-Y+EUdd8^_{fS;YJvsM8-k@}~89tRp&&1UHzQK^m~q%`E2 zZ2b(anJytZQO1Z8LaM|RMKpS{==HlGHoB6F@Lxro$dO0g)MA zQPGjkh#LP~As?LEaylYQy-%3LKx%y?YIjNZZX?J@tG8=I0_I_@3q&wFKQ& z70T@?CU}sFaqH=0jq9Qw#ROA}$e*v(Gy(G(*mkaYmE`FxF=>Ww^3?t2@jrI@A8X!h zaH{EX0ZO=Dzj!Mo>^9qx#IDk_Xu)#yDxH}rsNK%YFB_X+>7iA#T{&bh6=UJZ8CAt6 z55X0NKE2Gb1Avyz?ZH>QoQR6=U<7W&Zzt-kO%pM#H;;X=AE2XlIZQ&*Tl@D~jNt)a zZ?W(AXsyDU5DA>*(D|DJ(KFLk?j7yKF8M(G3pyo&zs8VzJ};5wqX zeq1{-Zcu3y!v8`wOjAI^CYm~<9#m2rpONuDdUn&_p-b%q?pr5Jv7|s#C8<^K1XfiuhGSVRPz^cx7rVR;# zF_ybXb3fztr-eF>AYjq)4q*iKst-IKvs^#5Ng35U@7}`o{P+tsc?3h1&5mhCVDkR+ z;-tj=Drre_Sc~7joxlHC?h~Is8r{M|b)YoziBSA`7W;~M6d-_bjcjt`^~v9??p6VV zWZQARh7X~WMZ7v~mT`XNsZ(R@!CtBr?7)dFE9*{=*#LCBj5bvFVe(l`rYoFma1``)$7C0%#=) z3Rv0M7e&f7x|ot4d<8idAp@Bk8M6pMc^C6^m%VlF_3YHP*V8>;{nd5~F{e`7mls<} zn2zjo2!MYB|o*P6VzU$I?T@z$A;}?e1ZTuQrJ`NRD+5`ApEc4 z^LZC6mv{uwop~>B6X{@;LTBUsWCs$Z0po!da~iA64?2rJ|NIsiL71&3dgm(x>^Oc2 zm=g8hs5>J{n2^0zD~abePe~rlP`tI<_Jy`reYP`-l^PiB;q3l}VU=Abw;%KiP&%I5 zVw#vKn&}HbU;!rMQDQ>EidUcnkPI|R7ExbH1wwB~sGO2QICd2R`Lxd_QV45cCl-D4 zOW7cylr2@n_JcI9BCUeX2h6f(vPK(o2#lVTl;CD*a?C&4tPbR}WR z5zEC)8D(B`jL^N+yX4slZ$@+hX49`4Bbm_q&_$}d#1U1~QA4E8IWmwVQSveepmKGN zmj&6%fTl92F~6V4JN_Mh;F>GIdB0aETA3{kacRCV!zHuCJ&2qzOc@7cBEN6O=&hIxLLGMc^c}9Y(vrT{qw69o6 zdz{uNP$wI$^R0T|wypwy5cadW|2#tRH;~#Q=U7g8`Ko+SeOi=51AH#FjL44T{^+@83(m zt0w#-@=Tj5CT458)2YG44KRwAXUIM>1}Jg{_-q*Y_o(`;C(v)qh+#W56-vb`Gj~*n zzJ11z11(_qgBqyVvsTFf8%!3@G+tvdxABqVjv7$j2wptuEr<2i;!8{MrQp=#3LC6o~sc-nQ7+ zEl0{|NA#OTgc5eqX%ook=~y7A5wNDw?12>!2Nh5{?W!1Xv2WdX(wxSk`DgR!Fz2z~ zTLX7?4h{}3uBb%by}@4SuJdApprPV_SOfktF5D`DGbQkJIb$bF!gbcP$tnV!p~Dvx zGW+_(V?u-j^xyzlxXvNE30$5*CxxqX<`oA9J))6|k}ChQL|S6+RpJ0PFPJg179KXp zBxYYQvZkTrl6UBT37B`Rqj>#J5c1~^kkxbQ>k-C9gMEn*JU=VTm{62VU5IbX&n$ya z8&BfC!gaE4aY*JYT=|(gjFmK|=y@W`<&+!h!JN5-berK|o?3J?R!lYngIqsYBP5}! zZ!9E$d2ful%yk7e7QG`P&16POGCRi)+Pja2ufSAFp~f>sFncwVNwfQKZZYVk&Z%o+ zG6}ee2}tnHeOhd(cJce2zrXkINuQA#&S<%6(dZYB&;m5Qprr+T+_&Z|KHh$yqfB6y z(g_@N*9t~!#}u{b?(p_&Cum)-$9k+J78Ml%RUuCr88e6m%TF+c44+96at?(&Wi4oM zp9Wid%`++S%3UhgE;a%+UiI#H>s2%4dI{&^4wfSCSpLVrwQ800@Yv1V{-b4`QC}h) zWs6Cl%=@mS4!B=*@P+vbAcsw&1pGE|;7t019 zkn8E*vL+dV&_ljlO;+V+h&ag#r3diFR6TfHfmhY0tqaGocZsO)-W>t<6p*ZQu#V-sEptDFOiX2BI7jH# zh`reL6J{hRftVyL+-CXt`8#~J&4Cc0rbhPPTDMRfD`}yYs-d7e>h%Q^HMREN^?tYk zf(K-lAHoZy5Xm1jN{ZbGJH - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + - - + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/branding/static/img/custom/logo-squared.svg b/branding/static/img/custom/logo-squared.svg index 15f420c..6c12acd 100644 --- a/branding/static/img/custom/logo-squared.svg +++ b/branding/static/img/custom/logo-squared.svg @@ -1,82 +1,15 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + From 3f59926a75e43f472d560f2fe23689f314b11144 Mon Sep 17 00:00:00 2001 From: ogerly Date: Fri, 23 Sep 2022 08:53:20 +0200 Subject: [PATCH 05/12] change neo4j image path docker-compose.yml --- docker-compose.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docker-compose.yml b/docker-compose.yml index 535d485..519c9a9 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -87,7 +87,7 @@ services: ######################################################## neo4j: # name the image so that it cannot be found in a DockerHub repository, otherwise it will not be built locally from the 'dockerfile' but pulled from there - image: ocelotsocialnetwork/neo4j-community-branded:local-production + image: ocelotsocialnetwork/neo4j-community-branded:latest networks: - test-network volumes: From d14fd3f47ad39054f0b1c837c31bd6e40b277810 Mon Sep 17 00:00:00 2001 From: Alexander Friedland Date: Fri, 23 Sep 2022 09:09:56 +0200 Subject: [PATCH 06/12] Update branding/constants/links.js MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Wolfgang Huß --- branding/constants/links.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/branding/constants/links.js b/branding/constants/links.js index 4d27e96..dff55e7 100644 --- a/branding/constants/links.js +++ b/branding/constants/links.js @@ -26,7 +26,7 @@ const DONATE = defaultPageParamsPages.DONATE.overwrite({ hasContainer: true, hasBaseCard: true, hasLoginInHeader: true, - // in case internal page content is here 'webapp/locales/html/' + // in case internal page content is here 'branding/locales/html/' }, }) const IMPRINT = defaultPageParamsPages.IMPRINT.overwrite({ From 3ea522ff2a06a4cc8a9ad700ce9edf9fcd9a8747 Mon Sep 17 00:00:00 2001 From: Alexander Friedland Date: Fri, 23 Sep 2022 09:10:03 +0200 Subject: [PATCH 07/12] Update branding/constants/links.js MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Wolfgang Huß --- branding/constants/links.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/branding/constants/links.js b/branding/constants/links.js index dff55e7..65916bb 100644 --- a/branding/constants/links.js +++ b/branding/constants/links.js @@ -40,7 +40,7 @@ const IMPRINT = defaultPageParamsPages.IMPRINT.overwrite({ hasContainer: true, hasBaseCard: true, hasLoginInHeader: true, - // in case internal page content is here 'webapp/locales/html/' + // in case internal page content is here 'branding/locales/html/' }, }) const TERMS_AND_CONDITIONS = defaultPageParamsPages.TERMS_AND_CONDITIONS.overwrite({ From af6a7ee06334b83a74b0e620c31d2057ba1fe240 Mon Sep 17 00:00:00 2001 From: Alexander Friedland Date: Fri, 23 Sep 2022 09:10:10 +0200 Subject: [PATCH 08/12] Update branding/constants/links.js MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Wolfgang Huß --- branding/constants/links.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/branding/constants/links.js b/branding/constants/links.js index 65916bb..afadb77 100644 --- a/branding/constants/links.js +++ b/branding/constants/links.js @@ -53,7 +53,7 @@ const TERMS_AND_CONDITIONS = defaultPageParamsPages.TERMS_AND_CONDITIONS.overwri hasContainer: true, hasBaseCard: true, hasLoginInHeader: true, - // in case internal page content is here 'webapp/locales/html/' + // in case internal page content is here 'branding/locales/html/' }, }) const CODE_OF_CONDUCT = defaultPageParamsPages.CODE_OF_CONDUCT.overwrite({ From 5c134140f76a1657dff8837f86968b4e29a146aa Mon Sep 17 00:00:00 2001 From: Alexander Friedland Date: Fri, 23 Sep 2022 09:10:15 +0200 Subject: [PATCH 09/12] Update branding/constants/links.js MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Wolfgang Huß --- branding/constants/links.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/branding/constants/links.js b/branding/constants/links.js index afadb77..a3229c7 100644 --- a/branding/constants/links.js +++ b/branding/constants/links.js @@ -66,7 +66,7 @@ const CODE_OF_CONDUCT = defaultPageParamsPages.CODE_OF_CONDUCT.overwrite({ hasContainer: true, hasBaseCard: true, hasLoginInHeader: true, - // in case internal page content is here 'webapp/locales/html/' + // in case internal page content is here 'branding/locales/html/' }, }) const DATA_PRIVACY = defaultPageParamsPages.DATA_PRIVACY.overwrite({ From f764a5e840070252bc83a9d7bb91edf05b6756e3 Mon Sep 17 00:00:00 2001 From: Alexander Friedland Date: Fri, 23 Sep 2022 09:10:21 +0200 Subject: [PATCH 10/12] Update branding/constants/links.js MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Wolfgang Huß --- branding/constants/links.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/branding/constants/links.js b/branding/constants/links.js index a3229c7..4ce3ea1 100644 --- a/branding/constants/links.js +++ b/branding/constants/links.js @@ -79,7 +79,7 @@ const DATA_PRIVACY = defaultPageParamsPages.DATA_PRIVACY.overwrite({ hasContainer: true, hasBaseCard: true, hasLoginInHeader: true, - // in case internal page content is here 'webapp/locales/html/' + // in case internal page content is here 'branding/locales/html/' }, }) const FAQ = defaultPageParamsPages.FAQ.overwrite({ From b44ab6ff930924b952a2931570ba3c85993e3cc7 Mon Sep 17 00:00:00 2001 From: Alexander Friedland Date: Fri, 23 Sep 2022 09:10:26 +0200 Subject: [PATCH 11/12] Update branding/constants/links.js MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Wolfgang Huß --- branding/constants/links.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/branding/constants/links.js b/branding/constants/links.js index 4ce3ea1..3c67cb7 100644 --- a/branding/constants/links.js +++ b/branding/constants/links.js @@ -92,7 +92,7 @@ const FAQ = defaultPageParamsPages.FAQ.overwrite({ hasContainer: true, hasBaseCard: true, hasLoginInHeader: true, - // in case internal page content is here 'webapp/locales/html/' + // in case internal page content is here 'branding/locales/html/' }, }) const SUPPORT = defaultPageParamsPages.SUPPORT.overwrite({ From a9b1ab8e2c7e491e570d171611f8594d97973205 Mon Sep 17 00:00:00 2001 From: Alexander Friedland Date: Fri, 23 Sep 2022 09:10:31 +0200 Subject: [PATCH 12/12] Update branding/constants/links.js MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Wolfgang Huß --- branding/constants/links.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/branding/constants/links.js b/branding/constants/links.js index 3c67cb7..7e89159 100644 --- a/branding/constants/links.js +++ b/branding/constants/links.js @@ -105,7 +105,7 @@ const SUPPORT = defaultPageParamsPages.SUPPORT.overwrite({ hasContainer: true, hasBaseCard: true, hasLoginInHeader: true, - // in case internal page content is here 'webapp/locales/html/' + // in case internal page content is here 'branding/locales/html/' }, })