From 48a07d4008a9ef54a64e5415c900f6aa097ec2c4 Mon Sep 17 00:00:00 2001 From: Max Helmetag Date: Wed, 30 Oct 2019 00:40:31 -0700 Subject: [PATCH 01/20] remove old admin panel warning --- CONTRIBUTING.md | 11 +---------- 1 file changed, 1 insertion(+), 10 deletions(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index f02f223283..e10268beb5 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -88,16 +88,7 @@ yarn develop The server (API) is available at http://localhost:1337 -**WARNING** ⚠️ If you've followed the recommended setup, you should not be able to reach the administration panel at http://localhost:1337/admin. - -**Start the administration panel server** - -```bash -cd strapi/packages/strapi-admin -yarn develop -``` - -The administration panel is available at http://localhost:4000/admin +The administration panel is available at http://localhost:1337/admin **Awesome! You are now able to contribute to Strapi.** From 378f8426406d54f409aa200e35351b3f347f8fef Mon Sep 17 00:00:00 2001 From: Sulakin Vadim Date: Sat, 23 Nov 2019 23:38:41 +0300 Subject: [PATCH 02/20] Update Russian translation for admin panel --- .../admin/src/translations/ru.json | 108 ++++++++++-------- 1 file changed, 61 insertions(+), 47 deletions(-) diff --git a/packages/strapi-admin/admin/src/translations/ru.json b/packages/strapi-admin/admin/src/translations/ru.json index 33eaed1a3d..c4fa7e45e8 100644 --- a/packages/strapi-admin/admin/src/translations/ru.json +++ b/packages/strapi-admin/admin/src/translations/ru.json @@ -1,47 +1,47 @@ { "Analytics": "Аналитика", "Content Manager": "Редактор контента", - "Content Type Builder": "Типы Контента", + "Content Type Builder": "Конструктор типов контента", "Documentation": "Документация", - "Email": "Email", + "Email": "E-mail", "Files Upload": "Загрузка файлов", - "HomePage.notification.newsLetter.success": "Успешная подписка на рассылку новостей", + "HomePage.notification.newsLetter.success": "Успешная подписка на новостную рассылку", "New entry": "Новая запись", "Password": "Пароль", "Provider": "Провайдер", - "ResetPasswordToken": "Сбросить токен пароля", + "ResetPasswordToken": "Сброс токена пароля", "Role": "Роль", "Roles & Permissions": "Роли и доступы", "Settings Manager": "Менеджер Настроек", "Username": "Имя пользователя", "Users": "Пользователи", - "Users & Permissions": "Пользователи & Доступы", + "Users & Permissions": "Пользователи и доступы", "app.components.BlockLink.code": "Примеры кода", "app.components.BlockLink.code.content": "Обучайтесь на реальных проектах, разработанных в сообществе.", - "app.components.BlockLink.documentation": "Прочитать документацию", + "app.components.BlockLink.documentation": "Читать документацию", "app.components.BlockLink.documentation.content": "Ознакомьтесь с концепциями, справочниками и обучающими материалами.", "app.components.Button.cancel": "Отменить", "app.components.Button.save": "Сохранить", "app.components.ComingSoonPage.comingSoon": "Скоро", - "app.components.ComingSoonPage.featuresNotAvailable": "Этот функционал все еще находится в стадии активной разработки.", + "app.components.ComingSoonPage.featuresNotAvailable": "Этот функционал все еще находится в активной разработке.", "app.components.DownloadInfo.download": "Выполняется загрузка...", "app.components.DownloadInfo.text": "Это может занять около минуты. Спасибо за ваше терпение.", "app.components.EmptyAttributes.title": "Пока нет полей", "app.components.HomePage.button.blog": "СМОТРИТЕ БОЛЬШЕ В БЛОГЕ", "app.components.HomePage.button.quickStart": "ОЗНАКОМИТЬСЯ С РУКОВОДСТВОМ ПО БЫСТРОМУ СТАРТУ", "app.components.HomePage.community": "Найдите сообщество в интернете", - "app.components.HomePage.community.content": "Обсуждайте с членами команды и разработчиками в разных каналах", + "app.components.HomePage.community.content": "Обсуждайте с членами команды и разработчиками в разных каналах.", "app.components.HomePage.create": "Создайте ваш первый Тип Контента", "app.components.HomePage.createBlock.content.first": " ", - "app.components.HomePage.createBlock.content.second": " — плагин, который поможет вам определить структуру ваших данных. Если вы новичок, мы настоятельно рекомендуем вам изучить наше ", + "app.components.HomePage.createBlock.content.second": " — плагин, который поможет вам определить структуру ваших моделей данных. Если вы новичок, мы настоятельно рекомендуем вам изучить наше ", "app.components.HomePage.createBlock.content.tutorial": " руководство.", - "app.components.HomePage.cta": "ПОДПИСАТЬСЯ", + "app.components.HomePage.cta": "ПОДТВЕРДИТЬ", "app.components.HomePage.newsLetter": "Подпишитесь на рассылку, чтобы быть в курсе новостей Strapi", "app.components.HomePage.support": "ПОДДЕРЖИТЕ НАС", "app.components.HomePage.support.content": "Покупая футболку, вы помогаете нам продолжать работу над проектом и предоставлять вам наилучшее из возможных решений!", "app.components.HomePage.support.link": "ЗАКАЗАТЬ ФУТБОЛКУ СЕЙЧАС", - "app.components.HomePage.welcome": "Добро пожаловать!", - "app.components.HomePage.welcome.again": "Добро пожаловать, ", + "app.components.HomePage.welcome": "Добро пожаловать на борт!", + "app.components.HomePage.welcome.again": "Добро пожаловать ", "app.components.HomePage.welcomeBlock.content": "Мы рады, что вы присоединились к сообществу. Нам необходима обратная связь для развития проекта, поэтому не стесняйтесь писать нам в ", "app.components.HomePage.welcomeBlock.content.again": "Надеемся, что вы делаете успехи в вашем проекте... Следите за последними новостями Strapi. Мы стараемся изо всех сил, чтобы улучшить продукт, основываясь на ваших пожеланиях.", "app.components.HomePage.welcomeBlock.content.issues": "проблемах.", @@ -50,14 +50,14 @@ "app.components.ImgPreview.hint.browse": "выберите", "app.components.InputFile.newFile": "Добавить новый файл", "app.components.InputFileDetails.open": "Открыть в новой вкладке", - "app.components.InputFileDetails.originalName": "Первоначальное название:", + "app.components.InputFileDetails.originalName": "Оригинальное название:", "app.components.InputFileDetails.remove": "Удалить этот файл", "app.components.InputFileDetails.size": "Размер:", "app.components.InstallPluginPage.Download.title": "Загрузка...", "app.components.InstallPluginPage.Download.description": "Для загрузки и установки плагина может потребоваться несколько секунд.", "app.components.InstallPluginPage.InputSearch.label": " ", - "app.components.InstallPluginPage.InputSearch.placeholder": "Искать плагин... (ex: authentication)", - "app.components.InstallPluginPage.description": "Расширяйте ваше приложение без усилий.", + "app.components.InstallPluginPage.InputSearch.placeholder": "Поиск плагина... (например: аутентификация)", + "app.components.InstallPluginPage.description": "Расширяйте ваше приложение без особых усилий.", "app.components.InstallPluginPage.helmet": "Магазин - Плагины", "app.components.InstallPluginPage.plugin.support-us.description": "Поддержите нас, купив футболку Strapi. Это поможет нам продолжать работу над проектом, чтобы предоставить вам наилучшее из возможных решений!", "app.components.InstallPluginPage.title": "Магазин - Плагины", @@ -65,9 +65,9 @@ "app.components.InstallPluginPopup.navLink.avis": "avis", "app.components.InstallPluginPopup.navLink.changelog": "журнал изменений", "app.components.InstallPluginPopup.navLink.description": "Описание", - "app.components.InstallPluginPopup.navLink.faq": "faq", + "app.components.InstallPluginPopup.navLink.faq": "ФАК", "app.components.InstallPluginPopup.navLink.screenshots": "Скриншоты", - "app.components.InstallPluginPopup.noDescription": "Нет описания", + "app.components.InstallPluginPopup.noDescription": "Нет доступного описания", "app.components.LeftMenuFooter.documentation": "Документация", "app.components.LeftMenuFooter.help": "Помощь", "app.components.LeftMenuFooter.poweredBy": "Работает на ", @@ -77,7 +77,7 @@ "app.components.LeftMenuLinkContainer.listPlugins": "Плагины", "app.components.LeftMenuLinkContainer.noPluginsInstalled": "Нет установленных плагинов", "app.components.LeftMenuLinkContainer.plugins": "Плагины", - "app.components.ListPluginsPage.description": "Список установленных плагинов.", + "app.components.ListPluginsPage.description": "Список установленных плагинов в проекте.", "app.components.ListPluginsPage.helmet.title": "Список плагинов", "app.components.ListPluginsPage.title": "Плагины", "app.components.Logout.admin": "Управлять администраторами", @@ -94,8 +94,8 @@ "app.components.PluginCard.compatible": "Совместимо с вашим приложением", "app.components.PluginCard.compatibleCommunity": "Совместимо с сообществом", "app.components.PluginCard.more-details": "Больше деталей", - "app.components.PluginCard.PopUpWarning.install.impossible.autoReload.needed": "Функция автоматической перезагрузки должна быть отключена. Пожалуйста, запустите ваше приложение с помощью `yarn develop`.", - "app.components.PluginCard.PopUpWarning.install.impossible.environment": "В целях безопасности плагин может быть загружен только в develop-окружении.", + "app.components.PluginCard.PopUpWarning.install.impossible.autoReload.needed": "Функция autoReload (автоматической перезагрузки) должна быть отключена. Пожалуйста, запустите ваше приложение с помощью `yarn develop`.", + "app.components.PluginCard.PopUpWarning.install.impossible.environment": "В целях безопасности плагин может быть загружен только в среде разработки.", "app.components.PluginCard.PopUpWarning.install.impossible.confirm": "Я понимаю!", "app.components.PluginCard.PopUpWarning.install.impossible.title": "Загрузка невозможна", "app.components.PluginCard.price.free": "Бесплатно", @@ -104,7 +104,7 @@ "app.components.listPlugins.title.none": "Нет установленных плагинов", "app.components.listPlugins.title.plural": "{number} плагинов установлено", "app.components.listPlugins.title.singular": "{number} плагин установлен", - "app.components.listPluginsPage.deletePlugin.error": "Возникла ошибка при установке плагина", + "app.components.listPluginsPage.deletePlugin.error": "Произошла ошибка при удалении плагина", "app.utils.SelectOption.defaultMessage": " ", "app.utils.defaultMessage": " ", "app.utils.placeholder.defaultMessage": " ", @@ -118,23 +118,24 @@ "components.Input.error.custom-error": "{errorMessage} ", "components.Input.error.validation.email": "Это не адрес электронной почты", "components.Input.error.validation.json": "Не соответствует JSON формату", - "components.Input.error.validation.max": "Слишком большое.", - "components.Input.error.validation.maxLength": "Слишком длинное.", - "components.Input.error.validation.min": "Слишком маленькое.", - "components.Input.error.validation.minLength": "Слишком короткое.", + "components.Input.error.validation.max": "Значение слишком большое.", + "components.Input.error.validation.maxLength": "Значение слишком длинное.", + "components.Input.error.validation.min": "Значение слишком маленькое.", + "components.Input.error.validation.minLength": "Значение слишком короткое.", "components.Input.error.validation.minSupMax": "Не может быть выше", - "components.Input.error.validation.regex": "Не соответствует регулярному выражению.", - "components.Input.error.validation.required": "Необходимое поле для заполнения.", + "components.Input.error.validation.regex": "Значение не соответствует регулярному выражению.", + "components.Input.error.validation.required": "Обязательное значение.", + "components.InputSelect.option.placeholder": "Выберите здесь", "components.ListRow.empty": "Нет данных для отображения.", - "components.OverlayBlocker.description": "Вы воспользовались функционалом, который требует перезапуска сервера. Пожалуйста, подождите.", + "components.OverlayBlocker.description": "Вы воспользовались функционалом, который требует перезапуска сервера. Пожалуйста, подождите, пока сервер не будет запущен.", "components.OverlayBlocker.description.serverError": "Сервер должен был перезагрузиться, пожалуйста, проверьте ваши логи в терминале.", "components.OverlayBlocker.title": "Ожидание перезапуска...", "components.OverlayBlocker.title.serverError": "Перезапуск занимает больше времени, чем ожидалось", "components.PageFooter.select": "записей на странице", - "components.ProductionBlocker.description": "Для безопасности мы должны заблокировать его для других вариантов.", + "components.ProductionBlocker.description": "В целях безопасности мы должны отключить этот плагин в других средах.", "components.ProductionBlocker.header": "Этот плагин доступен только на стадии разработки.", - "components.Wysiwyg.ToggleMode.markdown": "Переключить в режим markdown", - "components.Wysiwyg.ToggleMode.preview": "Переключить в режим предпросмотра", + "components.Wysiwyg.ToggleMode.markdown": "Переключиться в режим markdown", + "components.Wysiwyg.ToggleMode.preview": "Переключиться в режим предпросмотра", "components.Wysiwyg.collapse": "Свернуть", "components.Wysiwyg.selectOptions.H1": "Заголовок H1", "components.Wysiwyg.selectOptions.H2": "Заголовок H2", @@ -143,7 +144,7 @@ "components.Wysiwyg.selectOptions.H5": "Заголовок H5", "components.Wysiwyg.selectOptions.H6": "Заголовок H6", "components.Wysiwyg.selectOptions.title": "Добавить заголовок", - "components.WysiwygBottomControls.charactersIndicators": "букв", + "components.WysiwygBottomControls.charactersIndicators": "символов", "components.WysiwygBottomControls.fullscreen": "Развернуть", "components.WysiwygBottomControls.uploadFiles": "Перетащите файлы в эту область, вставьте из буфера обмена или {browse}.", "components.WysiwygBottomControls.uploadFiles.browse": "выберите их", @@ -155,31 +156,41 @@ "notification.error.layout": "Не удалось получить макет", "request.error.model.unknown": "Модель данных не существует", "app.utils.delete": "Удалить", + "HomePage.helmet.title": "Домашняя страница", + "HomePage.welcome.congrats": "Поздравляем!", + "HomePage.welcome.congrats.content": "Вы вошли как первый администратор. Чтобы открыть для себя мощные функции, предоставляемые Strapi,", + "HomePage.welcome.congrats.content.bold": "мы рекомендуем вам создать свой первый тип контента.", + "HomePage.community": "Присоединяйтесь к сообществу", + "HomePage.roadmap": "Смотрите нашу дорожную карту", + "HomePage.greetings": "Привет {name}!", + "Auth.advanced.allow_register": "", + "Auth.privacy-policy-agreement.terms": "условия", + "Auth.privacy-policy-agreement.policy": "политика конфиденциальности", "Auth.form.button.forgot-password": "Отправить письмо", "Auth.form.button.forgot-password.success": "Отправить еще раз", "Auth.form.button.login": "Войти", "Auth.form.button.register": "Готов начать", "Auth.form.button.register-success": "Отправить еще раз", "Auth.form.button.reset-password": "Сменить пароль", - "Auth.form.error.blocked": "Ваш аккаунт заблокирован администратором.", - "Auth.form.error.code.provide": "Неверный код.", - "Auth.form.error.confirmed": "Адрес электронной почты не подтвержден.", - "Auth.form.error.email.invalid": "Неправильный адрес электронной почты.", - "Auth.form.error.email.provide": "Укажите свое имя пользователя или адрес электронной почты.", - "Auth.form.error.email.taken": "Данный email уже используется", + "Auth.form.error.blocked": "Ваш аккаунт был заблокирован администратором.", + "Auth.form.error.code.provide": "Указан неверный код.", + "Auth.form.error.confirmed": "Ваш e-mail не подтвержден.", + "Auth.form.error.email.invalid": "Неправильный e-mail.", + "Auth.form.error.email.provide": "Укажите свое имя пользователя или e-mail.", + "Auth.form.error.email.taken": "Данный e-mail уже используется", "Auth.form.error.invalid": "Неверный логин или пароль.", "Auth.form.error.noAdminAccess": "У вас нет доступа к панели администрирования.", - "Auth.form.error.params.provide": "Неправильные параметры.", + "Auth.form.error.params.provide": "Предоставлены неверные параметры.", "Auth.form.error.password.format": "Пароль не может содержать символ `$` больше трех раз.", "Auth.form.error.password.local": "Этот пользователь никогда не задавал пароль, пожалуйста, войдите в систему через провайдера, используемого при создании учетной записи.", "Auth.form.error.password.matching": "Пароль не соответствует.", "Auth.form.error.password.provide": "Укажите свой пароль.", - "Auth.form.error.ratelimit": "Слишком много попыток. Пожалуйста, попробуйте позже.", - "Auth.form.error.user.not-exist": "Этот email не существует.", + "Auth.form.error.ratelimit": "Слишком много попыток, повторите через минуту", + "Auth.form.error.user.not-exist": "Этот e-mail не существует.", "Auth.form.error.username.taken": "Имя пользователя уже используется", - "Auth.form.forgot-password.email.label": "Введите ваш email", - "Auth.form.forgot-password.email.label.success": "Письмо успешно отправлено", + "Auth.form.forgot-password.email.label": "Введите ваш e-mail", + "Auth.form.forgot-password.email.label.success": "Письмо успешно отправлено на адрес", "Auth.form.forgot-password.email.placeholder": "mysuperemail@gmail.com", "Auth.form.header.forgot-password": "strapi", "Auth.form.header.login": "strapi", @@ -189,17 +200,20 @@ "Auth.form.login.rememberMe.label": "Запомнить меня", "Auth.form.login.username.label": "Имя пользователя", "Auth.form.login.username.placeholder": "John Doe", - "Auth.form.register-success.email.label": "Письмо успешно отправлено", + "Auth.form.register-success.email.label": "Письмо успешно отправлено на адрес", "Auth.form.register-success.email.placeholder": "mysuperemail@gmail.com", "Auth.form.register.confirmPassword.label": "Подтверждение пароля", - "Auth.form.register.email.label": "Email", + "Auth.form.register.email.label": "E-mail", "Auth.form.register.email.placeholder": "johndoe@gmail.com", - + "Auth.form.register.news.label": "Держите меня в курсе о новых функциях и предстоящих улучшениях (делая это, вы принимаете {terms} и {policy}).", "Auth.form.register.password.label": "Пароль", "Auth.form.register.username.label": "Имя пользователя", "Auth.form.register.username.placeholder": "John Doe", "Auth.header.register.description": "Для завершения установки и обеспечения безопасности приложения, создайте вашего первого пользователя (root admin), заполнив форму ниже.", "Auth.link.forgot-password": "Забыли пароль?", "Auth.link.ready": "Готовы войти?", - "components.Input.error.password.noMatch": "Пароль не совпадает" + "app.containers.App.notification.error.init": "Произошла ошибка при запросе к API", + "components.Input.error.password.noMatch": "Пароль не совпадает", + "form.button.done": "Выполнено", + "notification.form.error.fields": "Форма содержит некоторые ошибки" } From 708f713ab8a3a75d6a35dcd653a114c3459e0636 Mon Sep 17 00:00:00 2001 From: Prakash Rajendran Date: Sat, 23 Nov 2019 23:58:11 +0100 Subject: [PATCH 03/20] update link to pm2 guide --- docs/3.0.0-beta.x/guides/deployment.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/3.0.0-beta.x/guides/deployment.md b/docs/3.0.0-beta.x/guides/deployment.md index f636028d97..7e96143cb1 100644 --- a/docs/3.0.0-beta.x/guides/deployment.md +++ b/docs/3.0.0-beta.x/guides/deployment.md @@ -995,7 +995,7 @@ npm install pm2@latest -g ### The ecosystem.config.js file -- You will need to configure an `ecosystem.config.js` file. This file will manage the **database connection variables** Strapi needs to connect to your database. The `ecosystem.config.js` will also be used by `pm2` to restart your project whenever any changes are made to files within the Strapi file system itself (such as when an update arrives from GitHub). You can read more about this file [here](https://pm2.io/doc/en/runtime/guide/development-tools/). +- You will need to configure an `ecosystem.config.js` file. This file will manage the **database connection variables** Strapi needs to connect to your database. The `ecosystem.config.js` will also be used by `pm2` to restart your project whenever any changes are made to files within the Strapi file system itself (such as when an update arrives from GitHub). You can read more about this file [here](https://pm2.keymetrics.io/docs/usage/pm2-doc-single-page/). - You will need to open your `nano` editor and then `copy/paste` the following: From 3fe87ffcc74abac4194b971b32433cfb3a9e8092 Mon Sep 17 00:00:00 2001 From: Jim LAURIE Date: Tue, 26 Nov 2019 16:03:06 +0100 Subject: [PATCH 04/20] Fix #4559 lowercase the email in the forgot password function --- .../controllers/Auth.js | 63 ++++++++++++++----- 1 file changed, 47 insertions(+), 16 deletions(-) diff --git a/packages/strapi-plugin-users-permissions/controllers/Auth.js b/packages/strapi-plugin-users-permissions/controllers/Auth.js index 655b3b9230..1b0b4f73f2 100644 --- a/packages/strapi-plugin-users-permissions/controllers/Auth.js +++ b/packages/strapi-plugin-users-permissions/controllers/Auth.js @@ -272,7 +272,22 @@ module.exports = { }, async forgotPassword(ctx) { - const { email } = ctx.request.body; + let { email } = ctx.request.body; + + // Check if the provided email is valid or not. + const isEmail = emailRegExp.test(email); + + if (isEmail) { + email = email.toLowerCase(); + } else { + return ctx.badRequest( + null, + formatError({ + id: 'Auth.form.error.email.format', + message: 'Please provide valid email address.', + }) + ); + } const pluginStore = await strapi.store({ environment: '', @@ -620,7 +635,7 @@ module.exports = { } const user = await strapi.query('user', 'users-permissions').findOne({ - email: params.email + email: params.email, }); if (user.confirmed) { @@ -635,22 +650,38 @@ module.exports = { _.pick(user.toJSON ? user.toJSON() : user, ['id']) ); - const settings = await pluginStore.get({ key: 'email' }).then(storeEmail => { - try { - return storeEmail['email_confirmation'].options; - } catch (err) { - return {}; - } - }); + const settings = await pluginStore + .get({ key: 'email' }) + .then(storeEmail => { + try { + return storeEmail['email_confirmation'].options; + } catch (err) { + return {}; + } + }); - settings.message = await strapi.plugins['users-permissions'].services.userspermissions.template(settings.message, { + settings.message = await strapi.plugins[ + 'users-permissions' + ].services.userspermissions.template(settings.message, { URL: new URL('/auth/email-confirmation', strapi.config.url).toString(), - USER: _.omit(user.toJSON ? user.toJSON() : user, ['password', 'resetPasswordToken', 'role', 'provider']), - CODE: jwt + USER: _.omit(user.toJSON ? user.toJSON() : user, [ + 'password', + 'resetPasswordToken', + 'role', + 'provider', + ]), + CODE: jwt, }); - settings.object = await strapi.plugins['users-permissions'].services.userspermissions.template(settings.object, { - USER: _.omit(user.toJSON ? user.toJSON() : user, ['password', 'resetPasswordToken', 'role', 'provider']), + settings.object = await strapi.plugins[ + 'users-permissions' + ].services.userspermissions.template(settings.object, { + USER: _.omit(user.toJSON ? user.toJSON() : user, [ + 'password', + 'resetPasswordToken', + 'role', + 'provider', + ]), }); try { @@ -663,11 +694,11 @@ module.exports = { replyTo: settings.response_email, subject: settings.object, text: settings.message, - html: settings.message + html: settings.message, }); ctx.send({ email: (user.toJSON ? user.toJSON() : user).email, - sent: true + sent: true, }); } catch (err) { return ctx.badRequest(null, err); From 9eb1490a7a21c567a05ff3f9d8522501454a5612 Mon Sep 17 00:00:00 2001 From: Jim LAURIE Date: Tue, 26 Nov 2019 16:58:35 +0100 Subject: [PATCH 05/20] Fix #4576 docs website link --- docs/.vuepress/config.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/.vuepress/config.js b/docs/.vuepress/config.js index 17ec6bea68..beed27f202 100644 --- a/docs/.vuepress/config.js +++ b/docs/.vuepress/config.js @@ -116,7 +116,7 @@ module.exports = { }, { text: 'Website', - link: 'https://strapi', + link: 'https://strapi.io', }, { text: 'Slack', From c5d91ed514e59ae08ec35aa27ac943aff5b6afe7 Mon Sep 17 00:00:00 2001 From: Sulakin Vadim Date: Wed, 27 Nov 2019 16:41:39 +0300 Subject: [PATCH 06/20] Update ru.json --- packages/strapi-admin/admin/src/translations/ru.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/strapi-admin/admin/src/translations/ru.json b/packages/strapi-admin/admin/src/translations/ru.json index c4fa7e45e8..c5e6b36cf5 100644 --- a/packages/strapi-admin/admin/src/translations/ru.json +++ b/packages/strapi-admin/admin/src/translations/ru.json @@ -190,7 +190,7 @@ "Auth.form.error.user.not-exist": "Этот e-mail не существует.", "Auth.form.error.username.taken": "Имя пользователя уже используется", "Auth.form.forgot-password.email.label": "Введите ваш e-mail", - "Auth.form.forgot-password.email.label.success": "Письмо успешно отправлено на адрес", + "Auth.form.forgot-password.email.label.success": "Письмо успешно отправлено e-mail", "Auth.form.forgot-password.email.placeholder": "mysuperemail@gmail.com", "Auth.form.header.forgot-password": "strapi", "Auth.form.header.login": "strapi", @@ -200,7 +200,7 @@ "Auth.form.login.rememberMe.label": "Запомнить меня", "Auth.form.login.username.label": "Имя пользователя", "Auth.form.login.username.placeholder": "John Doe", - "Auth.form.register-success.email.label": "Письмо успешно отправлено на адрес", + "Auth.form.register-success.email.label": "Письмо успешно отправлено e-mail", "Auth.form.register-success.email.placeholder": "mysuperemail@gmail.com", "Auth.form.register.confirmPassword.label": "Подтверждение пароля", "Auth.form.register.email.label": "E-mail", From bb2a54525dfd0ef043e4d85a36dc54c0b0cd17ac Mon Sep 17 00:00:00 2001 From: Jim LAURIE Date: Wed, 27 Nov 2019 16:25:36 +0100 Subject: [PATCH 07/20] Add a docker ref in the docs --- docs/3.0.0-beta.x/guides/deployment.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/docs/3.0.0-beta.x/guides/deployment.md b/docs/3.0.0-beta.x/guides/deployment.md index 7e96143cb1..84da298667 100644 --- a/docs/3.0.0-beta.x/guides/deployment.md +++ b/docs/3.0.0-beta.x/guides/deployment.md @@ -97,6 +97,12 @@ strapi(/* {...} */).start(); If you want to host the administration on another server than the API, [please take a look at this dedicated section](../admin-panel/deploy.md). +## Docker + +In this section, you will not find a specific guide to deploy your app with [Docker](https://www.docker.com/). + +We recently updated the [strapi/strapi-docker](https://github.com/strapi/strapi-docker) GitHub repository that contains all informations needed to user Strapi with Docker. + ## Amazon AWS This is a step-by-step guide for deploying a Strapi project to [Amazon AWS EC2](https://aws.amazon.com/ec2/). This guide will connect to an [Amazon AWS RDS](https://aws.amazon.com/rds/) for managing and hosting the database. Optionally, this guide will show you how to connect host and serve images on [Amazon AWS S3](https://aws.amazon.com/s3/). Prior to starting this guide, you should have created a [Strapi project](../getting-started/quick-start.md), to use for deploying on AWS. From 93130a16769da38dc91a274fbb31db4df67d8324 Mon Sep 17 00:00:00 2001 From: Jim LAURIE Date: Wed, 27 Nov 2019 17:26:30 +0100 Subject: [PATCH 08/20] Display a deprecated message docs alpha --- docs/.vuepress/theme/components/Navbar.vue | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/docs/.vuepress/theme/components/Navbar.vue b/docs/.vuepress/theme/components/Navbar.vue index 88113a3ad2..11b26da69c 100644 --- a/docs/.vuepress/theme/components/Navbar.vue +++ b/docs/.vuepress/theme/components/Navbar.vue @@ -20,6 +20,18 @@ >{{ $siteTitle }} + + Deprecated docs - + + current version + + +