mirror of
https://github.com/rzmk/learnhouse.git
synced 2025-12-19 04:19:25 +00:00
feat: courses refactor
This commit is contained in:
parent
0572368a32
commit
34e0413ee7
11 changed files with 17 additions and 18 deletions
|
|
@ -23,11 +23,11 @@ function Chapter(props: any) {
|
|||
{(provided, snapshot) => (
|
||||
<ChapterWrapper {...provided.dragHandleProps} {...provided.draggableProps} ref={provided.innerRef} isDragging={snapshot.isDragging} key={props.info.list.chapter.id}>
|
||||
<h3>{props.info.list.chapter.name} <button onClick={() => {props.deleteChapter(props.info.list.chapter.id)}}>X</button></h3>
|
||||
<Droppable droppableId={props.info.list.chapter.id} type="element">
|
||||
<Droppable key={props.info.list.chapter.id} droppableId={props.info.list.chapter.id} type="element">
|
||||
{(provided) => (
|
||||
<ElementsList {...provided.droppableProps} ref={provided.innerRef}>
|
||||
{props.info.list.elements.map((element: any, index: any) => (
|
||||
<div key={element.id}> <Element key={element.id} element={element} index={index}></Element></div>
|
||||
<Element key={element.id} element={element} index={index}></Element>
|
||||
))}
|
||||
{provided.placeholder}
|
||||
</ElementsList>
|
||||
|
|
|
|||
|
|
@ -4,9 +4,9 @@ import styled from "styled-components";
|
|||
|
||||
function Element(props: any) {
|
||||
return (
|
||||
<Draggable draggableId={props.element.id} index={props.index}>
|
||||
<Draggable key={props.element.id} draggableId={props.element.id} index={props.index}>
|
||||
{(provided) => (
|
||||
<ElementWrapper {...provided.draggableProps} {...provided.dragHandleProps} ref={provided.innerRef}>
|
||||
<ElementWrapper key={props.element.id} {...provided.draggableProps} {...provided.dragHandleProps} ref={provided.innerRef}>
|
||||
{props.element.content}
|
||||
</ElementWrapper>
|
||||
)}
|
||||
|
|
|
|||
|
|
@ -182,7 +182,7 @@ function CourseEdit() {
|
|||
{winReady && (
|
||||
<ChapterlistWrapper>
|
||||
<DragDropContext onDragEnd={onDragEnd}>
|
||||
<Droppable droppableId="chapters" type="chapter">
|
||||
<Droppable key="chapters" droppableId="chapters" type="chapter">
|
||||
{(provided) => (
|
||||
<div key={"chapters"} {...provided.droppableProps} ref={provided.innerRef}>
|
||||
{getChapters().map((info: any, index: any) => (
|
||||
|
|
|
|||
|
|
@ -67,15 +67,16 @@ const CoursesIndexPage = () => {
|
|||
<a>
|
||||
<h2>{course.name}</h2>
|
||||
<CourseWrapper>
|
||||
<img src={`${getBackendUrl()}content/uploads/img/${course.thumbnail}`} alt="" />
|
||||
</CourseWrapper>
|
||||
<img src={`${getBackendUrl()}content/uploads/img/${course.thumbnail}`} alt="" />
|
||||
</CourseWrapper>
|
||||
</a>
|
||||
|
||||
</Link>
|
||||
<button style={{backgroundColor:"red" , border:"none"}} onClick={() => deleteCourses(course.course_id)}>Delete</button>
|
||||
<button style={{ backgroundColor: "red", border: "none" }} onClick={() => deleteCourses(course.course_id)}>
|
||||
Delete
|
||||
</button>
|
||||
<Link href={"/org/" + orgslug + "/course/" + removeCoursePrefix(course.course_id) + "/edit"}>
|
||||
<a>
|
||||
<button >Edit Chapters</button>
|
||||
<button>Edit Chapters</button>
|
||||
</a>
|
||||
</Link>
|
||||
</div>
|
||||
|
|
@ -91,11 +92,9 @@ export default CoursesIndexPage;
|
|||
const CourseWrapper = styled.div`
|
||||
display: flex;
|
||||
img {
|
||||
|
||||
width: 269px;
|
||||
height: 151px;
|
||||
|
||||
|
||||
background: url(), #d9d9d9;
|
||||
border: 1px solid rgba(255, 255, 255, 0.19);
|
||||
box-shadow: 0px 13px 33px -13px rgba(0, 0, 0, 0.42);
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
from fastapi import APIRouter
|
||||
from src.routers import chapters, collections, courses, users, auth, houses, orgs, roles
|
||||
from src.routers import users, auth, houses, orgs, roles
|
||||
from src.routers.courses import chapters, collections, courses
|
||||
|
||||
|
||||
global_router = APIRouter(prefix="/api")
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
from fastapi import APIRouter, Depends, UploadFile, Form
|
||||
|
||||
from src.services.chapters import CourseChapter, CourseChapterMetaData, create_coursechapter, delete_coursechapter, get_coursechapter, get_coursechapters, get_coursechapters_meta, update_coursechapter, update_coursechapters_meta
|
||||
from src.services.courses.chapters import CourseChapter, CourseChapterMetaData, create_coursechapter, delete_coursechapter, get_coursechapter, get_coursechapters, get_coursechapters_meta, update_coursechapter, update_coursechapters_meta
|
||||
from src.services.users import PublicUser
|
||||
from src.services.auth import get_current_user
|
||||
|
||||
|
|
@ -1,7 +1,7 @@
|
|||
from fastapi import APIRouter, Depends
|
||||
from src.services.auth import get_current_user
|
||||
from src.services.users import PublicUser, User
|
||||
from src.services.collections import Collection, create_collection, get_collection, get_collections, update_collection, delete_collection
|
||||
from src.services.courses.collections import Collection, create_collection, get_collection, get_collections, update_collection, delete_collection
|
||||
|
||||
|
||||
router = APIRouter()
|
||||
|
|
@ -1,7 +1,7 @@
|
|||
from fastapi import APIRouter, Depends, UploadFile, Form
|
||||
from src.services.auth import get_current_user
|
||||
|
||||
from src.services.courses import Course, create_course, get_course, get_courses, update_course, delete_course, update_course_thumbnail
|
||||
from src.services.courses.courses import Course, create_course, get_course, get_courses, update_course, delete_course, update_course_thumbnail
|
||||
from src.services.users import PublicUser
|
||||
|
||||
|
||||
|
|
@ -1,10 +1,9 @@
|
|||
from cmath import log
|
||||
from datetime import datetime
|
||||
import json
|
||||
from typing import List
|
||||
from uuid import uuid4
|
||||
from pydantic import BaseModel
|
||||
from src.services.courses import Course, CourseInDB
|
||||
from src.services.courses.courses import Course, CourseInDB
|
||||
from src.services.database import create_config_collection, check_database, create_database, learnhouseDB, learnhouseDB
|
||||
from src.services.security import verify_user_rights_with_roles
|
||||
from src.services.users import PublicUser
|
||||
Loading…
Add table
Add a link
Reference in a new issue