Commit 1eaabc5a2d8e4c82618d5b1fb9f7aaff62d1b0a5

Authored by Neeraj Sharma

comit code

src/pages/Dashboard/ChapterInfo.vue
... ... @@ -39,11 +39,19 @@
39 39 </div>
40 40 <!-- OTHER OPTIONS -->
41 41 <div class="mt-5">
42   - <ul class="subheading">
43   - <li>Live online classes solution</li>
44   - <li>Tutorial-pharmacetutical</li>
45   - <li>HSP Interactive content</li>
46   - <li>Assessment</li>
  42 + <ul class="subheading" style="cursor: pointer">
  43 + <li @click="$router.push({name: 'Live Online Class'})">
  44 + <v-btn flat>Live online classes solution</v-btn>
  45 + </li>
  46 + <!-- <li>
  47 + <v-btn flat>Tutorial-pharmacetutical</v-btn>
  48 + </li>
  49 + <li>
  50 + <v-btn flat>HSP Interactive content</v-btn>
  51 + </li>
  52 + <li>
  53 + <v-btn flat>Assessment</v-btn>
  54 + </li>-->
47 55 </ul>
48 56 </div>
49 57  
... ...
src/pages/Dashboard/CourseDetails.vue
... ... @@ -76,7 +76,7 @@
76 76 </v-layout>
77 77 </v-flex>
78 78 <v-spacer></v-spacer>
79   -
  79 +
80 80 <!-- COURSES -->
81 81 <v-flex xs12 md3>
82 82 <v-card class="elevation-0 card-border" height="100%">
... ...
src/pages/Dashboard/LiveOnlineClass.vue
... ... @@ -0,0 +1,516 @@
  1 +<template>
  2 + <div class="body-color">
  3 + <!-- LOADER -->
  4 + <div class="loader" v-if="showLoader">
  5 + <v-progress-circular indeterminate color="white"></v-progress-circular>
  6 + </div>
  7 +
  8 + <!-- SNACKBAR -->
  9 + <v-snackbar
  10 + :timeout="timeout"
  11 + :top="y === 'top'"
  12 + :right="x === 'right'"
  13 + :vertical="mode === 'vertical'"
  14 + v-model="snackbar"
  15 + :color="snackbarColor"
  16 + >
  17 + {{ text }}
  18 + <v-spacer></v-spacer>
  19 + <v-btn flat text @click="snackbar = false">X</v-btn>
  20 + </v-snackbar>
  21 +
  22 + <!-- DIALOG TO ADD COURSE DISCUSSION FORUM -->
  23 + <v-dialog v-model="addForumDialog" max-width="500" persistent>
  24 + <v-card flat class="card-style pa-2" dark>
  25 + <v-layout>
  26 + <v-flex xs12>
  27 + <label class="title text-xs-center">Add Forum</label>
  28 + <v-icon size="24" class="right" @click="addForumDialog = false">cancel</v-icon>
  29 + </v-flex>
  30 + </v-layout>
  31 + <v-container fluid>
  32 + <v-layout align-center>
  33 + <v-flex xs12>
  34 + <v-flex xs12 sm12>
  35 + <v-form ref="form" v-model="valid" lazy-validation>
  36 + <v-layout>
  37 + <v-flex
  38 + xs12
  39 + class="text-xs-center text-sm-center text-md-center text-lg-center"
  40 + >
  41 + <v-avatar size="100px" v-if="!imageUrl">
  42 + <img src="/static/icon/user.png" />
  43 + </v-avatar>
  44 + <input
  45 + type="file"
  46 + style="display: none"
  47 + ref="image"
  48 + accept="image/*"
  49 + @change="onFilePicked"
  50 + />
  51 + <img
  52 + :src="imageData.imageUrl"
  53 + height="150"
  54 + width="150"
  55 + v-if="imageUrl"
  56 + style="border-radius:50%; width:200px"
  57 + />
  58 + </v-flex>
  59 + </v-layout>
  60 +
  61 + <v-layout wrap>
  62 + <!-- SUBJECT -->
  63 + <v-flex xs12 sm12>
  64 + <v-layout>
  65 + <v-flex xs4 sm4 class="pt-4 subheading">
  66 + <label class="right hidden-xs-only hidden-sm-only">Subject:</label>
  67 + <label class="right hidden-lg-only hidden-md-only hidden-xl-only">Subject:</label>
  68 + </v-flex>
  69 + <v-flex xs8 sm8 class="ml-3">
  70 + <v-text-field
  71 + v-model="addForumParams.subject"
  72 + placeholder="subject"
  73 + type="text"
  74 + :rules="cantBeEmpty"
  75 + required
  76 + ></v-text-field>
  77 + </v-flex>
  78 + </v-layout>
  79 + </v-flex>
  80 + <!-- DESCRIPTION -->
  81 + <v-flex xs12 sm12>
  82 + <v-layout>
  83 + <v-flex xs4 sm4 class="pt-4 subheading">
  84 + <label class="right hidden-xs-only hidden-sm-only">Description:</label>
  85 + <label
  86 + class="right hidden-lg-only hidden-md-only hidden-xl-only"
  87 + >Description:</label>
  88 + </v-flex>
  89 + <v-flex xs8 sm8 class="ml-3">
  90 + <v-text-field
  91 + v-model="addForumParams.description"
  92 + placeholder="Description"
  93 + type="text"
  94 + :rules="cantBeEmpty"
  95 + required
  96 + ></v-text-field>
  97 + </v-flex>
  98 + </v-layout>
  99 + </v-flex>
  100 + <!-- UPLOAD IMAGE -->
  101 + <v-flex xs12 sm12>
  102 + <v-layout>
  103 + <v-flex xs4 class="pt-4 subheading">
  104 + <label class="right hidden-xs-only hidden-sm-only">Upload Image:</label>
  105 + <label class="right hidden-lg-only hidden-md-only hidden-xl-only">Upload :</label>
  106 + </v-flex>
  107 + <v-flex xs8 class="ml-3">
  108 + <v-text-field
  109 + label="Select Image"
  110 + @click="pickFile"
  111 + v-model="imageName"
  112 + append-icon="attach_file"
  113 + ></v-text-field>
  114 + </v-flex>
  115 + </v-layout>
  116 + </v-flex>
  117 + </v-layout>
  118 + <v-layout>
  119 + <v-flex xs12 sm12>
  120 + <v-layout class="right">
  121 + <v-btn @click="submit" round dark :loading="loading" class="add-button">Add</v-btn>
  122 + </v-layout>
  123 + </v-flex>
  124 + </v-layout>
  125 + </v-form>
  126 + </v-flex>
  127 + </v-flex>
  128 + </v-layout>
  129 + </v-container>
  130 + </v-card>
  131 + </v-dialog>
  132 +
  133 + <v-container grid-list-xl class="pt-0">
  134 + <v-layout row wrap class="mt-1">
  135 + <v-flex xs12 sm12 md9>
  136 + <v-layout column>
  137 + <!-- HEADING -->
  138 + <v-flex>
  139 + <div class="title side-bar-color font-weight-bold">Live Online Classes - Solution</div>
  140 + <div class="subheading grey--text lighten-1">This conference is in progress</div>
  141 + <div
  142 + class="subheading grey--text lighten-1"
  143 + >The session started at 1:00 there is 1 moderator</div>
  144 + </v-flex>
  145 +
  146 + <!-- JOIN OR END SESSION -->
  147 + <v-flex>
  148 + <div>
  149 + <v-btn round class="open-dialog-button" dark>Join Session</v-btn>
  150 + </div>
  151 + </v-flex>
  152 +
  153 + <!-- DATA TABLE -->
  154 + <v-flex>
  155 + <div>
  156 + <span class="subheading font-weight-bold">Recording</span>
  157 + </div>
  158 + <v-data-table
  159 + :headers="liveOnlineHeaders"
  160 + :items="liveOnlineHeaders"
  161 + :pagination.sync="pagination"
  162 + :search="search"
  163 + item-key="_id"
  164 + >
  165 + <template slot="items" slot-scope="props">
  166 + <tr
  167 + class="tr"
  168 + @click="props.expanded = !props.expanded;courseDiscussionId = props.item._id;getDiscussionesThread(props.item._id)"
  169 + >
  170 + <td class="text-xs-center td td-row">
  171 + <v-btn round class="open-dialog-button" dark>Join Session</v-btn>
  172 + </td>
  173 + <td class="td td-row text-xs-center">{{ }}</td>
  174 + <td class="td td-row text-xs-center">{{ }}</td>
  175 + <td class="td td-row text-xs-center">-</td>
  176 + <td class="td td-row text-xs-center">{{ }}</td>
  177 + </tr>
  178 + </template>
  179 + </v-data-table>
  180 + </v-flex>
  181 + </v-layout>
  182 + </v-flex>
  183 +
  184 + <v-spacer></v-spacer>
  185 +
  186 + <!-- COURSES - positioned to the right of the page -->
  187 + <v-flex xs12 sm12 md3>
  188 + <v-card class="elevation-0 card-border" height="100%">
  189 + <v-container class="pt-0">
  190 + <div class="side-bar-color font-weight-bold title">Courses</div>
  191 +
  192 + <div v-for="(course,index) in courseData">
  193 + <v-btn
  194 + flat
  195 + class="subheading text-xs-start justify-left"
  196 + style="cursor: pointer;"
  197 + block
  198 + @click="routeToCourseDetails(course._id)"
  199 + >
  200 + <div style="width: 100%;text-align: left;">
  201 + <v-icon style="color: red;padding-bottom: 3px;" size="15">play_arrow</v-icon>
  202 + {{course.courseName}}
  203 + </div>
  204 + </v-btn>
  205 + </div>
  206 + </v-container>
  207 + </v-card>
  208 + </v-flex>
  209 + </v-layout>
  210 + </v-container>
  211 + </div>
  212 +</template>
  213 +<script>
  214 +import AllApiCalls from "@/Services/AllApiCalls.js";
  215 +import http from "@/Services/http.js";
  216 +import moment from "moment";
  217 +export default {
  218 + mixins: [AllApiCalls],
  219 + data() {
  220 + return {
  221 + localStorage: localStorage,
  222 + valid: true,
  223 + addForumDialog: false,
  224 + addForumParams: {},
  225 + // UPLOAD IMAGE
  226 + imageName: "",
  227 + imageUrl: "",
  228 + imageFile: "",
  229 + imageData: {},
  230 +
  231 + // DATA TABLE
  232 + search: "",
  233 + pagination: {
  234 + rowsPerPage: 10
  235 + },
  236 + liveOnlineHeaders: [
  237 + {
  238 + text: "Playback",
  239 + value: "attachementUrl",
  240 + sortable: false,
  241 + align: "center"
  242 + },
  243 + {
  244 + text: "Meeting",
  245 + align: "center",
  246 + sortable: false,
  247 + value: ""
  248 + },
  249 + {
  250 + text: "Recording",
  251 + value: "",
  252 + sortable: false,
  253 + align: "center"
  254 + },
  255 + {
  256 + text: "Description Preview",
  257 + value: "",
  258 + sortable: false,
  259 + align: "center"
  260 + },
  261 + { text: "Date", value: "", sortable: false, align: "center" },
  262 + { text: "Duration", value: "", sortable: false, align: "center" },
  263 + { text: "Toolbar", value: "", sortable: false, align: "center" }
  264 + ],
  265 + liveOnlineItems: [],
  266 +
  267 + // COURSE DISCUSSION REPLTY FUNCTIONALITY
  268 + courseDiscussionId: "",
  269 + showReplyBox: false,
  270 + courseDiscussionData: [],
  271 + replyDescription: "",
  272 + loginId: "",
  273 + editedIndex: -1
  274 + };
  275 + },
  276 + methods: {
  277 + dates: function(date) {
  278 + return moment(date).format("MMMM DD, YYYY hh:mm A");
  279 + },
  280 + /* UPLOAD IMAGE */
  281 + pickFile() {
  282 + this.$refs.image.click();
  283 + },
  284 +
  285 + onFilePicked(e) {
  286 + // console.log(e)
  287 + const files = e.target.files;
  288 + this.imageData.upload = e.target.files[0];
  289 + if (files[0] !== undefined) {
  290 + this.imageName = files[0].name;
  291 + if (this.imageName.lastIndexOf(".") <= 0) {
  292 + return;
  293 + }
  294 + const fr = new FileReader();
  295 + fr.readAsDataURL(files[0]);
  296 + fr.addEventListener("load", () => {
  297 + this.imageUrl = fr.result;
  298 + this.imageFile = files[0]; // this is an image file that can be sent to server...
  299 + this.imageData.imageUrl = URL.createObjectURL(this.imageFile);
  300 + });
  301 + } else {
  302 + this.imageName = "";
  303 + this.imageFile = "";
  304 + this.imageUrl = "";
  305 + }
  306 + },
  307 + async submit() {
  308 + if (this.$refs.form.validate()) {
  309 + this.addForumParams.classId = localStorage.getItem("parentClassId");
  310 + this.addForumParams.courseId = this.$route.query.courseId;
  311 + this.addForumParams.studentId = localStorage.getItem("parentStudentId");
  312 +
  313 + if (this.imageUrl) {
  314 + var str = this.imageUrl;
  315 + const [baseUrl, imageUrl] = str.split(/,/);
  316 + this.addForumParams.upload = imageUrl;
  317 + }
  318 + this.loading = true;
  319 + await http()
  320 + .post("/createCourseDiscussion", this.addForumParams)
  321 + .then(response => {
  322 + this.snackbar = true;
  323 + this.text = "Discussion added successfully";
  324 + this.snackbarColor = "green";
  325 + this.addForumDialog = false;
  326 + this.clear();
  327 + this.loading = false;
  328 + console.log("response of createCourseDiscussion - ", response);
  329 + })
  330 + .catch(error => {
  331 + this.snackbar = true;
  332 + this.text = error.response.data.message;
  333 + this.snackbarColor = "error";
  334 + this.loading = false;
  335 + });
  336 +
  337 + /* getCourseDiscussionesList - to populate the data table */
  338 + await this.getCourseDiscussionesList({
  339 + courseId: this.$route.query.courseId,
  340 + classId: localStorage.getItem("parentClassId")
  341 + });
  342 + this.addForumDialog = false;
  343 + }
  344 + },
  345 + clear() {
  346 + this.$refs.form.reset();
  347 + this.imageUrl = "";
  348 + },
  349 + async routeToCourseDetails(courseId) {
  350 + /* getParticularCourseDetail- To get courseDetail - defined in GetApis.js*/
  351 + let response = await this.getParticularCourseDetail(courseId);
  352 +
  353 + /* If the response is null then dont route */
  354 + if (response.data.data.length > 0) {
  355 + this.$router.push({
  356 + name: "Course Details",
  357 + query: { courseId: courseId }
  358 + });
  359 + } else {
  360 + this.seeSnackbar("No Data Available", "warning");
  361 + }
  362 + },
  363 +
  364 + // COURSE DISCUSSION REPLY FUNCTIONALITY
  365 +
  366 + getDiscussionesThread() {
  367 + // console.log("id", this.getSelectedData.courseId);
  368 + this.showLoader = true;
  369 + http()
  370 + .get("/getParticularCourseDiscussion", {
  371 + params: {
  372 + courseDiscussionId: this.courseDiscussionId
  373 + }
  374 + })
  375 + .then(response => {
  376 + // console.log("response", response.data.data);
  377 + this.courseDiscussionData = response.data.data;
  378 + for (let i = 0; i < this.courseDiscussionData.length; i++) {
  379 + for (
  380 + let j = 0;
  381 + j < this.courseDiscussionData[i].forumThread.length;
  382 + j++
  383 + ) {
  384 + this.courseDiscussionData[i].forumThread[
  385 + j
  386 + ].showUpdateReplyThread = false;
  387 + this.courseDiscussionData[i].forumThread[
  388 + j
  389 + ].showDescriptionReplyThread = true;
  390 + }
  391 + }
  392 + this.showLoader = false;
  393 + this.showReplyBox = false;
  394 + })
  395 + .catch(error => {
  396 + console.log("err====>", error);
  397 + this.showLoader = false;
  398 + });
  399 + },
  400 + replyThreadDiscussion(selected) {
  401 + this.showLoader = true;
  402 + var payloadData = {
  403 + courseDiscussionId: selected._id,
  404 + studentId: localStorage.getItem("parentStudentId"),
  405 + description: this.replyDescription
  406 + };
  407 + http()
  408 + .put("/replyForumThread", payloadData)
  409 + .then(response => {
  410 + // console.log("response", response.data.data);
  411 + this.showLoader = false;
  412 + this.getDiscussionesThread();
  413 + })
  414 + .catch(error => {
  415 + this.showLoader = false;
  416 + });
  417 + },
  418 + showUpdateReplyThreadDiscussion(item) {
  419 + this.editedIndex = this.courseDiscussionData.indexOf(item);
  420 + var editedItem = Object.assign({}, item);
  421 + var arrayOfcourseDiscussionData = [];
  422 + for (let i = 0; i < this.courseDiscussionData.length; i++) {
  423 + for (
  424 + let j = 0;
  425 + j < this.courseDiscussionData[i].forumThread.length;
  426 + j++
  427 + ) {
  428 + if (
  429 + editedItem._id == this.courseDiscussionData[i].forumThread[j]._id
  430 + ) {
  431 + this.courseDiscussionData[i].forumThread[
  432 + j
  433 + ].showUpdateReplyThread = true;
  434 + this.courseDiscussionData[i].forumThread[
  435 + j
  436 + ].showDescriptionReplyThread = false;
  437 + }
  438 + }
  439 + arrayOfcourseDiscussionData.push(this.courseDiscussionData[i]);
  440 + }
  441 + this.courseDiscussionData = arrayOfcourseDiscussionData;
  442 + },
  443 + updateRelpyThreadDiscussion(replyThread, selected) {
  444 + this.showLoader = true;
  445 + var payloadData = {
  446 + forumThreadId: replyThread._id,
  447 + courseDiscussionId: selected._id,
  448 + studentId: localStorage.getItem("parentStudentId"),
  449 + description: replyThread.description
  450 + };
  451 + http()
  452 + .put("/updateForumThread", payloadData)
  453 + .then(response => {
  454 + this.showLoader = false;
  455 + this.getDiscussionesThread();
  456 + })
  457 + .catch(error => {
  458 + this.showLoader = false;
  459 + });
  460 + },
  461 + deleteRelpyThreadDiscussion(id, courseDiscussionId) {
  462 + this.showLoader = true;
  463 + var payloadData = {
  464 + forumThreadId: id,
  465 + courseDiscussionId: courseDiscussionId
  466 + };
  467 + http()
  468 + .put(
  469 + "/deleteForumThread",
  470 + confirm("Are you sure you want to delete this?") && payloadData
  471 + )
  472 + .then(response => {
  473 + this.showLoader = false;
  474 + this.getDiscussionesThread();
  475 + })
  476 + .catch(error => {
  477 + this.showLoader = false;
  478 + });
  479 + }
  480 + },
  481 + async created() {
  482 + this.loginId = this.$store.state.id;
  483 + /* getStudentCourses - to get courseData - defined in GetApis.js*/
  484 + await this.getStudentCourses({
  485 + classId: localStorage.getItem("parentClassId"),
  486 + studentId: localStorage.getItem("parentStudentId")
  487 + });
  488 + }
  489 +};
  490 +</script>
  491 +<style scoped>
  492 +.side-bar-color {
  493 + color: #827bfa !important;
  494 + /* border-top-right-radius: 74px !important; */
  495 +}
  496 +.card-border {
  497 + border: 1px #bdbdbd solid;
  498 + border-radius: 3px;
  499 +}
  500 +.reply-desc {
  501 + border: 1px solid #f2f2f2;
  502 +}
  503 +.open-dialog-button {
  504 + background: #827bfa !important;
  505 + border-color: #827bfa !important;
  506 + text-transform: none !important;
  507 +}
  508 +
  509 +.reply-btn {
  510 + background: #feb83c !important;
  511 + border-color: #feb83c !important;
  512 + text-transform: none !important;
  513 + -webkit-box-shadow: none !important;
  514 + box-shadow: none !important;
  515 +}
  516 +</style>
0 517 \ No newline at end of file
... ...
src/pages/Dashboard/dashboard.vue
... ... @@ -102,50 +102,49 @@
102 102 <v-flex xs12 sm12 md9>
103 103 <v-container fluid grid-list-xl>
104 104 <!-- ***** Total Students ***** -->
105   - <v-flex xs12 sm12 md12 v-if="$store.state.role != 'PARENT' ">
106   - <v-layout wrap class>
107   - <v-flex xs12 sm12 md3>
108   - <router-link :to="{ name:'Students' }">
109   - <v-card class="card pink-bgcolor">
110   - <v-card-title primary-title class="titleCard white--text py-3">Students</v-card-title>
111   - <img src="/static/icon/student.png" class="ml-2" width="40" alt="icons" />
112   - <v-card-title class="headline py-1 white--text">{{ students.length }}</v-card-title>
113   - </v-card>
114   - </router-link>
115   - </v-flex>
116   - <!-- ***** Total Teachers***** -->
117   - <v-flex xs12 sm12 md3>
118   - <router-link :to="{ name:'Teachers' }">
119   - <v-card flat class="card elevation-2 firozi-bgcolor">
120   - <v-card-title primary-title class="titleCard white--text py-3">Teachers</v-card-title>
121   - <img src="/static/icon/teacher.png" class="ml-2" width="40" alt="icons" />
  105 + <v-layout wrap class v-if="$store.state.role != 'PARENT' ">
  106 + <v-flex xs12 sm12 md3>
  107 + <router-link :to="{ name:'Students' }">
  108 + <v-card class="card pink-bgcolor">
  109 + <v-card-title primary-title class="titleCard white--text py-3">Students</v-card-title>
  110 + <img src="/static/icon/student.png" class="ml-2" width="40" alt="icons" />
  111 + <v-card-title class="headline py-1 white--text">{{ students.length }}</v-card-title>
  112 + </v-card>
  113 + </router-link>
  114 + </v-flex>
  115 + <!-- ***** Total Teachers***** -->
  116 + <v-flex xs12 sm12 md3>
  117 + <router-link :to="{ name:'Teachers' }">
  118 + <v-card flat class="card elevation-2 firozi-bgcolor">
  119 + <v-card-title primary-title class="titleCard white--text py-3">Teachers</v-card-title>
  120 + <img src="/static/icon/teacher.png" class="ml-2" width="40" alt="icons" />
  121 +
  122 + <v-card-title class="headline py-1 white--text">{{ teachers.length }}</v-card-title>
  123 + </v-card>
  124 + </router-link>
  125 + </v-flex>
  126 + <!-- ***** Total Parents ***** -->
  127 + <v-flex xs12 sm12 md3>
  128 + <router-link :to="{ name:'Parents' }">
  129 + <v-card flat class="card yellow darken-3">
  130 + <v-card-title primary-title class="titleCard white--text py-3">Parents</v-card-title>
  131 + <img src="/static/icon/parents.png" class="ml-3" width="40px" alt="icons" />
  132 + <v-card-title class="headline py-1 white--text">{{ parents.length }}</v-card-title>
  133 + </v-card>
  134 + </router-link>
  135 + </v-flex>
  136 + <!-- ***** Total Class***** -->
  137 + <v-flex xs12 sm12 md3>
  138 + <router-link :to="{ name:'Class' }">
  139 + <v-card flat class="card darkBlue-bgcolor">
  140 + <v-card-title primary-title class="titleCard white--text py-3">Class</v-card-title>
  141 + <img src="/static/icon/class.png" width="40" alt="icons" class="ml-2" />
  142 + <v-card-title class="headline py-1 white--text">{{ classes.length }}</v-card-title>
  143 + </v-card>
  144 + </router-link>
  145 + </v-flex>
  146 + </v-layout>
122 147  
123   - <v-card-title class="headline py-1 white--text">{{ teachers.length }}</v-card-title>
124   - </v-card>
125   - </router-link>
126   - </v-flex>
127   - <!-- ***** Total Parents ***** -->
128   - <v-flex xs12 sm12 md3>
129   - <router-link :to="{ name:'Parents' }">
130   - <v-card flat class="card yellow darken-3">
131   - <v-card-title primary-title class="titleCard white--text py-3">Parents</v-card-title>
132   - <img src="/static/icon/parents.png" class="ml-3" width="40px" alt="icons" />
133   - <v-card-title class="headline py-1 white--text">{{ parents.length }}</v-card-title>
134   - </v-card>
135   - </router-link>
136   - </v-flex>
137   - <!-- ***** Total Class***** -->
138   - <v-flex xs12 sm12 md3>
139   - <router-link :to="{ name:'Class' }">
140   - <v-card flat class="card darkBlue-bgcolor">
141   - <v-card-title primary-title class="titleCard white--text py-3">Class</v-card-title>
142   - <img src="/static/icon/class.png" width="40" alt="icons" class="ml-2" />
143   - <v-card-title class="headline py-1 white--text">{{ classes.length }}</v-card-title>
144   - </v-card>
145   - </router-link>
146   - </v-flex>
147   - </v-layout>
148   - </v-flex>
149 148 <p
150 149 v-if="studentsData.length === 0 && role == 'PARENT'"
151 150 class="text-center title grey lighten-4 error--text"
... ... @@ -1021,10 +1020,9 @@ export default {
1021 1020 await this.getFeesAndCollectionsData();
1022 1021 await this.getExpensesData();
1023 1022 await this.getparentStudents();
1024   - await this.getMeetingEventes();
1025 1023  
1026 1024 /* get Latest events list for student login*/
1027   - if (this.$store.state.role != "TEACHER") {
  1025 + if (this.$store.state.role == "PARENT") {
1028 1026 let response = await this.studentMeetingEvents({
1029 1027 studentId: localStorage.getItem("parentStudentId")
1030 1028 });
... ... @@ -1041,10 +1039,11 @@ export default {
1041 1039 this.activityEvents.push(obj);
1042 1040 }
1043 1041 }
1044   - /* get Latest events list for teacher login*/
1045   - // if(this.$store.state.role == "TEACHER"){
1046 1042  
1047   - // }
  1043 + /* get Latest events list for teacher login*/
  1044 + if (this.role == "TEACHER") {
  1045 + await this.getMeetingEventes();
  1046 + }
1048 1047 }
1049 1048 };
1050 1049 </script>
... ...
src/router/paths.js
... ... @@ -14,7 +14,7 @@ export default [{
14 14 },
15 15 name: 'NotFound',
16 16 component: () =>
17   - import (
  17 + import(
18 18 /* webpackChunkName: "routes" */
19 19 /* webpackMode: "lazy-once" */
20 20 `@/pages/NotFound/NotFound.vue`
... ... @@ -28,7 +28,7 @@ export default [{
28 28 type: route.query.type
29 29 }),
30 30 component: () =>
31   - import (
  31 + import(
32 32 /* webpackChunkName: "routes" */
33 33 /* webpackMode: "lazy-once" */
34 34 `@/pages/Dashboard/dashboard.vue`
... ... @@ -41,7 +41,7 @@ export default [{
41 41 },
42 42 name: 'ServerError',
43 43 component: () =>
44   - import (
  44 + import(
45 45 /* webpackChunkName: "routes" */
46 46 /* webpackMode: "lazy-once" */
47 47 `@/pages/NotFound/Error.vue`
... ... @@ -55,7 +55,7 @@ export default [{
55 55 type: route.query.type
56 56 }),
57 57 component: () =>
58   - import (
  58 + import(
59 59 /* webpackChunkName: "routes" */
60 60 /* webpackMode: "lazy-once" */
61 61 `@/pages/Authentication/changepassword.vue`
... ... @@ -68,7 +68,7 @@ export default [{
68 68 },
69 69 name: 'Teachers',
70 70 component: () =>
71   - import (
  71 + import(
72 72 /* webpackChunkName: "routes" */
73 73 /* webpackMode: "lazy-once" */
74 74 `@/pages/Teachers/teachers.vue`
... ... @@ -81,7 +81,7 @@ export default [{
81 81 },
82 82 name: 'Login',
83 83 component: () =>
84   - import (
  84 + import(
85 85 /* webpackChunkName: "routes" */
86 86 /* webpackMode: "lazy-once" */
87 87 `@/pages/Authentication/Login.vue`
... ... @@ -94,7 +94,7 @@ export default [{
94 94 },
95 95 name: 'forgetpassword',
96 96 component: () =>
97   - import (
  97 + import(
98 98 /* webpackChunkName: "routes" */
99 99 /* webpackMode: "lazy-once" */
100 100 `@/pages/Authentication/forgetpassword.vue`
... ... @@ -108,7 +108,7 @@ export default [{
108 108 type: route.query.type
109 109 }),
110 110 component: () =>
111   - import (
  111 + import(
112 112 /* webpackChunkName: "routes" */
113 113 /* webpackMode: "lazy-once" */
114 114 `@/pages/Students/students.vue`
... ... @@ -122,7 +122,7 @@ export default [{
122 122 type: route.query.type
123 123 }),
124 124 component: () =>
125   - import (
  125 + import(
126 126 /* webpackChunkName: "routes" */
127 127 /* webpackMode: "lazy-once" */
128 128 `@/pages/Class/addclass.vue`
... ... @@ -136,7 +136,7 @@ export default [{
136 136 type: route.query.type
137 137 }),
138 138 component: () =>
139   - import (
  139 + import(
140 140 /* webpackChunkName: "routes" */
141 141 /* webpackMode: "lazy-once" */
142 142 `@/pages/Section/section.vue`
... ... @@ -150,7 +150,7 @@ export default [{
150 150 type: route.query.type
151 151 }),
152 152 component: () =>
153   - import (
  153 + import(
154 154 /* webpackChunkName: "routes" */
155 155 /* webpackMode: "lazy-once" */
156 156 `@/pages/NoticeBoard/noticeBoard.vue`
... ... @@ -164,7 +164,7 @@ export default [{
164 164 type: route.query.type
165 165 }),
166 166 component: () =>
167   - import (
  167 + import(
168 168 /* webpackChunkName: "routes" */
169 169 /* webpackMode: "lazy-once" */
170 170 `@/pages/News/news.vue`
... ... @@ -189,7 +189,7 @@ export default [{
189 189 type: route.query.type
190 190 }),
191 191 component: () =>
192   - import (
  192 + import(
193 193 /* webpackChunkName: "routes" */
194 194 /* webpackMode: "lazy-once" */
195 195 `@/pages/TimeTable/timeTable.vue`
... ... @@ -203,7 +203,7 @@ export default [{
203 203 type: route.query.type
204 204 }),
205 205 component: () =>
206   - import (
  206 + import(
207 207 /* webpackChunkName: "routes" */
208 208 /* webpackMode: "lazy-once" */
209 209 `@/pages/Notification/notification.vue`
... ... @@ -217,7 +217,7 @@ export default [{
217 217 type: route.query.type
218 218 }),
219 219 component: () =>
220   - import (
  220 + import(
221 221 /* webpackChunkName: "routes" */
222 222 /* webpackMode: "lazy-once" */
223 223 `@/pages/Parent/parents.vue`
... ... @@ -243,7 +243,7 @@ export default [{
243 243 type: route.query.type
244 244 }),
245 245 component: () =>
246   - import (
  246 + import(
247 247 /* webpackChunkName: "routes" */
248 248 /* webpackMode: "lazy-once" */
249 249 `@/pages/Dashboard/dashboard.vue`
... ... @@ -257,7 +257,7 @@ export default [{
257 257 type: route.query.type
258 258 }),
259 259 component: () =>
260   - import (
  260 + import(
261 261 /* webpackChunkName: "routes" */
262 262 /* webpackMode: "lazy-once" */
263 263 `@/pages/Dashboard/CourseDetails.vue`
... ... @@ -271,13 +271,27 @@ export default [{
271 271 type: route.query.type
272 272 }),
273 273 component: () =>
274   - import (
  274 + import(
275 275 /* webpackChunkName: "routes" */
276 276 /* webpackMode: "lazy-once" */
277 277 `@/pages/Dashboard/ChapterInfo.vue`
278 278 )
279 279 },
280 280 {
  281 + path: '/LiveOnlineClass',
  282 + meta: {},
  283 + name: 'Live Online Class',
  284 + props: (route) => ({
  285 + type: route.query.type
  286 + }),
  287 + component: () =>
  288 + import(
  289 + /* webpackChunkName: "routes" */
  290 + /* webpackMode: "lazy-once" */
  291 + `@/pages/Dashboard/LiveOnlineClass.vue`
  292 + )
  293 + },
  294 + {
281 295 path: '/CourseDiscussionForum',
282 296 meta: {},
283 297 name: 'Course Discussion Forum',
... ... @@ -285,7 +299,7 @@ export default [{
285 299 type: route.query.type
286 300 }),
287 301 component: () =>
288   - import (
  302 + import(
289 303 /* webpackChunkName: "routes" */
290 304 /* webpackMode: "lazy-once" */
291 305 `@/pages/Dashboard/CourseDiscussionForum.vue`
... ... @@ -299,7 +313,7 @@ export default [{
299 313 type: route.query.type
300 314 }),
301 315 component: () =>
302   - import (
  316 + import(
303 317 /* webpackChunkName: "routes" */
304 318 /* webpackMode: "lazy-once" */
305 319 `@/pages/Course/courseDiscussion.vue`
... ... @@ -313,7 +327,7 @@ export default [{
313 327 type: route.query.type
314 328 }),
315 329 component: () =>
316   - import (
  330 + import(
317 331 /* webpackChunkName: "routes" */
318 332 /* webpackMode: "lazy-once" */
319 333 `@/pages/Course/discussion.vue`
... ... @@ -327,7 +341,7 @@ export default [{
327 341 type: route.query.type
328 342 }),
329 343 component: () =>
330   - import (
  344 + import(
331 345 /* webpackChunkName: "routes" */
332 346 /* webpackMode: "lazy-once" */
333 347 `@/pages/Dashboard/Announcement.vue`
... ... @@ -341,7 +355,7 @@ export default [{
341 355 type: route.query.type
342 356 }),
343 357 component: () =>
344   - import (
  358 + import(
345 359 /* webpackChunkName: "routes" */
346 360 /* webpackMode: "lazy-once" */
347 361 `@/pages/Annoucement/annoucementForum.vue`
... ... @@ -355,7 +369,7 @@ export default [{
355 369 type: route.query.type
356 370 }),
357 371 component: () =>
358   - import (
  372 + import(
359 373 /* webpackChunkName: "routes" */
360 374 /* webpackMode: "lazy-once" */
361 375 `@/pages/socialMedia/socialMedia.vue`
... ... @@ -369,7 +383,7 @@ export default [{
369 383 type: route.query.type
370 384 }),
371 385 component: () =>
372   - import (
  386 + import(
373 387 /* webpackChunkName: "routes" */
374 388 /* webpackMode: "lazy-once" */
375 389 `@/pages/Gallery/gallery.vue`
... ... @@ -383,7 +397,7 @@ export default [{
383 397 type: route.query.type
384 398 }),
385 399 component: () =>
386   - import (
  400 + import(
387 401 /* webpackChunkName: "routes" */
388 402 /* webpackMode: "lazy-once" */
389 403 `@/pages/Event/event.vue`
... ... @@ -397,7 +411,7 @@ export default [{
397 411 type: route.query.type
398 412 }),
399 413 component: () =>
400   - import (
  414 + import(
401 415 /* webpackChunkName: "routes" */
402 416 /* webpackMode: "lazy-once" */
403 417 `@/pages/Holiday/holiday.vue`
... ... @@ -411,7 +425,7 @@ export default [{
411 425 type: route.query.type
412 426 }),
413 427 component: () =>
414   - import (
  428 + import(
415 429 /* webpackChunkName: "routes" */
416 430 /* webpackMode: "lazy-once" */
417 431 `@/pages/User/user.vue`
... ... @@ -425,7 +439,7 @@ export default [{
425 439 type: route.query.type
426 440 }),
427 441 component: () =>
428   - import (
  442 + import(
429 443 /* webpackChunkName: "routes" */
430 444 /* webpackMode: "lazy-once" */
431 445 `@/pages/Attendence/studentAttendence.vue`
... ... @@ -439,7 +453,7 @@ export default [{
439 453 type: route.query.type
440 454 }),
441 455 component: () =>
442   - import (
  456 + import(
443 457 /* webpackChunkName: "routes" */
444 458 /* webpackMode: "lazy-once" */
445 459 `@/pages/Attendence/teacherAttendence.vue`
... ... @@ -453,7 +467,7 @@ export default [{
453 467 type: route.query.type
454 468 }),
455 469 component: () =>
456   - import (
  470 + import(
457 471 `@/pages/Payroll/salaryTemplate.vue`
458 472 )
459 473 },
... ... @@ -465,7 +479,7 @@ export default [{
465 479 type: route.query.type
466 480 }),
467 481 component: () =>
468   - import (
  482 + import(
469 483 `@/pages/Payroll/hourlyTemplate.vue`
470 484 )
471 485 },
... ... @@ -477,7 +491,7 @@ export default [{
477 491 type: route.query.type
478 492 }),
479 493 component: () =>
480   - import (
  494 + import(
481 495 `@/pages/Payroll/manageSalary.vue`
482 496 )
483 497 },
... ... @@ -499,7 +513,7 @@ export default [{
499 513 type: route.query.type
500 514 }),
501 515 component: () =>
502   - import (
  516 + import(
503 517 /* webpackChunkName: "routes" */
504 518 /* webpackMode: "lazy-once" */
505 519 `@/pages/Attendence/userAttendence.vue`
... ... @@ -513,7 +527,7 @@ export default [{
513 527 type: route.query.type
514 528 }),
515 529 component: () =>
516   - import (
  530 + import(
517 531 /* webpackChunkName: "routes" */
518 532 /* webpackMode: "lazy-once" */
519 533 `@/pages/Account/feeTypes.vue`
... ... @@ -527,7 +541,7 @@ export default [{
527 541 type: route.query.type
528 542 }),
529 543 component: () =>
530   - import (
  544 + import(
531 545 /* webpackChunkName: "routes" */
532 546 /* webpackMode: "lazy-once" */
533 547 `@/pages/Account/invoice.vue`
... ... @@ -541,7 +555,7 @@ export default [{
541 555 type: route.query.type
542 556 }),
543 557 component: () =>
544   - import (
  558 + import(
545 559 /* webpackChunkName: "routes" */
546 560 /* webpackMode: "lazy-once" */
547 561 `@/pages/Account/paymentHistory.vue`
... ... @@ -555,7 +569,7 @@ export default [{
555 569 type: route.query.type
556 570 }),
557 571 component: () =>
558   - import (
  572 + import(
559 573 /* webpackChunkName: "routes" */
560 574 /* webpackMode: "lazy-once" */
561 575 `@/pages/Account/expense.vue`
... ... @@ -569,7 +583,7 @@ export default [{
569 583 type: route.query.type
570 584 }),
571 585 component: () =>
572   - import (
  586 + import(
573 587 /* webpackChunkName: "routes" */
574 588 /* webpackMode: "lazy-once" */
575 589 `@/pages/Account/income.vue`
... ... @@ -583,7 +597,7 @@ export default [{
583 597 type: route.query.type
584 598 }),
585 599 component: () =>
586   - import (
  600 + import(
587 601 /* webpackChunkName: "routes" */
588 602 /* webpackMode: "lazy-once" */
589 603 `@/pages/Library/member.vue`
... ... @@ -597,7 +611,7 @@ export default [{
597 611 type: route.query.type
598 612 }),
599 613 component: () =>
600   - import (
  614 + import(
601 615 /* webpackChunkName: "routes" */
602 616 /* webpackMode: "lazy-once" */
603 617 `@/pages/Library/books.vue`
... ... @@ -611,7 +625,7 @@ export default [{
611 625 type: route.query.type
612 626 }),
613 627 component: () =>
614   - import (
  628 + import(
615 629 /* webpackChunkName: "routes" */
616 630 /* webpackMode: "lazy-once" */
617 631 `@/pages/Library/issue.vue`
... ... @@ -625,7 +639,7 @@ export default [{
625 639 type: route.query.type
626 640 }),
627 641 component: () =>
628   - import (
  642 + import(
629 643 /* webpackChunkName: "routes" */
630 644 /* webpackMode: "lazy-once" */
631 645 `@/pages/Library/eBook.vue`
... ... @@ -637,7 +651,7 @@ export default [{
637 651 name: 'Edit Invoice',
638 652 // props: (route) => ({ type: route.query.type }),
639 653 component: () =>
640   - import (
  654 + import(
641 655 /* webpackChunkName: "routes" */
642 656 /* webpackMode: "lazy-once" */
643 657 `@/pages/Account/editInvoice.vue`
... ... @@ -651,7 +665,7 @@ export default [{
651 665 type: route.query.type
652 666 }),
653 667 component: () =>
654   - import (
  668 + import(
655 669 /* webpackChunkName: "routes" */
656 670 /* webpackMode: "lazy-once" */
657 671 `@/pages/Attendence/viewStudentsAttendence.vue`
... ... @@ -665,7 +679,7 @@ export default [{
665 679 type: route.query.type
666 680 }),
667 681 component: () =>
668   - import (
  682 + import(
669 683 /* webpackChunkName: "routes" */
670 684 /* webpackMode: "lazy-once" */
671 685 `@/pages/Attendence/viewTeacherAttendence.vue`
... ... @@ -679,7 +693,7 @@ export default [{
679 693 type: route.query.type
680 694 }),
681 695 component: () =>
682   - import (
  696 + import(
683 697 /* webpackChunkName: "routes" */
684 698 /* webpackMode: "lazy-once" */
685 699 `@/pages/Account/viewInvoice.vue`
... ... @@ -693,7 +707,7 @@ export default [{
693 707 type: route.query.type
694 708 }),
695 709 component: () =>
696   - import (
  710 + import(
697 711 /* webpackChunkName: "routes" */
698 712 /* webpackMode: "lazy-once" */
699 713 `@/pages/Account/viewPaymentInvoice.vue`
... ... @@ -707,7 +721,7 @@ export default [{
707 721 type: route.query.type
708 722 }),
709 723 component: () =>
710   - import (
  724 + import(
711 725 /* webpackChunkName: "routes" */
712 726 /* webpackMode: "lazy-once" */
713 727 `@/pages/Account/globalPayment.vue`
... ... @@ -721,7 +735,7 @@ export default [{
721 735 type: route.query.type
722 736 }),
723 737 component: () =>
724   - import (
  738 + import(
725 739 /* webpackChunkName: "routes" */
726 740 /* webpackMode: "lazy-once" */
727 741 `@/pages/Exam/exam.vue`
... ... @@ -735,7 +749,7 @@ export default [{
735 749 type: route.query.type
736 750 }),
737 751 component: () =>
738   - import (
  752 + import(
739 753 /* webpackChunkName: "routes" */
740 754 /* webpackMode: "lazy-once" */
741 755 `@/pages/Exam/grade.vue`
... ... @@ -749,7 +763,7 @@ export default [{
749 763 type: route.query.type
750 764 }),
751 765 component: () =>
752   - import (
  766 + import(
753 767 /* webpackChunkName: "routes" */
754 768 /* webpackMode: "lazy-once" */
755 769 `@/pages/Exam/examSchedule.vue`
... ... @@ -763,7 +777,7 @@ export default [{
763 777 type: route.query.type
764 778 }),
765 779 component: () =>
766   - import (
  780 + import(
767 781 /* webpackChunkName: "routes" */
768 782 /* webpackMode: "lazy-once" */
769 783 `@/pages/Exam/examAttendence.vue`
... ... @@ -777,7 +791,7 @@ export default [{
777 791 type: route.query.type
778 792 }),
779 793 component: () =>
780   - import (
  794 + import(
781 795 /* webpackChunkName: "routes" */
782 796 /* webpackMode: "lazy-once" */
783 797 `@/pages/Mark/mark.vue`
... ... @@ -791,7 +805,7 @@ export default [{
791 805 type: route.query.type
792 806 }),
793 807 component: () =>
794   - import (
  808 + import(
795 809 /* webpackChunkName: "routes" */
796 810 /* webpackMode: "lazy-once" */
797 811 `@/pages/Mark/viewMark.vue`
... ... @@ -805,7 +819,7 @@ export default [{
805 819 type: route.query.type
806 820 }),
807 821 component: () =>
808   - import (
  822 + import(
809 823 /* webpackChunkName: "routes" */
810 824 /* webpackMode: "lazy-once" */
811 825 `@/pages/Mark/markDistribution.vue`
... ... @@ -819,7 +833,7 @@ export default [{
819 833 type: route.query.type
820 834 }),
821 835 component: () =>
822   - import (
  836 + import(
823 837 /* webpackChunkName: "routes" */
824 838 /* webpackMode: "lazy-once" */
825 839 `@/pages/Meet/meet.vue`
... ... @@ -833,7 +847,7 @@ export default [{
833 847 type: route.query.type
834 848 }),
835 849 component: () =>
836   - import (
  850 + import(
837 851 /* webpackChunkName: "routes" */
838 852 /* webpackMode: "lazy-once" */
839 853 `@/pages/Administrator/academicYear.vue`
... ... @@ -847,7 +861,7 @@ export default [{
847 861 type: route.query.type
848 862 }),
849 863 component: () =>
850   - import (
  864 + import(
851 865 /* webpackChunkName: "routes" */
852 866 /* webpackMode: "lazy-once" */
853 867 `@/pages/Administrator/systemAdmin.vue`
... ... @@ -861,7 +875,7 @@ export default [{
861 875 type: route.query.type
862 876 }),
863 877 component: () =>
864   - import (
  878 + import(
865 879 /* webpackChunkName: "routes" */
866 880 /* webpackMode: "lazy-once" */
867 881 `@/pages/Administrator/resetPassword.vue`
... ... @@ -875,7 +889,7 @@ export default [{
875 889 type: route.query.type
876 890 }),
877 891 component: () =>
878   - import (
  892 + import(
879 893 /* webpackChunkName: "routes" */
880 894 /* webpackMode: "lazy-once" */
881 895 `@/pages/Administrator/role.vue`
... ... @@ -889,7 +903,7 @@ export default [{
889 903 type: route.query.type
890 904 }),
891 905 component: () =>
892   - import (
  906 + import(
893 907 /* webpackChunkName: "routes" */
894 908 /* webpackMode: "lazy-once" */
895 909 `@/pages/Administrator/bulkImport.vue`
... ... @@ -903,7 +917,7 @@ export default [{
903 917 type: route.query.type
904 918 }),
905 919 component: () =>
906   - import (
  920 + import(
907 921 /* webpackChunkName: "routes" */
908 922 /* webpackMode: "lazy-once" */
909 923 `@/pages/Report/studentReport.vue`
... ... @@ -917,7 +931,7 @@ export default [{
917 931 type: route.query.type
918 932 }),
919 933 component: () =>
920   - import (
  934 + import(
921 935 /* webpackChunkName: "routes" */
922 936 /* webpackMode: "lazy-once" */
923 937 `@/pages/Report/progressCardReport.vue`
... ... @@ -931,7 +945,7 @@ export default [{
931 945 type: route.query.type
932 946 }),
933 947 component: () =>
934   - import (
  948 + import(
935 949 `@/pages/Report/idCard.vue`
936 950 )
937 951 },
... ... @@ -943,7 +957,7 @@ export default [{
943 957 type: route.query.type
944 958 }),
945 959 component: () =>
946   - import (
  960 + import(
947 961 `@/pages/Report/admitCard.vue`
948 962 )
949 963 },
... ... @@ -955,7 +969,7 @@ export default [{
955 969 type: route.query.type
956 970 }),
957 971 component: () =>
958   - import (
  972 + import(
959 973 /* webpackChunkName: "routes" */
960 974 /* webpackMode: "lazy-once" */
961 975 `@/pages/generalSetting/generalSetting.vue`
... ... @@ -969,7 +983,7 @@ export default [{
969 983 type: route.query.type
970 984 }),
971 985 component: () =>
972   - import (
  986 + import(
973 987 `@/pages/Academic/assignment.vue`
974 988 )
975 989 },
... ... @@ -981,7 +995,7 @@ export default [{
981 995 type: route.query.type
982 996 }),
983 997 component: () =>
984   - import (
  998 + import(
985 999 `@/pages/Academic/routine.vue`
986 1000 )
987 1001 },
... ... @@ -993,7 +1007,7 @@ export default [{
993 1007 type: route.query.type
994 1008 }),
995 1009 component: () =>
996   - import (
  1010 + import(
997 1011 `@/pages/Academic/subject.vue`
998 1012 )
999 1013 },
... ... @@ -1005,7 +1019,7 @@ export default [{
1005 1019 type: route.query.type
1006 1020 }),
1007 1021 component: () =>
1008   - import (
  1022 + import(
1009 1023 `@/pages/Academic/syllabus.vue`
1010 1024 )
1011 1025 },
... ... @@ -1017,7 +1031,7 @@ export default [{
1017 1031 type: route.query.type
1018 1032 }),
1019 1033 component: () =>
1020   - import (
  1034 + import(
1021 1035 /* webpackChunkName: "routes" */
1022 1036 /* webpackMode: "lazy-once" */
1023 1037 `@/pages/Course/course.vue`
... ... @@ -1031,7 +1045,7 @@ export default [{
1031 1045 type: route.query.type
1032 1046 }),
1033 1047 component: () =>
1034   - import (
  1048 + import(
1035 1049 /* webpackChunkName: "routes" */
1036 1050 /* webpackMode: "lazy-once" */
1037 1051 `@/pages/Course/courseDetail.vue`
... ... @@ -1045,7 +1059,7 @@ export default [{
1045 1059 type: route.query.type
1046 1060 }),
1047 1061 component: () =>
1048   - import (
  1062 + import(
1049 1063 /* webpackChunkName: "routes" */
1050 1064 /* webpackMode: "lazy-once" */
1051 1065 `@/pages/Course/enrollStudents.vue`
... ... @@ -1059,7 +1073,7 @@ export default [{
1059 1073 type: route.query.type
1060 1074 }),
1061 1075 component: () =>
1062   - import (
  1076 + import(
1063 1077 /* webpackChunkName: "routes" */
1064 1078 /* webpackMode: "lazy-once" */
1065 1079 `@/pages/changeStudents/changeStudents.vue`
... ... @@ -1073,7 +1087,7 @@ export default [{
1073 1087 type: route.query.type
1074 1088 }),
1075 1089 component: () =>
1076   - import (
  1090 + import(
1077 1091 /* webpackChunkName: "routes" */
1078 1092 /* webpackMode: "lazy-once" */
1079 1093 `@/pages/Annoucement/annoucement.vue`
... ... @@ -1087,7 +1101,7 @@ export default [{
1087 1101 type: route.query.type
1088 1102 }),
1089 1103 component: () =>
1090   - import (
  1104 + import(
1091 1105 /* webpackChunkName: "routes" */
1092 1106 /* webpackMode: "lazy-once" */
1093 1107 `@/pages/meetingEvent/meetingEvent.vue`
... ... @@ -1103,7 +1117,7 @@ export default [{
1103 1117 type: route.query.type
1104 1118 }),
1105 1119 component: () =>
1106   - import (
  1120 + import(
1107 1121 /* webpackChunkName: "routes" */
1108 1122 /* webpackMode: "lazy-once" */
1109 1123 `@/pages/School/school.vue`
... ... @@ -1117,7 +1131,7 @@ export default [{
1117 1131 type: route.query.type
1118 1132 }),
1119 1133 component: () =>
1120   - import (
  1134 + import(
1121 1135 /* webpackChunkName: "routes" */
1122 1136 /* webpackMode: "lazy-once" */
1123 1137 `@/pages/School/viewSchoolDashboard.vue`
... ...