From 9cfc90ca67f5f46882ed21b460a01b6d50ffa79c Mon Sep 17 00:00:00 2001 From: Tayane Fernandes Date: Tue, 7 Feb 2017 14:19:13 -0200 Subject: [#922] Add i18n translations for react with @anikarni --- web-ui/app/js/account_recovery.js | 9 ++++++-- web-ui/app/js/account_recovery/i18n.js | 41 ++++++++++++++++++++++++++++++++++ web-ui/app/js/account_recovery/page.js | 7 +++--- 3 files changed, 52 insertions(+), 5 deletions(-) create mode 100644 web-ui/app/js/account_recovery/i18n.js (limited to 'web-ui/app') diff --git a/web-ui/app/js/account_recovery.js b/web-ui/app/js/account_recovery.js index 441a8936..cd01378d 100644 --- a/web-ui/app/js/account_recovery.js +++ b/web-ui/app/js/account_recovery.js @@ -1,13 +1,18 @@ import React from 'react' import { render } from 'react-dom' -import Page from 'js/account_recovery/page' import a11y from 'react-a11y' +import { I18nextProvider } from 'react-i18next' + +import Page from 'js/account_recovery/page' +import i18n from 'js/account_recovery/i18n' import 'font-awesome/scss/font-awesome.scss' if(process.env.NODE_ENV === 'development') a11y(React); render( - , + + + , document.getElementById('root') ); diff --git a/web-ui/app/js/account_recovery/i18n.js b/web-ui/app/js/account_recovery/i18n.js new file mode 100644 index 00000000..968f7a6b --- /dev/null +++ b/web-ui/app/js/account_recovery/i18n.js @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2017 ThoughtWorks, Inc. + * + * Pixelated is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * Pixelated 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 Affero General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public License + * along with Pixelated. If not, see . + */ +import i18n from 'i18next' +import i18nBackend from 'i18nextXHRBackend' +import i18nDetector from 'i18nextBrowserLanguageDetector' + +const detector = new i18nDetector(); +const detect = detector.detect.bind(detector); + +detector.detect = function(detectionOrder) { + let result = detect(detectionOrder); + return result.replace('-', '_'); +}; + +i18n + .use(i18nBackend) + .use(detector) + .init({ + fallbackLng: 'en_US', + ns: ['translation'], + defaultNS: 'translation', + backend: { + loadPath: 'assets/locales/{{lng}}/{{ns}}.json' + } + }); + +export default i18n; diff --git a/web-ui/app/js/account_recovery/page.js b/web-ui/app/js/account_recovery/page.js index 5d4f2c36..90cdb54f 100644 --- a/web-ui/app/js/account_recovery/page.js +++ b/web-ui/app/js/account_recovery/page.js @@ -1,8 +1,9 @@ import React from 'react' +import { translate } from 'react-i18next' import 'scss/account_recovery/page.scss' -const Page = () => ( +const Page = (props) => (
Esqueci minha senha!
@@ -22,6 +23,6 @@ const Page = () => (
-); +) -export default Page +export default translate('', { wait: true })(Page) -- cgit v1.2.3 From ebd5b3adce44a16213e5c1ec763a642899eba908 Mon Sep 17 00:00:00 2001 From: Tayane Fernandes Date: Tue, 7 Feb 2017 15:16:00 -0200 Subject: [#922] Add translation for Portuguese and English --- web-ui/app/js/account_recovery/i18n.js | 2 -- web-ui/app/js/account_recovery/page.js | 16 ++++++++-------- web-ui/app/locales/en_US/translation.json | 11 ++++++++++- web-ui/app/locales/pt_BR/translation.json | 11 ++++++++++- 4 files changed, 28 insertions(+), 12 deletions(-) (limited to 'web-ui/app') diff --git a/web-ui/app/js/account_recovery/i18n.js b/web-ui/app/js/account_recovery/i18n.js index 968f7a6b..9c6ad550 100644 --- a/web-ui/app/js/account_recovery/i18n.js +++ b/web-ui/app/js/account_recovery/i18n.js @@ -31,8 +31,6 @@ i18n .use(detector) .init({ fallbackLng: 'en_US', - ns: ['translation'], - defaultNS: 'translation', backend: { loadPath: 'assets/locales/{{lng}}/{{ns}}.json' } diff --git a/web-ui/app/js/account_recovery/page.js b/web-ui/app/js/account_recovery/page.js index 90cdb54f..a94c2c45 100644 --- a/web-ui/app/js/account_recovery/page.js +++ b/web-ui/app/js/account_recovery/page.js @@ -3,22 +3,22 @@ import { translate } from 'react-i18next' import 'scss/account_recovery/page.scss' -const Page = (props) => ( +export const Page = ({ t }) => (
- Esqueci minha senha! + {t('backup-account.image-description')}/
-

E se você esquecer sua senha?

-

Informe outro e-mail que você usa regularmente. Esse será o seu e-mail de recuperação.

-

Instruções para recuperar sua senha serão enviadas para esse e-mail, guarde com carinho.

+

{t('backup-account.title')}

+

{t('backup-account.paragraph1')}

+

{t('backup-account.paragraph2')}

- +
- +
diff --git a/web-ui/app/locales/en_US/translation.json b/web-ui/app/locales/en_US/translation.json index 6e2cef80..db018db4 100644 --- a/web-ui/app/locales/en_US/translation.json +++ b/web-ui/app/locales/en_US/translation.json @@ -73,5 +73,14 @@ "trash": "Trash", "all": "All", "tags": "Tags" - } + }, + "backup-account": { + "image-description": "Forgot my password!", + "title": "What if you forget your password?", + "paragraph1": "You will need a backup account. Choose an alternative email address you use regularly.", + "paragraph2": "Instructions to recover your password will be sent to this email address, save it.", + "input-label": "Type your backup account", + "button": "Add Account" + }, + "back-to-inbox": "Back to my inbox" } diff --git a/web-ui/app/locales/pt_BR/translation.json b/web-ui/app/locales/pt_BR/translation.json index d1ab7245..87b2655e 100644 --- a/web-ui/app/locales/pt_BR/translation.json +++ b/web-ui/app/locales/pt_BR/translation.json @@ -73,5 +73,14 @@ "trash": "Lixeira", "all": "Todas", "tags": "Etiquetas" - } + }, + "backup-account": { + "image-description": "Esqueci minha senha!", + "title": "E se você esquecer sua senha?", + "paragraph1": "Informe outro e-mail que você usa regularmente. Esse será o seu e-mail de recuperação.", + "paragraph2": "Instruções para recuperar sua senha serão enviadas para esse e-mail, guarde com carinho.", + "input-label": "Digite seu e-mail de recuperação.", + "button": "Adicionar e-mail" + }, + "back-to-inbox": "Voltar" } -- cgit v1.2.3 From bc922deb23a72d6ca1bf4c39efd1d7366baa9a84 Mon Sep 17 00:00:00 2001 From: Tayane Fernandes Date: Tue, 7 Feb 2017 17:39:09 -0200 Subject: [#922] Refactoring react folder structure with @anikarni --- web-ui/app/account_recovery.html | 12 -- web-ui/app/js/account_recovery.js | 18 --- web-ui/app/js/account_recovery/i18n.js | 39 ------- web-ui/app/js/account_recovery/page.js | 28 ----- web-ui/app/scss/account_recovery/page.scss | 176 ----------------------------- 5 files changed, 273 deletions(-) delete mode 100644 web-ui/app/account_recovery.html delete mode 100644 web-ui/app/js/account_recovery.js delete mode 100644 web-ui/app/js/account_recovery/i18n.js delete mode 100644 web-ui/app/js/account_recovery/page.js delete mode 100644 web-ui/app/scss/account_recovery/page.scss (limited to 'web-ui/app') diff --git a/web-ui/app/account_recovery.html b/web-ui/app/account_recovery.html deleted file mode 100644 index bd451ebc..00000000 --- a/web-ui/app/account_recovery.html +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - Pixelated Account Recovery - - -
- - - diff --git a/web-ui/app/js/account_recovery.js b/web-ui/app/js/account_recovery.js deleted file mode 100644 index cd01378d..00000000 --- a/web-ui/app/js/account_recovery.js +++ /dev/null @@ -1,18 +0,0 @@ -import React from 'react' -import { render } from 'react-dom' -import a11y from 'react-a11y' -import { I18nextProvider } from 'react-i18next' - -import Page from 'js/account_recovery/page' -import i18n from 'js/account_recovery/i18n' - -import 'font-awesome/scss/font-awesome.scss' - -if(process.env.NODE_ENV === 'development') a11y(React); - -render( - - - , - document.getElementById('root') -); diff --git a/web-ui/app/js/account_recovery/i18n.js b/web-ui/app/js/account_recovery/i18n.js deleted file mode 100644 index 9c6ad550..00000000 --- a/web-ui/app/js/account_recovery/i18n.js +++ /dev/null @@ -1,39 +0,0 @@ -/* - * Copyright (c) 2017 ThoughtWorks, Inc. - * - * Pixelated is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * Pixelated 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 Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with Pixelated. If not, see . - */ -import i18n from 'i18next' -import i18nBackend from 'i18nextXHRBackend' -import i18nDetector from 'i18nextBrowserLanguageDetector' - -const detector = new i18nDetector(); -const detect = detector.detect.bind(detector); - -detector.detect = function(detectionOrder) { - let result = detect(detectionOrder); - return result.replace('-', '_'); -}; - -i18n - .use(i18nBackend) - .use(detector) - .init({ - fallbackLng: 'en_US', - backend: { - loadPath: 'assets/locales/{{lng}}/{{ns}}.json' - } - }); - -export default i18n; diff --git a/web-ui/app/js/account_recovery/page.js b/web-ui/app/js/account_recovery/page.js deleted file mode 100644 index a94c2c45..00000000 --- a/web-ui/app/js/account_recovery/page.js +++ /dev/null @@ -1,28 +0,0 @@ -import React from 'react' -import { translate } from 'react-i18next' - -import 'scss/account_recovery/page.scss' - -export const Page = ({ t }) => ( -
- {t('backup-account.image-description')}/ -
-

{t('backup-account.title')}

-

{t('backup-account.paragraph1')}

-

{t('backup-account.paragraph2')}

-
- - -
- - -
-
-) - -export default translate('', { wait: true })(Page) diff --git a/web-ui/app/scss/account_recovery/page.scss b/web-ui/app/scss/account_recovery/page.scss deleted file mode 100644 index 8bba1b5a..00000000 --- a/web-ui/app/scss/account_recovery/page.scss +++ /dev/null @@ -1,176 +0,0 @@ -@import "../vendor/reset"; -@import "../base/colors"; -@import "../base/fonts"; - -html { - min-height: 100%; -} - -body { - font-family: "Open Sans", "Microsoft YaHei", "Hiragino Sans GB", "Hiragino Sans GB W3", "微软雅黑", "Helvetica Neue", Arial, sans-serif; - background: $dark_blue; /* For browsers that do not support gradients */ - background: -webkit-linear-gradient(left top, $dark_blue, $middle_blue); /* For Safari 5.1 to 6.0 */ - background: -o-linear-gradient(bottom right, $dark_blue, $middle_blue); /* For Opera 11.1 to 12.0 */ - background: -moz-linear-gradient(bottom right, $dark_blue, $middle_blue); /* For Firefox 3.6 to 15 */ - background: linear-gradient(to bottom right, $dark_blue, $middle_blue); /* Standard syntax */ - color: $dark_grey_text; - min-height: 100%; -} - -h1 { - font-size: 1.3em; - font-weight: 600; -} - -p { - -webkit-margin-before: 0.5em; - -webkit-margin-after: 0.5em; - margin-before: 0.5em; - margin-after: 0.5em; -} - -a { - text-decoration: none; - color: $dark_blue; - font-style: italic; - - .fa { - font-size: 1.6em; - position: relative; - top: 3px; - margin-right: 0.3em; - } - -} - -.field-group { - position:relative; - margin: 1.5em 0; - width: 100%; - - label { - font-size: 0.9em; - margin-bottom: 10px; - display: inline-block; - } - - input { - display: block; - border: none; - border-bottom: solid 1px #4da3b6; - width: 100%; - height: auto; - padding: 0.3em 0px; - } - - input:focus { - outline:none; - border-width: 2px; - } - - input:focus ~ .animated-label, input:valid ~ .animated-label { - top:-12px; - left: 0; - font-size:0.7em; - color:#4da3b6; - } - - .animated-label { - color:#999; - position:absolute; - pointer-events:none; - left: 6px; - top:10px; - transition:0.2s ease all; - -moz-transition:0.2s ease all; - -webkit-transition:0.2s ease all; - } -} - - -button { - background: $dark_blue; - padding: 0.8em; - color: $white; - text-align: center; - border: none; - border-radius: 2px; - font-weight: 300; - width: 100%; - margin-bottom: 1em; -} - -.container { - background: $white; - width: 84%; - margin: 3% auto; - padding: 6% 5%; - - -webkit-display: flex; - display: flex; - -webkit-align-items: flex-start; - align-items: flex-start; - -webkit-flex-direction: column; - flex-direction: column; -} - -img { - width: 50%; - -webkit-align-self: center; - align-self: center; -} - -@media only screen and (min-width : 500px) { - body { - font-size: 1.3em; - } - - form { - display: flex; - -webkit-display: flex; - -webkit-flex-direction: column; - flex-direction: column; - - .field-group, button, div { - width: 70%; - -webkit-align-self: center; - align-self: center; - } - } -} - -@media only screen and (min-width : 960px) { - .container{ - width: 60%; - padding: 3%; - -webkit-align-items: flex-start; - align-items: flex-start; - -webkit-flex-direction: row; - flex-direction: row; - max-width: 700px; - } - - form { - margin-left: 2.5em; - - .field-group, button, div { - width: 300px; - -webkit-align-self: flex-start; - align-self: flex-start; - } - - .field-group { - margin-top: 3em; - font-size: 1em; - } - } - - img { - width: 300px; - } - - button { - font-size: 0.8em; - margin-bottom: 1em; - } -} -- cgit v1.2.3 From ad7ad7c7f781706b25b29c80c642006a4d18411a Mon Sep 17 00:00:00 2001 From: Anike Arni Date: Wed, 8 Feb 2017 16:05:44 -0200 Subject: [#922] Create footer with @tayanefernandes --- web-ui/app/images/lab.svg | 9 +++++++++ web-ui/app/locales/en_US/translation.json | 3 ++- web-ui/app/locales/pt_BR/translation.json | 5 +++-- web-ui/app/scss/base/_colors.scss | 1 + 4 files changed, 15 insertions(+), 3 deletions(-) create mode 100644 web-ui/app/images/lab.svg (limited to 'web-ui/app') diff --git a/web-ui/app/images/lab.svg b/web-ui/app/images/lab.svg new file mode 100644 index 00000000..407a5dce --- /dev/null +++ b/web-ui/app/images/lab.svg @@ -0,0 +1,9 @@ + + + Created with Sketch. + + + + + + diff --git a/web-ui/app/locales/en_US/translation.json b/web-ui/app/locales/en_US/translation.json index db018db4..6bedd5d5 100644 --- a/web-ui/app/locales/en_US/translation.json +++ b/web-ui/app/locales/en_US/translation.json @@ -82,5 +82,6 @@ "input-label": "Type your backup account", "button": "Add Account" }, - "back-to-inbox": "Back to my inbox" + "back-to-inbox": "Back to my inbox", + "footer-text": "Product in development. Feedback and issues to" } diff --git a/web-ui/app/locales/pt_BR/translation.json b/web-ui/app/locales/pt_BR/translation.json index 87b2655e..20e6e269 100644 --- a/web-ui/app/locales/pt_BR/translation.json +++ b/web-ui/app/locales/pt_BR/translation.json @@ -79,8 +79,9 @@ "title": "E se você esquecer sua senha?", "paragraph1": "Informe outro e-mail que você usa regularmente. Esse será o seu e-mail de recuperação.", "paragraph2": "Instruções para recuperar sua senha serão enviadas para esse e-mail, guarde com carinho.", - "input-label": "Digite seu e-mail de recuperação.", + "input-label": "Digite seu e-mail de recuperação", "button": "Adicionar e-mail" }, - "back-to-inbox": "Voltar" + "back-to-inbox": "Voltar", + "footer-text": "Produto em desenvolvimento. Reporte problemas através do" } diff --git a/web-ui/app/scss/base/_colors.scss b/web-ui/app/scss/base/_colors.scss index e79781cf..c7807e8f 100644 --- a/web-ui/app/scss/base/_colors.scss +++ b/web-ui/app/scss/base/_colors.scss @@ -42,6 +42,7 @@ $dark_grey_text: #4a4a4a; $background_light_grey: #F5F5F5; $border_light_grey: #D9D9D9; +$shadow: rgba(0,0,0,0.10); /* Feedback to Users */ $warning: #F7E8AF; -- cgit v1.2.3 From b9d0bea9e6688abfbbc919f90009f59ed153e7fb Mon Sep 17 00:00:00 2001 From: Anike Arni Date: Wed, 8 Feb 2017 16:41:04 -0200 Subject: [#922] Applies changes compatible with firefox with @tayanefernandes --- web-ui/app/images/forgot-my-password.svg | 255 +++++++++++++------------------ 1 file changed, 110 insertions(+), 145 deletions(-) (limited to 'web-ui/app') diff --git a/web-ui/app/images/forgot-my-password.svg b/web-ui/app/images/forgot-my-password.svg index 6dc329e7..ec7b6028 100644 --- a/web-ui/app/images/forgot-my-password.svg +++ b/web-ui/app/images/forgot-my-password.svg @@ -1,154 +1,119 @@ - - + - forgot my password Created with Sketch. - - + + - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - \ No newline at end of file + -- cgit v1.2.3 From 960d979de666a4a8edb42fb591b5443228a97803 Mon Sep 17 00:00:00 2001 From: Tayane Fernandes Date: Thu, 9 Feb 2017 16:19:12 -0200 Subject: [#922] Add dynamic page title with @anikarni --- web-ui/app/locales/en_US/translation.json | 1 + web-ui/app/locales/pt_BR/translation.json | 1 + 2 files changed, 2 insertions(+) (limited to 'web-ui/app') diff --git a/web-ui/app/locales/en_US/translation.json b/web-ui/app/locales/en_US/translation.json index 6bedd5d5..7252d1d7 100644 --- a/web-ui/app/locales/en_US/translation.json +++ b/web-ui/app/locales/en_US/translation.json @@ -75,6 +75,7 @@ "tags": "Tags" }, "backup-account": { + "page-title": "Pixelated Backup Account", "image-description": "Forgot my password!", "title": "What if you forget your password?", "paragraph1": "You will need a backup account. Choose an alternative email address you use regularly.", diff --git a/web-ui/app/locales/pt_BR/translation.json b/web-ui/app/locales/pt_BR/translation.json index 20e6e269..9a4393fa 100644 --- a/web-ui/app/locales/pt_BR/translation.json +++ b/web-ui/app/locales/pt_BR/translation.json @@ -75,6 +75,7 @@ "tags": "Etiquetas" }, "backup-account": { + "page-title": "Pixelated E-mail de Recuperação", "image-description": "Esqueci minha senha!", "title": "E se você esquecer sua senha?", "paragraph1": "Informe outro e-mail que você usa regularmente. Esse será o seu e-mail de recuperação.", -- cgit v1.2.3 From 0b966e696c6a99f825510d406008fc9b9936077e Mon Sep 17 00:00:00 2001 From: Tulio Casagrande Date: Mon, 13 Feb 2017 18:43:15 -0200 Subject: [#907] Convert login page to react with @anikarni --- web-ui/app/images/hive-bg.png | Bin 0 -> 3356 bytes web-ui/app/images/logo-orange.svg | 29 +++++++++++++++++++++++++++++ 2 files changed, 29 insertions(+) create mode 100644 web-ui/app/images/hive-bg.png create mode 100644 web-ui/app/images/logo-orange.svg (limited to 'web-ui/app') diff --git a/web-ui/app/images/hive-bg.png b/web-ui/app/images/hive-bg.png new file mode 100644 index 00000000..77316967 Binary files /dev/null and b/web-ui/app/images/hive-bg.png differ diff --git a/web-ui/app/images/logo-orange.svg b/web-ui/app/images/logo-orange.svg new file mode 100644 index 00000000..7e0ef43d --- /dev/null +++ b/web-ui/app/images/logo-orange.svg @@ -0,0 +1,29 @@ + + + + + + + + + + + + + + + + -- cgit v1.2.3 From 957599ae01687d6b3d02a3c34fdbe2ac6bd920f9 Mon Sep 17 00:00:00 2001 From: Anike Arni Date: Thu, 16 Feb 2017 18:51:26 -0200 Subject: [#907] Bundles login static files separately Due to conflicts with public and protected urls, login and interstitial files have to be on a different public url from inbox and resources that require login. Therefore, here, we delegate that logic to webpack. Now we have a '/public' url and a '/assets' url for those static assets. --- web-ui/app/index.html | 34 +++++++++++++++++----------------- web-ui/app/js/page/default.js | 2 +- web-ui/app/sandbox.html | 2 +- web-ui/app/scss/base/_fonts.scss | 23 +++++++++++------------ 4 files changed, 30 insertions(+), 31 deletions(-) (limited to 'web-ui/app') diff --git a/web-ui/app/index.html b/web-ui/app/index.html index b40aecdf..72b04c83 100644 --- a/web-ui/app/index.html +++ b/web-ui/app/index.html @@ -1,15 +1,15 @@ - + $account_email - Pixelated Mail - - - + + + @@ -92,19 +92,19 @@
- - - - - - - - - - - - - + + + + + + + + + + + + + diff --git a/web-ui/app/js/page/default.js b/web-ui/app/js/page/default.js index ecaedfd8..541bb4b7 100644 --- a/web-ui/app/js/page/default.js +++ b/web-ui/app/js/page/default.js @@ -96,7 +96,7 @@ define( 'use strict'; function initialize(path) { - viewI18n.init(path + '/assets/'); + viewI18n.init(path + '/public/'); viewI18n.loaded(function() { paneContractExpand.attachTo(document); diff --git a/web-ui/app/sandbox.html b/web-ui/app/sandbox.html index 3e110977..52da1f5b 100644 --- a/web-ui/app/sandbox.html +++ b/web-ui/app/sandbox.html @@ -6,7 +6,7 @@ - + diff --git a/web-ui/app/scss/base/_fonts.scss b/web-ui/app/scss/base/_fonts.scss index dfc56dd8..9a47b5ed 100644 --- a/web-ui/app/scss/base/_fonts.scss +++ b/web-ui/app/scss/base/_fonts.scss @@ -2,67 +2,66 @@ font-family: 'Open Sans'; font-style: normal; font-weight: 300; - src: local('Open Sans Light'), local('OpenSans-Light'), url('/assets/fonts/OpenSans-Light.woff') format('woff'); + src: local('Open Sans Light'), local('OpenSans-Light'), url('/public/fonts/OpenSans-Light.woff') format('woff'); } @font-face { font-family: 'Open Sans'; font-style: normal; font-weight: 400; - src: local('Open Sans'), local('OpenSans'), url('/assets/fonts/OpenSans.woff') format('woff'); + src: local('Open Sans'), local('OpenSans'), url('/public/fonts/OpenSans.woff') format('woff'); } @font-face { font-family: 'Open Sans'; font-style: normal; font-weight: 600; - src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url('/assets/fonts/OpenSans-Semibold.woff') format('woff'); + src: local('Open Sans Semibold'), local('OpenSans-Semibold'), url('/public/fonts/OpenSans-Semibold.woff') format('woff'); } @font-face { font-family: 'Open Sans'; font-style: normal; font-weight: 700; - src: local('Open Sans Bold'), local('OpenSans-Bold'), url('/assets/fonts/OpenSans-Bold.woff') format('woff'); + src: local('Open Sans Bold'), local('OpenSans-Bold'), url('/public/fonts/OpenSans-Bold.woff') format('woff'); } @font-face { font-family: 'Open Sans'; font-style: normal; font-weight: 800; - src: local('Open Sans Extrabold'), local('OpenSans-Extrabold'), url('/assets/fonts/OpenSans-Extrabold.woff') format('woff'); + src: local('Open Sans Extrabold'), local('OpenSans-Extrabold'), url('/public/fonts/OpenSans-Extrabold.woff') format('woff'); } @font-face { font-family: 'Open Sans'; font-style: italic; font-weight: 300; - src: local('Open Sans Light Italic'), local('OpenSansLight-Italic'), url('/assets/fonts/OpenSansLight-Italic.woff') format('woff'); + src: local('Open Sans Light Italic'), local('OpenSansLight-Italic'), url('/public/fonts/OpenSansLight-Italic.woff') format('woff'); } @font-face { font-family: 'Open Sans'; font-style: italic; font-weight: 400; - src: local('Open Sans Italic'), local('OpenSans-Italic'), url('/assets/fonts/OpenSans-Italic.woff') format('woff'); + src: local('Open Sans Italic'), local('OpenSans-Italic'), url('/public/fonts/OpenSans-Italic.woff') format('woff'); } @font-face { font-family: 'Open Sans'; font-style: italic; font-weight: 600; - src: local('Open Sans Semibold Italic'), local('OpenSans-SemiboldItalic'), url('/assets/fonts/OpenSans-SemiboldItalic.woff') format('woff'); + src: local('Open Sans Semibold Italic'), local('OpenSans-SemiboldItalic'), url('/public/fonts/OpenSans-SemiboldItalic.woff') format('woff'); } @font-face { font-family: 'Open Sans'; font-style: italic; font-weight: 700; - src: local('Open Sans Bold Italic'), local('OpenSans-BoldItalic'), url('/assets/fonts/OpenSans-BoldItalic.woff') format('woff'); + src: local('Open Sans Bold Italic'), local('OpenSans-BoldItalic'), url('/public/fonts/OpenSans-BoldItalic.woff') format('woff'); } @font-face { font-family: 'Open Sans'; font-style: italic; font-weight: 800; - src: local('Open Sans Extrabold Italic'), local('OpenSans-ExtraboldItalic'), url('/assets/fonts/OpenSans-ExtraboldItalic.woff') format('woff'); + src: local('Open Sans Extrabold Italic'), local('OpenSans-ExtraboldItalic'), url('/public/fonts/OpenSans-ExtraboldItalic.woff') format('woff'); } @font-face { font-family: 'icomoon'; font-style: normal; font-weight: 400; - src: url('/assets/fonts/icomoon.woff') format('woff'), url('/assets/fonts/icomoon.ttf') format('truetype'), ; + src: url('/public/fonts/icomoon.woff') format('woff'), url('/public/fonts/icomoon.ttf') format('truetype'), ; } - -- cgit v1.2.3 From d7dbc1dc61f74f7bd74464bda5e4e0051f062352 Mon Sep 17 00:00:00 2001 From: Anike Arni Date: Wed, 15 Feb 2017 11:43:58 -0200 Subject: [#907] Translates login page to pt_BR --- web-ui/app/locales/en_US/translation.json | 7 ++++++- web-ui/app/locales/pt_BR/translation.json | 7 ++++++- 2 files changed, 12 insertions(+), 2 deletions(-) (limited to 'web-ui/app') diff --git a/web-ui/app/locales/en_US/translation.json b/web-ui/app/locales/en_US/translation.json index 7252d1d7..ffbce321 100644 --- a/web-ui/app/locales/en_US/translation.json +++ b/web-ui/app/locales/en_US/translation.json @@ -84,5 +84,10 @@ "button": "Add Account" }, "back-to-inbox": "Back to my inbox", - "footer-text": "Product in development. Feedback and issues to" + "footer-text": "Product in development. Feedback and issues to", + "login": { + "email": "Your email", + "password": "Your password", + "submit": "Login" + } } diff --git a/web-ui/app/locales/pt_BR/translation.json b/web-ui/app/locales/pt_BR/translation.json index 9a4393fa..45d4a210 100644 --- a/web-ui/app/locales/pt_BR/translation.json +++ b/web-ui/app/locales/pt_BR/translation.json @@ -84,5 +84,10 @@ "button": "Adicionar e-mail" }, "back-to-inbox": "Voltar", - "footer-text": "Produto em desenvolvimento. Reporte problemas através do" + "footer-text": "Produto em desenvolvimento. Reporte problemas através do", + "login": { + "email": "Seu e-mail", + "password": "Sua senha", + "submit": "Entrar" + } } -- cgit v1.2.3 From 0c5bbc3a1e104512172221851262b81602a44df8 Mon Sep 17 00:00:00 2001 From: Anike Arni Date: Thu, 16 Feb 2017 13:49:34 -0200 Subject: [#907] Fix font and favicon urls --- web-ui/app/index.html | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'web-ui/app') diff --git a/web-ui/app/index.html b/web-ui/app/index.html index 72b04c83..ac4189e1 100644 --- a/web-ui/app/index.html +++ b/web-ui/app/index.html @@ -1,7 +1,7 @@ - + $account_email - Pixelated Mail @@ -25,15 +25,15 @@ - - - - -- cgit v1.2.3 From fa21608801f8d2ef710d4c28abbb558883afeaf7 Mon Sep 17 00:00:00 2001 From: Tulio Casagrande Date: Mon, 20 Feb 2017 14:37:37 -0300 Subject: [#907] Translate auth error message on login with @anikarni --- web-ui/app/locales/en_US/translation.json | 3 ++- web-ui/app/locales/pt_BR/translation.json | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) (limited to 'web-ui/app') diff --git a/web-ui/app/locales/en_US/translation.json b/web-ui/app/locales/en_US/translation.json index ffbce321..7aad4fe8 100644 --- a/web-ui/app/locales/en_US/translation.json +++ b/web-ui/app/locales/en_US/translation.json @@ -64,7 +64,8 @@ "error": { "timeout": "A timeout occurred", "general": "Problems talking to server", - "parse": "Got invalid response from server" + "parse": "Got invalid response from server", + "auth": "Invalid email or password" }, "tags": { "inbox": "Inbox", diff --git a/web-ui/app/locales/pt_BR/translation.json b/web-ui/app/locales/pt_BR/translation.json index 45d4a210..b38b7535 100644 --- a/web-ui/app/locales/pt_BR/translation.json +++ b/web-ui/app/locales/pt_BR/translation.json @@ -64,7 +64,8 @@ "error": { "timeout": "A operação excedeu o limite de tempo", "general": "Problemas ao se comunicar com o servidor", - "parse": "Obteve uma resposta inválida do servidor" + "parse": "Obteve uma resposta inválida do servidor", + "auth": "E-mail ou senha inválidos" }, "tags": { "inbox": "Caixa de Entrada", -- cgit v1.2.3 From f7bd078bcce2d6cad419fceb55ab71415cda4d33 Mon Sep 17 00:00:00 2001 From: Tulio Casagrande Date: Tue, 21 Feb 2017 13:51:41 -0300 Subject: [#907] Display error message for mobile version with @anikarni --- web-ui/app/images/dead-mail.svg | 30 ++++++++++++++++++++++++++++++ web-ui/app/locales/en_US/translation.json | 6 +++++- web-ui/app/locales/pt_BR/translation.json | 6 +++++- 3 files changed, 40 insertions(+), 2 deletions(-) create mode 100644 web-ui/app/images/dead-mail.svg (limited to 'web-ui/app') diff --git a/web-ui/app/images/dead-mail.svg b/web-ui/app/images/dead-mail.svg new file mode 100644 index 00000000..0dc673e2 --- /dev/null +++ b/web-ui/app/images/dead-mail.svg @@ -0,0 +1,30 @@ + + + Created with Sketch. + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web-ui/app/locales/en_US/translation.json b/web-ui/app/locales/en_US/translation.json index 7aad4fe8..f42a612d 100644 --- a/web-ui/app/locales/en_US/translation.json +++ b/web-ui/app/locales/en_US/translation.json @@ -65,7 +65,11 @@ "timeout": "A timeout occurred", "general": "Problems talking to server", "parse": "Got invalid response from server", - "auth": "Invalid email or password" + "auth": "Invalid email or password", + "login": { + "title": "Oh, something went wrong :(", + "message": "Try to login again in a few minutes. If the problem persists, contact your account administrator." + } }, "tags": { "inbox": "Inbox", diff --git a/web-ui/app/locales/pt_BR/translation.json b/web-ui/app/locales/pt_BR/translation.json index b38b7535..336784be 100644 --- a/web-ui/app/locales/pt_BR/translation.json +++ b/web-ui/app/locales/pt_BR/translation.json @@ -65,7 +65,11 @@ "timeout": "A operação excedeu o limite de tempo", "general": "Problemas ao se comunicar com o servidor", "parse": "Obteve uma resposta inválida do servidor", - "auth": "E-mail ou senha inválidos" + "auth": "E-mail ou senha inválidos", + "login": { + "title": "Ops, algo deu errado :(", + "message": "Tente entrar novamente em alguns minutos. Se o problema persistir, contate o administrador da sua conta." + } }, "tags": { "inbox": "Caixa de Entrada", -- cgit v1.2.3 From 38c73f2e67173d5358dd4bb7e17b1e5b9c283f22 Mon Sep 17 00:00:00 2001 From: Anike Arni Date: Wed, 22 Feb 2017 10:52:52 -0300 Subject: [#907] Add pixelated welcome message to login with @tuliocasagrande and @thaissiqueira --- web-ui/app/images/welcome.svg | 91 +++++++++++++++++++++++++++++++ web-ui/app/locales/en_US/translation.json | 4 +- 2 files changed, 94 insertions(+), 1 deletion(-) create mode 100644 web-ui/app/images/welcome.svg (limited to 'web-ui/app') diff --git a/web-ui/app/images/welcome.svg b/web-ui/app/images/welcome.svg new file mode 100644 index 00000000..3f655b85 --- /dev/null +++ b/web-ui/app/images/welcome.svg @@ -0,0 +1,91 @@ + + + Created with Sketch. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web-ui/app/locales/en_US/translation.json b/web-ui/app/locales/en_US/translation.json index f42a612d..3f050e67 100644 --- a/web-ui/app/locales/en_US/translation.json +++ b/web-ui/app/locales/en_US/translation.json @@ -93,6 +93,8 @@ "login": { "email": "Your email", "password": "Your password", - "submit": "Login" + "submit": "Login", + "welcome-image-alt": "Welcome image", + "welcome-message": "Pixelated is an email that respects the privacy of your information." } } -- cgit v1.2.3 From f25be937af22146f5ef83b81d73453f2fb536c50 Mon Sep 17 00:00:00 2001 From: Anike Arni Date: Wed, 22 Feb 2017 15:19:42 -0300 Subject: [#907] Adds portuguese translations for welcome message with @SweetVirginia --- web-ui/app/locales/pt_BR/translation.json | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'web-ui/app') diff --git a/web-ui/app/locales/pt_BR/translation.json b/web-ui/app/locales/pt_BR/translation.json index 336784be..431b8f82 100644 --- a/web-ui/app/locales/pt_BR/translation.json +++ b/web-ui/app/locales/pt_BR/translation.json @@ -93,6 +93,8 @@ "login": { "email": "Seu e-mail", "password": "Sua senha", - "submit": "Entrar" + "submit": "Entrar", + "welcome-image-alt": "Imagem de boas vindas", + "welcome-message": "Pixelated é um e-mail que respeita a privacidade da sua informação." } } -- cgit v1.2.3 From 3c1cf6548939d164c4296eeaf637ec4a9901b0f4 Mon Sep 17 00:00:00 2001 From: Tayane Fernandes Date: Fri, 10 Mar 2017 16:11:07 -0300 Subject: [#923] Add translation for the validation error @FrailWords --- web-ui/app/locales/en_US/translation.json | 5 ++++- web-ui/app/locales/pt_BR/translation.json | 5 ++++- 2 files changed, 8 insertions(+), 2 deletions(-) (limited to 'web-ui/app') diff --git a/web-ui/app/locales/en_US/translation.json b/web-ui/app/locales/en_US/translation.json index 3f050e67..9df1867e 100644 --- a/web-ui/app/locales/en_US/translation.json +++ b/web-ui/app/locales/en_US/translation.json @@ -86,7 +86,10 @@ "paragraph1": "You will need a backup account. Choose an alternative email address you use regularly.", "paragraph2": "Instructions to recover your password will be sent to this email address, save it.", "input-label": "Type your backup account", - "button": "Add Account" + "button": "Add Account", + "error": { + "invalid-email": "Please enter a valid email address" + } }, "back-to-inbox": "Back to my inbox", "footer-text": "Product in development. Feedback and issues to", diff --git a/web-ui/app/locales/pt_BR/translation.json b/web-ui/app/locales/pt_BR/translation.json index 431b8f82..ac4fe10d 100644 --- a/web-ui/app/locales/pt_BR/translation.json +++ b/web-ui/app/locales/pt_BR/translation.json @@ -86,7 +86,10 @@ "paragraph1": "Informe outro e-mail que você usa regularmente. Esse será o seu e-mail de recuperação.", "paragraph2": "Instruções para recuperar sua senha serão enviadas para esse e-mail, guarde com carinho.", "input-label": "Digite seu e-mail de recuperação", - "button": "Adicionar e-mail" + "button": "Adicionar e-mail", + "error": { + "invalid-email": "Por favor informe um e-mail válido" + } }, "back-to-inbox": "Voltar", "footer-text": "Produto em desenvolvimento. Reporte problemas através do", -- cgit v1.2.3