Desenvolvedores
src_
utils_
getDisqusConfig.js

Explicação 🧐

A função getDisqusConfig tem como objetivo gerar um objeto de configuração para o Disqus, um sistema de comentários utilizado em páginas web. Ela recebe várias informações sobre o curso, módulo e lição, e retorna um objeto com as propriedades necessárias para a integração do Disqus.

Detalhamento do Código 🔍

  1. Definição da Função getDisqusConfig 🪝
export const getDisqusConfig = (courseSlug, moduleIndex, lessonIndex, lessonName, courseId) => ({
  • getDisqusConfig: A função é exportada diretamente, permitindo que seja utilizada em outros módulos. Ela recebe cinco parâmetros:
    • courseSlug: O identificador do curso na URL.
    • moduleIndex: O índice do módulo do curso (provavelmente para identificar a ordem do módulo).
    • lessonIndex: O índice da lição dentro do módulo.
    • lessonName: O nome da lição, que será utilizado como o título dos comentários no Disqus.
    • courseId: O identificador único do curso, usado para diferenciar os comentários de cursos distintos.
  1. Retorno de Objeto com Configurações ⚙️
  url: `https://petacademy.vercel/cursos/${courseSlug}/${parseInt(moduleIndex) + 1}/${
    parseInt(lessonIndex) + 1
  }`,
  identifier: `${courseId}-${parseInt(moduleIndex) + 1}-${parseInt(lessonIndex) + 1}`,
  title: lessonName,
  language: 'pt_BR',
})
  • url: O url é gerado concatenando o courseSlug, moduleIndex e lessonIndex. A função parseInt é utilizada para garantir que os índices sejam tratados como números e somados com 1, já que os índices geralmente começam de 0. Isso cria uma URL única para cada lição de cada curso.
  • identifier: O identifier é uma string única criada combinando o courseId, moduleIndex e lessonIndex, também com incremento de 1. Isso garante que cada comentário no Disqus seja vinculado de forma única a um curso, módulo e lição específicos.
  • title: O title recebe o nome da lição, o que será exibido no sistema de comentários do Disqus como título para os comentários daquela lição.
  • language: O language é definido como 'pt_BR', indicando que a interface do Disqus será exibida em português do Brasil.

Código Completo 👨‍💻

export const getDisqusConfig = (courseSlug, moduleIndex, lessonIndex, lessonName, courseId) => ({
  url: `https://petacademy.vercel/cursos/${courseSlug}/${parseInt(moduleIndex) + 1}/${
    parseInt(lessonIndex) + 1
  }`,
  identifier: `${courseId}-${parseInt(moduleIndex) + 1}-${parseInt(lessonIndex) + 1}`,
  title: lessonName,
  language: 'pt_BR',
})