diff --git a/apps/web/app/(app)/(survey-editor)/environments/[environmentId]/surveys/[surveyId]/edit/components/SettingsView.tsx b/apps/web/app/(app)/(survey-editor)/environments/[environmentId]/surveys/[surveyId]/edit/components/SettingsView.tsx index 2ef53b2d31..81c1387602 100644 --- a/apps/web/app/(app)/(survey-editor)/environments/[environmentId]/surveys/[surveyId]/edit/components/SettingsView.tsx +++ b/apps/web/app/(app)/(survey-editor)/environments/[environmentId]/surveys/[surveyId]/edit/components/SettingsView.tsx @@ -25,6 +25,7 @@ interface SettingsViewProps { isUserTargetingAllowed?: boolean; locale: string; projectPermission: TTeamPermission | null; + isFormbricksCloud: boolean; } export const SettingsView = ({ @@ -39,6 +40,7 @@ export const SettingsView = ({ isUserTargetingAllowed = false, locale, projectPermission, + isFormbricksCloud, }: SettingsViewProps) => { const isAppSurvey = localSurvey.type === "app"; @@ -68,7 +70,7 @@ export const SettingsView = ({ ) : ( - + )} ) : null} diff --git a/apps/web/app/(app)/(survey-editor)/environments/[environmentId]/surveys/[surveyId]/edit/components/SurveyEditor.tsx b/apps/web/app/(app)/(survey-editor)/environments/[environmentId]/surveys/[surveyId]/edit/components/SurveyEditor.tsx index 23a0bbf0fb..22cbbdf743 100644 --- a/apps/web/app/(app)/(survey-editor)/environments/[environmentId]/surveys/[surveyId]/edit/components/SurveyEditor.tsx +++ b/apps/web/app/(app)/(survey-editor)/environments/[environmentId]/surveys/[surveyId]/edit/components/SurveyEditor.tsx @@ -220,6 +220,7 @@ export const SurveyEditor = ({ isUserTargetingAllowed={isUserTargetingAllowed} locale={locale} projectPermission={projectPermission} + isFormbricksCloud={isFormbricksCloud} /> )} diff --git a/apps/web/app/(app)/(survey-editor)/environments/[environmentId]/surveys/[surveyId]/edit/components/TargetingLockedCard.tsx b/apps/web/app/(app)/(survey-editor)/environments/[environmentId]/surveys/[surveyId]/edit/components/TargetingLockedCard.tsx index 58d5be583e..5c1bdea938 100644 --- a/apps/web/app/(app)/(survey-editor)/environments/[environmentId]/surveys/[surveyId]/edit/components/TargetingLockedCard.tsx +++ b/apps/web/app/(app)/(survey-editor)/environments/[environmentId]/surveys/[surveyId]/edit/components/TargetingLockedCard.tsx @@ -1,10 +1,15 @@ import { UpgradePrompt } from "@/modules/ui/components/upgrade-prompt"; import * as Collapsible from "@radix-ui/react-collapsible"; -import { LockIcon, UsersIcon } from "lucide-react"; +import { LockIcon } from "lucide-react"; import { useTranslations } from "next-intl"; import { useState } from "react"; -export const TargetingLockedCard = () => { +interface TargetingLockedCardProps { + isFormbricksCloud: boolean; + environmentId: string; +} + +export const TargetingLockedCard = ({ isFormbricksCloud, environmentId }: TargetingLockedCardProps) => { const t = useTranslations(); const [open, setOpen] = useState(false); @@ -32,17 +37,20 @@ export const TargetingLockedCard = () => {
} title={t("environments.surveys.edit.unlock_targeting_title")} description={t("environments.surveys.edit.unlock_targeting_description")} buttons={[ { text: t("common.start_free_trial"), - href: `https://formbricks.com/docs/self-hosting/license#30-day-trial-license-request`, + href: isFormbricksCloud + ? `/environments/${environmentId}/settings/billing` + : "https://formbricks.com/upgrade-self-hosting-license", }, { text: t("common.learn_more"), - href: `https://formbricks.com/docs/self-hosting/license#30-day-trial-license-request`, + href: isFormbricksCloud + ? `/environments/${environmentId}/settings/billing` + : "https://formbricks.com/learn-more-self-hosting-license", }, ]} /> diff --git a/apps/web/app/(app)/environments/[environmentId]/settings/(account)/profile/components/AccountSecurity.tsx b/apps/web/app/(app)/environments/[environmentId]/settings/(account)/profile/components/AccountSecurity.tsx index 5784f7e843..cd3641bf16 100644 --- a/apps/web/app/(app)/environments/[environmentId]/settings/(account)/profile/components/AccountSecurity.tsx +++ b/apps/web/app/(app)/environments/[environmentId]/settings/(account)/profile/components/AccountSecurity.tsx @@ -3,18 +3,15 @@ import { DisableTwoFactorModal } from "@/modules/ee/two-factor-auth/components/disable-two-factor-modal"; import { EnableTwoFactorModal } from "@/modules/ee/two-factor-auth/components/enable-two-factor-modal"; import { Switch } from "@/modules/ui/components/switch"; -import { UpgradePlanNotice } from "@/modules/ui/components/upgrade-plan-notice"; import { useTranslations } from "next-intl"; import { useState } from "react"; import { TUser } from "@formbricks/types/user"; interface AccountSecurityProps { user: TUser; - isTwoFactorAuthEnabled: boolean; - environmentId: string; } -export const AccountSecurity = ({ user, isTwoFactorAuthEnabled, environmentId }: AccountSecurityProps) => { +export const AccountSecurity = ({ user }: AccountSecurityProps) => { const t = useTranslations(); const [twoFactorModalOpen, setTwoFactorModalOpen] = useState(false); const [disableTwoFactorModalOpen, setDisableTwoFactorModalOpen] = useState(false); @@ -24,7 +21,6 @@ export const AccountSecurity = ({ user, isTwoFactorAuthEnabled, environmentId }:
{ if (checked) { setTwoFactorModalOpen(true); @@ -43,13 +39,6 @@ export const AccountSecurity = ({ user, isTwoFactorAuthEnabled, environmentId }:

- {!isTwoFactorAuthEnabled && !user.twoFactorEnabled && ( - - )} diff --git a/apps/web/app/(app)/environments/[environmentId]/settings/(account)/profile/page.tsx b/apps/web/app/(app)/environments/[environmentId]/settings/(account)/profile/page.tsx index 91b57e20bf..712374dec0 100644 --- a/apps/web/app/(app)/environments/[environmentId]/settings/(account)/profile/page.tsx +++ b/apps/web/app/(app)/environments/[environmentId]/settings/(account)/profile/page.tsx @@ -5,6 +5,7 @@ import { getIsMultiOrgEnabled, getIsTwoFactorAuthEnabled } from "@/modules/ee/li import { PageContentWrapper } from "@/modules/ui/components/page-content-wrapper"; import { PageHeader } from "@/modules/ui/components/page-header"; import { SettingsId } from "@/modules/ui/components/settings-id"; +import { UpgradePrompt } from "@/modules/ui/components/upgrade-prompt"; import { getServerSession } from "next-auth"; import { getTranslations } from "next-intl/server"; import { IS_FORMBRICKS_CLOUD } from "@formbricks/lib/constants"; @@ -64,11 +65,28 @@ const Page = async (props: { params: Promise<{ environmentId: string }> }) => { - + {!isTwoFactorAuthEnabled && !user.twoFactorEnabled ? ( + + ) : ( + + )} )} diff --git a/apps/web/app/(app)/environments/[environmentId]/settings/(organization)/general/components/IndividualInviteTab.tsx b/apps/web/app/(app)/environments/[environmentId]/settings/(organization)/general/components/IndividualInviteTab.tsx index 7d61730f0c..e505bd0707 100644 --- a/apps/web/app/(app)/environments/[environmentId]/settings/(organization)/general/components/IndividualInviteTab.tsx +++ b/apps/web/app/(app)/environments/[environmentId]/settings/(organization)/general/components/IndividualInviteTab.tsx @@ -5,7 +5,7 @@ import { Alert, AlertDescription } from "@/modules/ui/components/alert"; import { Button } from "@/modules/ui/components/button"; import { Input } from "@/modules/ui/components/input"; import { Label } from "@/modules/ui/components/label"; -import { UpgradePlanNotice } from "@/modules/ui/components/upgrade-plan-notice"; +import { UpgradePrompt } from "@/modules/ui/components/upgrade-prompt"; import { zodResolver } from "@hookform/resolvers/zod"; import { OrganizationRole } from "@prisma/client"; import { useTranslations } from "next-intl"; @@ -94,20 +94,25 @@ export const IndividualInviteTab = ({ )} - {!canDoRoleManagement && - (isFormbricksCloud ? ( - - ) : ( - - ))} + {!canDoRoleManagement && ( + + )} diff --git a/apps/web/modules/ee/contacts/page.tsx b/apps/web/modules/ee/contacts/page.tsx index 39b3e5ba89..fe955d6a77 100644 --- a/apps/web/modules/ee/contacts/page.tsx +++ b/apps/web/modules/ee/contacts/page.tsx @@ -8,10 +8,9 @@ import { getTeamPermissionFlags } from "@/modules/ee/teams/utils/teams"; import { PageContentWrapper } from "@/modules/ui/components/page-content-wrapper"; import { PageHeader } from "@/modules/ui/components/page-header"; import { UpgradePrompt } from "@/modules/ui/components/upgrade-prompt"; -import { UserIcon } from "lucide-react"; import { getServerSession } from "next-auth"; import { getTranslations } from "next-intl/server"; -import { ITEMS_PER_PAGE } from "@formbricks/lib/constants"; +import { IS_FORMBRICKS_CLOUD, ITEMS_PER_PAGE } from "@formbricks/lib/constants"; import { getEnvironment } from "@formbricks/lib/environment/service"; import { getMembershipByUserIdOrganizationId } from "@formbricks/lib/membership/service"; import { getAccessFlags } from "@formbricks/lib/membership/utils"; @@ -91,17 +90,20 @@ export const ContactsPage = async ({ ) : (
} title={t("environments.contacts.unlock_contacts_title")} description={t("environments.contacts.unlock_contacts_description")} buttons={[ { text: t("common.start_free_trial"), - href: `https://formbricks.com/docs/self-hosting/license#30-day-trial-license-request`, + href: IS_FORMBRICKS_CLOUD + ? `/environments/${params.environmentId}/settings/billing` + : "https://formbricks.com/upgrade-self-hosting-license", }, { text: t("common.learn_more"), - href: `https://formbricks.com/docs/self-hosting/license#30-day-trial-license-request`, + href: IS_FORMBRICKS_CLOUD + ? `/environments/${params.environmentId}/settings/billing` + : "https://formbricks.com/learn-more-self-hosting-license", }, ]} /> diff --git a/apps/web/modules/ee/contacts/segments/page.tsx b/apps/web/modules/ee/contacts/segments/page.tsx index 1a7b33b852..cb9cb06cdc 100644 --- a/apps/web/modules/ee/contacts/segments/page.tsx +++ b/apps/web/modules/ee/contacts/segments/page.tsx @@ -9,9 +9,9 @@ import { getTeamPermissionFlags } from "@/modules/ee/teams/utils/teams"; import { PageContentWrapper } from "@/modules/ui/components/page-content-wrapper"; import { PageHeader } from "@/modules/ui/components/page-header"; import { UpgradePrompt } from "@/modules/ui/components/upgrade-prompt"; -import { UsersIcon } from "lucide-react"; import { getServerSession } from "next-auth"; import { getTranslations } from "next-intl/server"; +import { IS_FORMBRICKS_CLOUD } from "@formbricks/lib/constants"; import { getEnvironment } from "@formbricks/lib/environment/service"; import { getMembershipByUserIdOrganizationId } from "@formbricks/lib/membership/service"; import { getAccessFlags } from "@formbricks/lib/membership/utils"; @@ -96,17 +96,20 @@ export const SegmentsPage = async ({ ) : (
} title={t("environments.segments.unlock_segments_title")} description={t("environments.segments.unlock_segments_description")} buttons={[ { text: t("common.start_free_trial"), - href: `https://formbricks.com/docs/self-hosting/license#30-day-trial-license-request`, + href: IS_FORMBRICKS_CLOUD + ? `/environments/${params.environmentId}/settings/billing` + : "https://formbricks.com/upgrade-self-hosting-license", }, { text: t("common.learn_more"), - href: "https://formbricks.com/docs/self-hosting/license#30-day-trial-license-request", + href: IS_FORMBRICKS_CLOUD + ? `/environments/${params.environmentId}/settings/billing` + : "https://formbricks.com/learn-more-self-hosting-license", }, ]} /> diff --git a/apps/web/modules/ee/multi-language-surveys/components/multi-language-card.tsx b/apps/web/modules/ee/multi-language-surveys/components/multi-language-card.tsx index c70112ef4e..3612f88587 100644 --- a/apps/web/modules/ee/multi-language-surveys/components/multi-language-card.tsx +++ b/apps/web/modules/ee/multi-language-surveys/components/multi-language-card.tsx @@ -5,7 +5,7 @@ import { Button } from "@/modules/ui/components/button"; import { ConfirmationModal } from "@/modules/ui/components/confirmation-modal"; import { Label } from "@/modules/ui/components/label"; import { Switch } from "@/modules/ui/components/switch"; -import { UpgradePlanNotice } from "@/modules/ui/components/upgrade-plan-notice"; +import { UpgradePrompt } from "@/modules/ui/components/upgrade-prompt"; import { useAutoAnimate } from "@formkit/auto-animate/react"; import * as Collapsible from "@radix-ui/react-collapsible"; import { ArrowUpRight, Languages } from "lucide-react"; @@ -224,17 +224,24 @@ export const MultiLanguageCard: FC = ({
- {!isMultiLanguageAllowed && !isFormbricksCloud && !isMultiLanguageActivated ? ( - - ) : !isMultiLanguageAllowed && isFormbricksCloud && !isMultiLanguageActivated ? ( - ) : ( <> diff --git a/apps/web/modules/ee/whitelabel/remove-branding/components/branding-settings-card.tsx b/apps/web/modules/ee/whitelabel/remove-branding/components/branding-settings-card.tsx index 5ebe8504d3..3889719d4c 100644 --- a/apps/web/modules/ee/whitelabel/remove-branding/components/branding-settings-card.tsx +++ b/apps/web/modules/ee/whitelabel/remove-branding/components/branding-settings-card.tsx @@ -1,8 +1,7 @@ import { SettingsCard } from "@/app/(app)/environments/[environmentId]/settings/components/SettingsCard"; import { EditBranding } from "@/modules/ee/whitelabel/remove-branding/components/edit-branding"; import { Alert, AlertDescription } from "@/modules/ui/components/alert"; -import { EmptyContent, ModalButton } from "@/modules/ui/components/empty-content"; -import { KeyIcon } from "lucide-react"; +import { ModalButton, UpgradePrompt } from "@/modules/ui/components/upgrade-prompt"; import { getTranslations } from "next-intl/server"; import { IS_FORMBRICKS_CLOUD } from "@formbricks/lib/constants"; import { TProject } from "@formbricks/types/project"; @@ -27,11 +26,13 @@ export const BrandingSettingsCard = async ({ text: t("common.start_free_trial"), href: IS_FORMBRICKS_CLOUD ? `/environments/${environmentId}/settings/billing` - : "https://formbricks.com/docs/self-hosting/license#30-day-trial-license-request", + : "https://formbricks.com/upgrade-self-hosting-license", }, { text: t("common.learn_more"), - href: "https://formbricks.com/docs/self-hosting/license", + href: IS_FORMBRICKS_CLOUD + ? `/environments/${environmentId}/settings/billing` + : "https://formbricks.com/learn-more-self-hosting-license", }, ]; @@ -55,8 +56,7 @@ export const BrandingSettingsCard = async ({ />
) : ( - } + {t("common.projects_limit_reached")} - } + void; -}; - -interface EmptyContentProps { - icon: React.ReactNode; - title: string; - description: string; - buttons: [ModalButton, ModalButton]; -} - -export const EmptyContent = ({ icon, title, description, buttons }: EmptyContentProps) => { - const [primaryButton, secondaryButton] = buttons; - - return ( -
-
{icon}
-
-

{title}

- {description} -
-
- - -
-
- ); -}; diff --git a/apps/web/modules/ui/components/upgrade-plan-notice/index.tsx b/apps/web/modules/ui/components/upgrade-plan-notice/index.tsx deleted file mode 100644 index 1a58cd1bdf..0000000000 --- a/apps/web/modules/ui/components/upgrade-plan-notice/index.tsx +++ /dev/null @@ -1,27 +0,0 @@ -import { Alert, AlertDescription } from "@/modules/ui/components/alert"; -import { Badge } from "@/modules/ui/components/badge"; -import Link from "next/link"; - -export const UpgradePlanNotice = ({ - message, - url, - textForUrl, -}: { - message: string; - url: string; - textForUrl: string; -}) => { - return ( - - - - {message} - - - {textForUrl} - - - - - ); -}; diff --git a/apps/web/modules/ui/components/upgrade-prompt/index.tsx b/apps/web/modules/ui/components/upgrade-prompt/index.tsx index cdd84c15f8..9083725259 100644 --- a/apps/web/modules/ui/components/upgrade-prompt/index.tsx +++ b/apps/web/modules/ui/components/upgrade-prompt/index.tsx @@ -1,4 +1,5 @@ import { Button } from "@/modules/ui/components/button"; +import { KeyIcon } from "lucide-react"; import Link from "next/link"; export type ModalButton = { @@ -8,18 +9,19 @@ export type ModalButton = { }; interface UpgradePromptProps { - icon: React.ReactNode; title: string; - description: string; + description?: string; buttons: [ModalButton, ModalButton]; } -export const UpgradePrompt = ({ icon, title, description, buttons }: UpgradePromptProps) => { +export const UpgradePrompt = ({ title, description, buttons }: UpgradePromptProps) => { const [primaryButton, secondaryButton] = buttons; return (
-
{icon}
+
+ +

{title}

{description}

diff --git a/packages/lib/messages/de-DE.json b/packages/lib/messages/de-DE.json index 4c6fd39162..52af76a98e 100644 --- a/packages/lib/messages/de-DE.json +++ b/packages/lib/messages/de-DE.json @@ -1146,7 +1146,7 @@ "there_can_only_be_one_owner_of_each_organization": "Es kann nur einen Besitzer jeder Organisation geben. Wenn Du deine Eigentümerschaft überträgst an", "to_confirm": "bestätigen:", "type_in": "Tippe ein", - "upgrade_plan_notice_message": "Zugriffsrollen verwalten", + "upgrade_plan_notice_message": "Um Zugriffsrollen zu verwalten,", "upgrade_plan_notice_text_for_url_cloud": "aktualisiere deinen Plan.", "upgrade_plan_notice_text_for_url_enterprise": "eine Enterprise-Lizenz besorgen.", "when_you_transfer_the_ownership_you_will_remain_an_admin_of_the_organization": "Wenn Du die Eigentümerschaft überträgst, bleibst Du ein Admin der Organisation.", @@ -1654,7 +1654,6 @@ "this_setting_overwrites_your": "Diese Einstellung überschreibt deine", "three_points": "3 Punkte", "times": "Zeiten", - "to_enable_multi_language_surveys_you_need_an_active": "Um mehrsprachige Umfragen zu aktivieren, benötigst Du eine aktive", "to_keep_the_placement_over_all_surveys_consistent_you_can": "Um die Platzierung über alle Umfragen hinweg konsistent zu halten, kannst du", "trigger_survey_when_one_of_the_actions_is_fired": "Umfrage auslösen, wenn eine der Aktionen ausgeführt wird...", "try_lollipop_or_mountain": "Versuch 'Lolli' oder 'Berge'...", @@ -1663,6 +1662,8 @@ "unlock_targeting_title": "Targeting mit einem höheren Plan freischalten", "unsaved_changes_warning": "Du hast ungespeicherte Änderungen in deiner Umfrage. Möchtest Du sie speichern, bevor Du gehst?", "until_they_submit_a_response": "Bis sie eine Antwort einreichen", + "upgrade_notice_description": "Erstelle mehrsprachige Umfragen und entdecke viele weitere Funktionen", + "upgrade_notice_title": "Schalte mehrsprachige Umfragen mit einem höheren Plan frei", "upgrade_to_the_scale_plan": "auf den Scale-Plan upgraden.", "upload": "Hochladen", "upload_at_least_2_images": "Lade mindestens 2 Bilder hoch", diff --git a/packages/lib/messages/en-US.json b/packages/lib/messages/en-US.json index 6da9708a53..1069306d79 100644 --- a/packages/lib/messages/en-US.json +++ b/packages/lib/messages/en-US.json @@ -420,7 +420,7 @@ "you": "You", "you_are_downgraded_to_the_community_edition": "You are downgraded to the Community Edition.", "you_are_not_authorised_to_perform_this_action": "You are not authorised to perform this action.", - "you_have_reached_your_limit_of_project_limit": "You have reached your limit of {projectLimit} project.", + "you_have_reached_your_limit_of_project_limit": "You have reached your limit of {projectLimit} projects.", "you_have_reached_your_monthly_miu_limit_of": "You have reached your monthly MIU limit of", "you_have_reached_your_monthly_response_limit_of": "You have reached your monthly response limit of", "you_will_be_downgraded_to_the_community_edition_on_date": "You will be downgraded to the Community Edition on {date}." @@ -1146,7 +1146,7 @@ "there_can_only_be_one_owner_of_each_organization": "There can only be one owner of each organization. If you transfer your ownership to", "to_confirm": "to confirm:", "type_in": "Type in", - "upgrade_plan_notice_message": "To manage access roles,", + "upgrade_plan_notice_message": "Upgrade to manage access roles", "upgrade_plan_notice_text_for_url_cloud": "upgrade your plan.", "upgrade_plan_notice_text_for_url_enterprise": "get an Enterprise License.", "when_you_transfer_the_ownership_you_will_remain_an_admin_of_the_organization": "When you transfer the ownership, you will remain an Admin of the organization.", @@ -1654,7 +1654,6 @@ "this_setting_overwrites_your": "This setting overwrites your", "three_points": "3 points", "times": "times", - "to_enable_multi_language_surveys_you_need_an_active": "To enable multi-language surveys, you need an active", "to_keep_the_placement_over_all_surveys_consistent_you_can": "To keep the placement over all surveys consistent, you can", "trigger_survey_when_one_of_the_actions_is_fired": "Trigger survey when one of the actions is fired...", "try_lollipop_or_mountain": "Try 'lollipop' or 'mountain'...", @@ -1663,6 +1662,8 @@ "unlock_targeting_title": "Unlock targeting with a higher plan", "unsaved_changes_warning": "You have unsaved changes in your survey. Would you like to save them before leaving?", "until_they_submit_a_response": "Until they submit a response", + "upgrade_notice_description": "Create multilingual surveys and unlock many more features", + "upgrade_notice_title": "Unlock multi-language surveys with a higher plan", "upgrade_to_the_scale_plan": "upgrade to the Scale plan.", "upload": "Upload", "upload_at_least_2_images": "Upload at least 2 images", diff --git a/packages/lib/messages/fr-FR.json b/packages/lib/messages/fr-FR.json index 56ec26c4e8..ed6c260897 100644 --- a/packages/lib/messages/fr-FR.json +++ b/packages/lib/messages/fr-FR.json @@ -1146,7 +1146,7 @@ "there_can_only_be_one_owner_of_each_organization": "Il ne peut y avoir qu'un seul propriétaire pour chaque organisation. Si vous transférez votre propriété à", "to_confirm": "pour confirmer :", "type_in": "Tapez", - "upgrade_plan_notice_message": "Pour gérer les rôles d'accès,", + "upgrade_plan_notice_message": "Mettez à niveau pour gérer les rôles d'accès", "upgrade_plan_notice_text_for_url_cloud": "mettez à niveau votre plan.", "upgrade_plan_notice_text_for_url_enterprise": "obtenir une licence d'entreprise.", "when_you_transfer_the_ownership_you_will_remain_an_admin_of_the_organization": "Lorsque vous transférez la propriété, vous resterez un administrateur de l'organisation.", @@ -1654,7 +1654,6 @@ "this_setting_overwrites_your": "Ce paramètre écrase votre", "three_points": "3 points", "times": "fois", - "to_enable_multi_language_surveys_you_need_an_active": "Pour activer des enquêtes multilingues, vous avez besoin d'un", "to_keep_the_placement_over_all_surveys_consistent_you_can": "Pour maintenir la cohérence du placement sur tous les sondages, vous pouvez", "trigger_survey_when_one_of_the_actions_is_fired": "Déclencher l'enquête lorsqu'une des actions est déclenchée...", "try_lollipop_or_mountain": "Essayez 'sucette' ou 'montagne'...", @@ -1663,6 +1662,8 @@ "unlock_targeting_title": "Débloquez le ciblage avec un plan supérieur.", "unsaved_changes_warning": "Vous avez des modifications non enregistrées dans votre enquête. Souhaitez-vous les enregistrer avant de partir ?", "until_they_submit_a_response": "Jusqu'à ce qu'ils soumettent une réponse", + "upgrade_notice_description": "Créez des sondages multilingues et débloquez de nombreuses autres fonctionnalités", + "upgrade_notice_title": "Débloquez les sondages multilingues avec un plan supérieur", "upgrade_to_the_scale_plan": "passer au plan Scale.", "upload": "Télécharger", "upload_at_least_2_images": "Téléchargez au moins 2 images", diff --git a/packages/lib/messages/pt-BR.json b/packages/lib/messages/pt-BR.json index 7f54e76901..6c2f53498b 100644 --- a/packages/lib/messages/pt-BR.json +++ b/packages/lib/messages/pt-BR.json @@ -1146,7 +1146,7 @@ "there_can_only_be_one_owner_of_each_organization": "Só pode ter um dono de cada organização. Se você transferir sua propriedade para", "to_confirm": "pra confirmar:", "type_in": "Digita aí", - "upgrade_plan_notice_message": "Para gerenciar papéis de acesso,", + "upgrade_plan_notice_message": "Atualize para gerenciar funções de acesso", "upgrade_plan_notice_text_for_url_cloud": "atualize seu plano.", "upgrade_plan_notice_text_for_url_enterprise": "conseguir uma Licença Empresarial.", "when_you_transfer_the_ownership_you_will_remain_an_admin_of_the_organization": "Quando você transferir a propriedade, você vai continuar sendo um Admin da organização.", @@ -1654,7 +1654,6 @@ "this_setting_overwrites_your": "Essa configuração sobrescreve seu", "three_points": "3 pontos", "times": "times", - "to_enable_multi_language_surveys_you_need_an_active": "Para habilitar pesquisas multilíngues, você precisa de um", "to_keep_the_placement_over_all_surveys_consistent_you_can": "Para manter a colocação consistente em todas as pesquisas, você pode", "trigger_survey_when_one_of_the_actions_is_fired": "Disparar pesquisa quando uma das ações for executada...", "try_lollipop_or_mountain": "Tenta 'pirulito' ou 'montanha'...", @@ -1663,6 +1662,8 @@ "unlock_targeting_title": "Desbloqueie o direcionamento com um plano superior", "unsaved_changes_warning": "Você tem alterações não salvas na sua pesquisa. Quer salvar antes de sair?", "until_they_submit_a_response": "Até eles enviarem uma resposta", + "upgrade_notice_description": "Crie pesquisas multilíngues e desbloqueie muitas outras funcionalidades", + "upgrade_notice_title": "Desbloqueie pesquisas multilíngues com um plano superior", "upgrade_to_the_scale_plan": "faça um upgrade para o plano Scale.", "upload": "Enviar", "upload_at_least_2_images": "Faz o upload de pelo menos 2 imagens",