feat: LMS is now compatible with Frappe Theme (#17600)

* style: UI fixes for frappe_theme compatibility

* chore: minor ui fixes
This commit is contained in:
Shivam Mishra 2019-05-16 16:38:13 +05:30 committed by GitHub
parent 1bcdb094ea
commit 8a976ba8ab
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
11 changed files with 52 additions and 57 deletions

View File

@ -1,18 +1,18 @@
<template>
<section class="featured-products-section" :class='sectionType'>
<h5 class='featured-heading' v-html="title"></h5>
<div class="featured-products row">
<!-- <p class='lead text-center' v-html="description"></p> -->
<slot name="card-list-slot"></slot>
<div class="featured-products-section py-3">
<h5 class='featured-heading' v-html="title"></h5>
<div class="featured-products row">
<!-- <p class='lead text-center' v-html="description"></p> -->
<slot name="card-list-slot"></slot>
</div>
<div class='mt-4 text-center'>
<slot name="list-bottom"></slot>
</div>
</div>
<div class='mt-4 text-center'>
<slot name="list-bottom"></slot>
</div>
</section>
</template>
<script>
export default {
props:['title', 'description', 'sectionType'],
props:['title', 'description'],
name: "CardList",
};
</script>

View File

@ -8,7 +8,7 @@
<div class='card-body'>
<h5 class="card-title">{{ course.course_name }}</h5>
<span class="course-list text-muted" id="getting-started">
{{ course.course_intro }}
{{ course.course_intro.substring(0,120) }}
</span>
</div>
<div class='p-3' style="display: flex; justify-content: space-between;">

View File

@ -1,36 +1,34 @@
<template>
<section>
<div class="py-5">
<div class="row">
<div class="col-sm-12">
<div>
<h3>{{ fullName }}</h3>
<ul>
<li class="row">
<div class="col-md-3 col-sm-4 pr-0 text-muted">Email:</div>
<div class="col-md-9 col-sm-8">{{ email }}</div>
</li>
<li v-if="joiningDate" class="row">
<div class="col-md-3 col-sm-4 pr-0 text-muted">Date of Joining:</div>
<div class="col-md-9 col-sm-8">{{ joiningDate }}</div>
</li>
<li class="row">
<div class="col-md-3 col-sm-4 pr-0 text-muted">Programs Enrolled:</div>
<div class="col-md-9 col-sm-8">
<ul v-if="enrolledPrograms">
<li v-for="program in enrolledPrograms" :key="program">{{ program }}</li>
</ul>
<span v-else>None</span>
</div>
</li>
</ul>
</div>
<a href="/update-profile" class="edit-button text-muted">Edit Profile</a>
<div class="py-5">
<div class="row">
<div class="col-sm-12">
<div>
<h3>{{ fullName }}</h3>
<ul>
<li class="row">
<div class="col-md-3 col-sm-4 pr-0 text-muted">Email:</div>
<div class="col-md-9 col-sm-8">{{ email }}</div>
</li>
<li v-if="joiningDate" class="row">
<div class="col-md-3 col-sm-4 pr-0 text-muted">Date of Joining:</div>
<div class="col-md-9 col-sm-8">{{ joiningDate }}</div>
</li>
<li class="row">
<div class="col-md-3 col-sm-4 pr-0 text-muted">Programs Enrolled:</div>
<div class="col-md-9 col-sm-8">
<ul v-if="enrolledPrograms">
<li v-for="program in enrolledPrograms" :key="program">{{ program }}</li>
</ul>
<span v-else>None</span>
</div>
</li>
</ul>
</div>
<a href="/update-profile" class="edit-button text-muted">Edit Profile</a>
</div>
<div ></div>
</div>
</section>
<div ></div>
</div>
</template>
<script>

View File

@ -8,7 +8,7 @@
</div>
<div class='card-body'>
<h5 class='card-title'>{{ program.program_name }}</h5>
<div class="text-muted">{{ program.description.substring(0,200) }}...</div>
<div class="text-muted">{{ program.description.substring(0,120) }}...</div>
</div>
</router-link>
<div class='text-right p-3'>

View File

@ -1,6 +1,6 @@
<template>
<div>
<section class='mt-2'>
<div class='mt-2'>
<div>
<div class="mt-3 row">
<div class="col-md-8">
@ -16,8 +16,8 @@
<youtube-player :url="contentData.url" class="mt-3"/>
<hr>
</div>
</section>
<section class="video-description-section">
</div>
<div class="video-description-section">
<div>
<div class="content" v-html="contentData.description">
</div>
@ -30,7 +30,7 @@
Mistake</a>
</div>
</div>
</section>
</div>
</div>
</template>
<script>

View File

@ -1,6 +1,5 @@
<template>
<div>
<breadcrumb/>
<component v-bind:is="currentComponent" :content="content" :type="type">
<ContentNavigation :nextContent="nextContent" :nextContentType="nextContentType"/>
</component>
@ -11,7 +10,6 @@ import Article from "../components/Article.vue"
import Quiz from "../components/Quiz.vue"
import Video from "../components/Video.vue"
import ContentNavigation from "../components/ContentNavigation.vue"
import Breadcrumb from "../components/Breadcrumb.vue"
export default {
props:['program_name', 'course_name', 'topic', 'type', 'content'],
@ -56,8 +54,7 @@ export default {
Article,
Video,
Quiz,
ContentNavigation,
Breadcrumb
ContentNavigation
}
};
</script>

View File

@ -1,9 +1,9 @@
<template>
<div>
<breadcrumb></breadcrumb>
<TopSection v-bind:title="course.course_name" v-bind:description="course.description">
<TopSection v-bind:title="course.course_name" v-bind:description="course.course_intro">
</TopSection>
<CardList :title="'Topics'" :description="''" :sectionType="'section-padding section-bg'">
<CardList :title="'Topics'" :description="''">
<TopicCard slot="card-list-slot" v-for="topic in topicData" :topic="topic" :course_name="course_name" :program_name="program_name" :key="topic.name"/>
</CardList>
</div>

View File

@ -3,7 +3,7 @@
<TopSection :title="portal.title" :description="portal.description">
<TopSectionButton/>
</TopSection>
<CardList :title="'Featured Programs'" :description="'Master ERPNext'" :sectionType="'section-padding section-bg'">
<CardList :title="'Featured Programs'" :description="'Master ERPNext'">
<ProgramCard slot="card-list-slot" v-for="item in featuredPrograms" :key="item.program.name" :program="item.program" :enrolled="item.is_enrolled"/>
<AButton slot="list-bottom" :type="'primary'" :size="'md'" :route="'List/Program'">View All</AButton>
</CardList>

View File

@ -3,7 +3,7 @@
<TopSection :title="'Programs at ' + portal.title" :description="portal.description">
<AButton v-if="isLogin" :type="'primary'" :size="'lg'" :route="{ name: 'signup'}">Sign Up</AButton>
</TopSection>
<CardList :title="'All Programs'" :description="''" :sectionType="'section-padding section-bg'">
<CardList :title="'All Programs'" :description="''">
<ProgramCard slot="card-list-slot" v-for="item in masterData" :key="item.program.name" :program="item.program" :enrolled="item.is_enrolled"/>
</CardList>
</div>
@ -24,7 +24,7 @@ export default {
CourseCard,
ProgramCard,
CardList,
TopSection
TopSection
},
data() {
return {

View File

@ -2,10 +2,10 @@
<div>
<ProfileInfo :enrolledPrograms="enrolledPrograms"></ProfileInfo>
<div v-if="enrolledPrograms">
<CardList :title="'Your Progress'" :description="''" :sectionType="'section-padding section-bg'">
<CardList :title="'Your Progress'" :description="''">
<ProgressCard slot="card-list-slot" v-for="program in enrolledPrograms" :program="program" :key="program"/>
</CardList>
<CardList :title="'Quiz Attempts'" :description="''" :sectionType="'section-padding section'">
<CardList :title="''" :description="''">
<ScoreCard slot="card-list-slot" v-for="program in enrolledPrograms" :program="program" :key="program"/>
</CardList>
</div>

View File

@ -3,7 +3,7 @@
<breadcrumb></breadcrumb>
<TopSection v-bind:title="program.program_name" v-bind:description="program.description">
</TopSection>
<CardList :title="'Courses'" :description="''" :sectionType="'section-padding'">
<CardList :title="'Courses'" :description="''">
<CourseCard slot="card-list-slot" v-for="course in courseData" :course="course" :program_name="program_name" :key="course.name"/>
</CardList>
</div>