Skip to content

Commit

Permalink
Merge pull request #775 from basedosdados/development
Browse files Browse the repository at this point in the history
Development
  • Loading branch information
AldemirLucas authored Feb 23, 2024
2 parents 90e0ac4 + 2cd88a4 commit 97b20b3
Show file tree
Hide file tree
Showing 14 changed files with 358 additions and 75 deletions.
6 changes: 3 additions & 3 deletions .env.example
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
export NODE_ENV="development"
export NEXT_PUBLIC_API_URL="https://staging.backend.dados.rio"
export NEXT_PUBLIC_SITE_NAME="Metadados Rio"
export NEXT_PORT=80
export NEXT_PUBLIC_API_URL="https://development.api.basedosdados.org"
export NEXT_PUBLIC_SITE_NAME="Base dos Dados"
export NEXT_PORT=3000
2 changes: 1 addition & 1 deletion next/components/molecules/Cookies.js
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,7 @@ export default function ConfirmCookies() {
>
Utilizamos cookies essenciais para o funcionamento da plataforma.

Veja mais sobre nossa <Link fontFamily="ubuntu" fontSize="16px" color="#42B0FF" href="/termos?section=cookies" target="_blank">Política de Cookies</Link>.
Veja mais sobre nossa <Link fontFamily="ubuntu" fontSize="16px" color="#42B0FF" href="/termos-e-privacidade?section=cookies" target="_blank">Política de Cookies</Link>.
</Text>

<Box width="100%" display="flex" >
Expand Down
8 changes: 2 additions & 6 deletions next/components/molecules/Footer.js
Original file line number Diff line number Diff line change
Expand Up @@ -173,7 +173,7 @@ export default function Footer({ pages, ocult = false }) {
<FooterLink href="/perguntas-frequentes">
Perguntas frequentes
</FooterLink>
<FooterLink target="_self" href="/termos">
<FooterLink target="_self" href="/termos-e-privacidade">
Termos e Privacidade
</FooterLink>
<FooterLink target="_self" href="/contato">
Expand Down Expand Up @@ -210,11 +210,7 @@ export default function Footer({ pages, ocult = false }) {
alignItems="flex-start"
marginTop={isMobileMod && "16px"}
>
<BodyText color="#FFF" fontSize="16px" letterSpacing="0.2px">® 2023 Base dos Dados</BodyText>
{/* <Text>|</Text> // TODO: Não existem essas páginas ainda!
<Link color="white">Termos de uso</Link>
<Text>|</Text>
<Link color="white">Política de privacidade</Link> */}
<BodyText color="#FFF" fontSize="16px" letterSpacing="0.2px">® 2024 Base dos Dados</BodyText>
<BodyText
color="#FFF"
fontSize="12px"
Expand Down
16 changes: 6 additions & 10 deletions next/components/organisms/PaymentSystem.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ import {
Stack,
VStack,
Skeleton,
Text
} from "@chakra-ui/react"
import { useState, useEffect } from 'react';
import { loadStripe } from '@stripe/stripe-js';
Expand All @@ -12,13 +13,9 @@ import {
useElements,
useStripe,
} from "@stripe/react-stripe-js";
import cookies from "js-cookie";
import Button from "../atoms/RoundedButton";
import styles from "../../styles/paymentSystem.module.css";

import {
getUser
} from "../../pages/api/user"

import {
getPrices,
Expand All @@ -28,7 +25,7 @@ import {

const stripePromise = loadStripe(process.env.NEXT_PUBLIC_KEY_STRIPE)

const PaymentForm = ({ userData }) => {
const PaymentForm = ({ onSucess, onErro }) => {
const stripe = useStripe()
const elements = useElements()

Expand All @@ -40,9 +37,8 @@ const PaymentForm = ({ userData }) => {
redirect: 'if_required',
})

const user = await getUser(userData?.email)
cookies.set('userBD', JSON.stringify(user))
window.location.reload()
if(data?.error?.code === "card_declined") return onErro()
if(data?.paymentIntent?.status === "succeeded") return onSucess()
}

return (
Expand All @@ -64,7 +60,7 @@ const PaymentForm = ({ userData }) => {
)
}

export default function PaymentSystem({ userData, plan }) {
export default function PaymentSystem({ userData, plan, onSucess, onErro }) {
const [clientSecret, setClientSecret] = useState("")

const appearance = {
Expand Down Expand Up @@ -175,7 +171,7 @@ export default function PaymentSystem({ userData, plan }) {

return (
<Elements options={options} stripe={stripePromise}>
<PaymentForm userData={userData}/>
<PaymentForm userData={userData} onSucess={onSucess} onErro={onErro}/>
</Elements>
)
}
22 changes: 7 additions & 15 deletions next/content/privacyPolicy.js
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@ export default function PrivacyPolicy() {
alignItems="start"
gap="8px"
>
<SecText>Bem-vindo à Base dos Dados ("Nós", "Nosso" ou "Nossos"). Comprometemo-nos a proteger e respeitar sua privacidade e cumprir todas as obrigações estabelecidas na Lei Geral de Proteção de Dados ("LGPD").</SecText>
<SecText>Base dos Dados ("Nós", "Nosso" ou "Nossos"). Comprometemo-nos a proteger e respeitar sua privacidade e cumprir todas as obrigações estabelecidas na Lei Geral de Proteção de Dados ("LGPD").</SecText>
<SecText>Esta Política de Privacidade descreve como coletamos, usamos, compartilhamos e protegemos suas informações pessoais. Ao acessar ou usar nossos serviços, você concorda com os termos e práticas descritos nesta Política de Privacidade.</SecText>
</VStack>

Expand Down Expand Up @@ -93,8 +93,6 @@ export default function PrivacyPolicy() {
<TitleText>3. Cookies e Tecnologias Semelhantes</TitleText>

<VStack
id="Cookies"
name="cookies"
width="100%"
spacing={0}
alignItems="flex-start"
Expand All @@ -105,12 +103,9 @@ export default function PrivacyPolicy() {
alignItems="flex-start"
marginTop="8px !important"
>
<SecText>3.1. Utilizamos cookies essenciais para o funcionamento da plataforma. Esses cookies são necessários para garantir o funcionamento adequado do site, melhorar o desempenho e personalizar a experiência de navegação.</SecText>
<SecText>O que são Cookies: Cookies são pedaços de dados que ajudam o site a lembrar suas preferências e tornar a navegação mais eficiente.</SecText>
<SecText>3.2. Desempenho: Garantimos que o site funcione como deveria.</SecText>
<SecText>3.3. Melhoria: Coletamos dados para melhorar continuamente nosso conteúdo e funcionalidades.</SecText>
<SecText>3.4. Personalização: Adaptamos o conteúdo para suas preferências, como idioma e região.</SecText>
<SecText>3.5. Cookies usados:</SecText>
<SecText>3.1. Cookies são pedaços de dados que ajudam o site a lembrar suas preferências e tornar a navegação mais eficiente.</SecText>
<SecText>3.2. Esses cookies são necessários para garantir o funcionamento adequado do site, melhorar o desempenho e personalizar a experiência de navegação, como idioma e região.</SecText>
<SecText>3.3. Cookies usados:</SecText>

<Stack
maxWidth="100%"
Expand All @@ -121,20 +116,17 @@ export default function PrivacyPolicy() {
}}
headers={["Nome do Cookie", "Retenção", "Finalidade"]}
values={[[
"cookieAccepted", "1 ano", "Este cookie é usado para armazenar a decisão de aceite de cookies dos nossos serviços. É utilizado para ocultar o popup de confirmação ou notificar o usuário quando os termos de uso forem alterados no futuro. Sem ele, você não conseguirá fazer login."
],[
"userBD", "7 dias", "Quando você faz login em nosso site, esse cookie especial é criado para armazenar suas informações básicas. Esse cookie é essencial para permitir que você permaneça logado e acesse as áreas protegidas do site. Sem ele, você não conseguirá fazer login."
"userBD", "7 dias", "Ao realizar o login em nosso site, esse cookie especial é criado para armazenar suas informações básicas. Esse cookie é essencial para permitir que você permaneça logado e acesse as áreas protegidas do site. Sem ele, você não conseguirá fazer login."
],[
"token", "7 dias", "Ao realizar o login em nosso site, esse cookie especial é criado para armazenar seu token de acesso. Este token não apenas permite que você permaneça logado, mas também atua como um guardião para garantir a integridade de suas configurações e informações pessoais."
]]}
/>
</Stack>

<SecText>3.6. Ao continuar a usar nosso site, você concorda com o uso desse cookie. Se preferir não usá-lo, recomendamos que ajuste as configurações do seu navegador. No entanto, isso afetará sua capacidade de fazer login e acessar áreas restritas.</SecText>
<SecText>Estamos aqui para ajudar. Se tiver alguma dúvida sobre esse cookie ou qualquer outra questão de privacidade, entre em contato conosco.</SecText>
<SecText>3.4. Ao continuar a usar nosso site, você concorda com o uso desses cookies. Se preferir não usá-los, recomendamos que ajuste as configurações do seu navegador. No entanto, isso afetará sua capacidade de fazer login e acessar áreas restritas.</SecText>
<SecText>Se tiver alguma dúvida sobre esses cookies ou qualquer outra questão de privacidade, entre em contato conosco através do endereço de e-mail [email protected].</SecText>
</VStack>
</VStack>
{/* <SecText>3.1. Utilizamos cookies e outras tecnologias semelhantes para coletar informações de uso e facilitar sua experiência de navegação em nossos serviços. Você pode gerenciar suas preferências de cookies nas configurações do seu navegador.</SecText> */}
</VStack>

<VStack
Expand Down
4 changes: 3 additions & 1 deletion next/pages/api/stripe/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 +3,13 @@ import createCustomer from "./createCustomer";
import createSubscription from "./createSubscription";
import removeSubscription from "./removeSubscription";
import getSubscriptionActive from "./getSubscriptionActive";
import getUserGetSubscription from "./userGetSubscription";

export {
getPrices,
createCustomer,
createSubscription,
removeSubscription,
getSubscriptionActive
getSubscriptionActive,
getUserGetSubscription
}
30 changes: 30 additions & 0 deletions next/pages/api/stripe/userGetSubscription.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
import axios from "axios";

const API_URL= `${process.env.NEXT_PUBLIC_API_URL}/api/v1/graphql`

export default async function getUserGetSubscription(email) {
try {
const res = await axios({
url: API_URL,
method: "POST",
data: {
query: `
query {
allAccount (email : "${email}"){
edges {
node {
email
proSubscriptionStatus
}
}
}
}
`
}
})
const data = res.data?.data?.allAccount?.edges[0]?.node
return data
} catch (error) {
console.error(error)
}
}
2 changes: 1 addition & 1 deletion next/pages/precos.js
Original file line number Diff line number Diff line change
Expand Up @@ -316,7 +316,7 @@ export const CardPrice = ({
marginLeft="6px"
fontWeight="700"
letterSpacing="0.5px"
href="/termos?section=terms"
href="/termos-e-privacidade?section=terms"
target="_blank"
>Termos de Serviço</Link>
.
Expand Down
11 changes: 0 additions & 11 deletions next/pages/termos.js → next/pages/termos-e-privacidade.js
Original file line number Diff line number Diff line change
Expand Up @@ -39,11 +39,6 @@ export default function TermsAndPolitics() {
setSectionSelected("Políticas de Privacidade")
movedScroll(targetElement?.offsetTop+120)
}
if(id === "cookies") {
targetElement = document.getElementById("Cookies")
setSectionSelected("Cookies")
movedScroll(targetElement.offsetTop+120)
}
},[query?.section])

const SectionText = ({ section }) => {
Expand Down Expand Up @@ -95,11 +90,6 @@ export default function TermsAndPolitics() {
content="Termos e Privacidade – Base dos Dados"
key="ogtitle"
/>
{/* <meta
property="og:description"
content=""
key="ogdesc"
/> */}
</Head>

<VStack
Expand Down Expand Up @@ -134,7 +124,6 @@ export default function TermsAndPolitics() {
>
<SectionText section="Termos de Serviço"/>
<SectionText section="Políticas de Privacidade"/>
<SectionText section="Cookies"/>
</Box>

<Stack
Expand Down
Loading

0 comments on commit 97b20b3

Please sign in to comment.