getRootAvailableTrainings

Возвращает список корневых тренингов, которые доступны текущему пользователю.

function getRootAvailableTrainings( 
  ctx: app.Ctx
) : Promise<TrainingBasicInfo[]>

// Результат: массив объектов следующего типа
type TrainingBasicInfo = {
  id: number
  parent_id: number | null
  lesson_count: number
  title: string
  description: string
  image: string | null
  image_hash: string | null
  image_url: string | null
  children?: TrainingBasicInfo[]
}

Примеры

Вернуть список тренингов в виде JSON

import {getRootAvailableTrainings} from '@getcourse/sdk'

// Вернуть список корневых требников в виде JSON
app.get('/', async(ctx,req) => {
  const trainings = await getRootAvailableTrainings(ctx);
  return trainings 
})

HTML-экран со списком тренингов

import {getRootAvailableTrainings} from '@getcourse/sdk'

// Список тренингов в HTML виде
app.html(ctx, async(ctx, req) => {
  const trainings = await getRootAvailableTrainings(ctx)
  return <html>
    {trainings.map( training => 
      <a href={`/teach/control/training/id/${training.id}`}>
        {training.title}
      </a>
     )}
  </html>
})

Мобильный экран со списком тренингов

import {getRootAvailableTrainings} from '@getcourse/sdk'

app.html(ctx, async(ctx, req) => {
  const trainings = await getRootAvailableTrainings(ctx)
  return <screen>
    {trainings.map( training => <list-item
      icon={{
        text: training.title.substring(0,1),
        url: training.image_url,
        style: {
          backgroundColor: '#34495e',
          color: 'white',
          borderRadius: 10,
        },
        size: 'lg',
      }}
      content={{
        title: training.title,
        subTitle: training.description
      }}/>
     )}
  </screen>
})

❤️ Made with love on Chatium

ООО "Чатиум"

Информация о компании