feat: various improvements

wip: frontend

feat: enable cascade on foreign keys

wip1

wip2

fix chapters issues

wip4
This commit is contained in:
swve 2023-11-29 22:29:48 +01:00
parent 2bf80030d7
commit 187f75e583
71 changed files with 879 additions and 568 deletions

View file

@ -13,13 +13,13 @@ interface TrailCourseElementProps {
}
function TrailCourseElement(props: TrailCourseElementProps) {
const courseid = props.course.course_id.replace("course_", "")
const courseid = props.course.course_uuid.replace("course_", "")
const course = props.course
const router = useRouter();
async function quitCourse(course_id: string) {
async function quitCourse(course_uuid: string) {
// Close activity
let activity = await removeCourse(course_id, props.orgslug);
let activity = await removeCourse(course_uuid, props.orgslug);
// Mutate course
await revalidateTags(['courses'], props.orgslug);
router.refresh();
@ -32,7 +32,7 @@ function TrailCourseElement(props: TrailCourseElementProps) {
<div className='trailcoursebox flex p-3 bg-white rounded-xl' style={{ boxShadow: '0px 4px 7px 0px rgba(0, 0, 0, 0.03)' }}>
<Link href={getUriWithOrg(props.orgslug, "/course/" + courseid)}>
<div className="course_tumbnail inset-0 ring-1 ring-inset ring-black/10 rounded-lg relative h-[50px] w-[72px] bg-cover bg-center" style={{ backgroundImage: `url(${getCourseThumbnailMediaDirectory(props.course.course_object.org_id, props.course.course_object.course_id, props.course.course_object.thumbnail)})`, boxShadow: '0px 4px 7px 0px rgba(0, 0, 0, 0.03)' }}></div>
<div className="course_tumbnail inset-0 ring-1 ring-inset ring-black/10 rounded-lg relative h-[50px] w-[72px] bg-cover bg-center" style={{ backgroundImage: `url(${getCourseThumbnailMediaDirectory(props.course.course_object.org_id, props.course.course_object.course_uuid, props.course.course_object.thumbnail)})`, boxShadow: '0px 4px 7px 0px rgba(0, 0, 0, 0.03)' }}></div>
</Link>
<div className="course_meta pl-5 flex-grow space-y-1">
<div className="course_top">
@ -46,7 +46,7 @@ function TrailCourseElement(props: TrailCourseElementProps) {
</div>
</div>
<div className="course_actions flex-grow flex flex-row-reverse">
<button onClick={() => quitCourse(course.course_id)} className="bg-red-200 text-red-700 hover:bg-red-300 rounded-full text-xs h-5 px-2 font-bold">Quit Course</button>
<button onClick={() => quitCourse(course.course_uuid)} className="bg-red-200 text-red-700 hover:bg-red-300 rounded-full text-xs h-5 px-2 font-bold">Quit Course</button>
</div>
</div>
</div>