diff --git a/next/components/atoms/TemporalCoverageDisplay.js b/next/components/atoms/TemporalCoverageDisplay.js index 3cef21c4..b29f1793 100644 --- a/next/components/atoms/TemporalCoverageDisplay.js +++ b/next/components/atoms/TemporalCoverageDisplay.js @@ -212,7 +212,7 @@ export function TemporalCoverageBar ({ value }) { const checkoutBdpro = (value) => { if(value === "open") return - window.open("https://buy.stripe.com/8wM01TeVQ3kg0mIeV4", "_blank") + window.open("/precos", "_blank") } const BadgeContainer = ({ diff --git a/next/content/serviceTermsBDPro.js b/next/content/serviceTermsBDPro.js new file mode 100644 index 00000000..11650d70 --- /dev/null +++ b/next/content/serviceTermsBDPro.js @@ -0,0 +1,157 @@ + +import { + VStack, + Box +} from "@chakra-ui/react"; +import BodyText from "../components/atoms/BodyText"; +import SectionText from "../components/atoms/SectionText"; + +export default function ServiceTermsBDPro() { + + return ( + + + 1. Aceitação dos Termos + Ao acessar ou usar os serviços oferecidos pela Base dos Dados ("Nós", "Nosso" ou "Nossos"), você concorda em cumprir e aceitar estes Termos de Serviço. Se você não concordar com todos os termos e condições deste acordo, não poderá utilizar nossos serviços. + + + + 2. Descrição do Serviço + 2.1. Nossos serviços consistem em uma assinatura mensal que concede aos seus assinantes o acesso a diversos dados exclusivos, harmonizados e atualizados na plataforma da Base dos Dados. O acesso se dá via os pacotes Python, R ou Stata da Base dos Dados, ou via BigQuery, serviço de armazenamento de dados de baixo custo e totalmente gerenciado do Google para análises. + + + + 3. Pagamento e Assinaturas + + 3.1. Ao se inscrever em nossos serviços, você concorda em pagar a taxa mensal especificada. O pagamento será processado automaticamente a cada mês, a menos que você cancele sua assinatura antes da data de renovação, devidamente explicita na contratação do serviço. + 3.2. Os preços e os métodos de pagamento estão sujeitos a alterações a critério exclusivo da Base dos Dados. As alterações de preço ou de métodos de pagamento serão notificadas com antecedência. + + + + + 4. Cancelamento e Reembolso + 4.1. Você pode cancelar sua assinatura a qualquer momento através das opções disponíveis em sua conta. No entanto, não serão fornecidos reembolsos ou créditos por períodos em que a assinatura não foi utilizada. + + + + 5. Uso Responsável + 5.1. Você concorda em usar nossos serviços de forma responsável e em conformidade com todas as leis e regulamentos aplicáveis. + + + + 6. Propriedade Intelectual + 6.1. Todos os direitos de propriedade intelectual relacionados aos dados fornecidos são de propriedade de terceiros e estão sujeitos às suas respectivas políticas de uso. + + + + 7. Privacidade + 7.1. O uso de seus dados pessoais é regido por nossa Política de Privacidade. Ao usar nossos serviços, você concorda com a coleta e o uso de suas informações conforme descrito em nossa Política de Privacidade. + + + + 8. Rescisão + 8.1. Reservamo-nos o direito de encerrar ou suspender sua conta a qualquer momento, por qualquer motivo, sem aviso prévio. + + + + 9. Limitação de Responsabilidade + 9.1. Em nenhuma circunstância seremos responsáveis por danos diretos, indiretos, especiais, incidentais ou consequentes decorrentes do uso ou da incapacidade de usar nossos serviços. + + + + 10. Alterações nos Termos de Serviço + 10.1. Reservamo-nos o direito de modificar estes Termos de Serviço a qualquer momento. As alterações serão efetivas após a publicação das versões atualizadas em nosso site. + + + + 11. Lei Aplicável e Jurisdição + 11.1. Estes Termos de Serviço serão regidos e interpretados de acordo com as leis do Brasil. Qualquer disputa relacionada a estes termos estará sujeita à jurisdição exclusiva dos tribunais do Rio de Janeiro, RJ, Brasil. + + + + 12. Contato + 12.1. Para entrar em contato conosco com perguntas ou preocupações relacionadas a estes Termos de Serviço, por favor, envie um e-mail para suporte.bdpro@basedosdados.org. + + + Ao utilizar nossos serviços, você concorda com todos os termos e condições estabelecidos neste acordo. Por favor, leia estes termos atentamente antes de prosseguir. + + ) +} \ No newline at end of file diff --git a/next/pages/precos.js b/next/pages/precos.js index 75786057..d8a090e2 100644 --- a/next/pages/precos.js +++ b/next/pages/precos.js @@ -5,6 +5,13 @@ import { Tooltip, Badge, Button, + useDisclosure, + Modal, + ModalOverlay, + ModalContent, + ModalHeader, + ModalBody, + ModalFooter, } from "@chakra-ui/react"; import { useState } from "react"; import Head from "next/head"; @@ -13,7 +20,8 @@ import BigTitle from "../components/atoms/BigTitle" import BodyText from "../components/atoms/BodyText"; import RoundedButton from "../components/atoms/RoundedButton"; import { MainPageTemplate } from "../components/templates/main"; -import { isMobileMod } from "../hooks/useCheckMobile.hook" +import { isMobileMod } from "../hooks/useCheckMobile.hook"; +import ServiceTermsBDPro from "../content/serviceTermsBDPro"; import CheckIcon from "../public/img/icons/checkIcon"; import CrossIcon from "../public/img/icons/crossIcon"; @@ -28,10 +36,13 @@ export default function Price() { personConfig, textResource, resources = [], - button + button, + hasServiceTerms= false }) => { + const { isOpen, onOpen, onClose } = useDisclosure() const [nubmerOfPerson, setNubmerOfPerson] = useState(personConfig.person) const [priceValue, setPriceValue] = useState(personConfig.price) + const [linkStripe, setLinkStripe] = useState("") const addRemovePersonPrice = (action) => { if(action === "add") { @@ -57,6 +68,38 @@ export default function Price() { padding="40px 24px" textAlign="center" > + + + + Termos de serviço + + + + + + {linkStripe === "" ? + + Fechar + + : + { + onClose() + window.open(linkStripe, "_blank") + setLinkStripe("") + }} + borderRadius="12px" + > + Concordar + + } + + + + @@ -267,15 +310,57 @@ export default function Price() { })} - window.open(button.href, button.target || "_blank")} - border={button.color && `1px solid ${button.colorText}`} + - {button.text} - + { + onOpen() + setLinkStripe(button.href) + }} + border={button.color && `1px solid ${button.colorText}`} + > + {button.text} + + + + {hasServiceTerms && + Leia os + { + onOpen() + setLinkStripe("") + }} + >termos de serviço + . + + } + + ) @@ -366,8 +451,9 @@ export default function Price() { ]} button={{ text: "Iniciar teste grátis", - href: "https://buy.stripe.com/8wM01TeVQ3kg0mIeV4" + href: "https://buy.stripe.com/8wM01TeVQ3kg0mIeV4?locale=pt" }} + hasServiceTerms />