{"version":3,"file":"js/app-legacy.5b37d999.js","mappings":"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","sources":["webpack://bsu-schedule/./src/class/SearchAPI.js","webpack://bsu-schedule/./src/class/SystemUI.js","webpack://bsu-schedule/./src/App.vue?15ed","webpack://bsu-schedule/src/App.vue","webpack://bsu-schedule/./src/App.vue?facb","webpack://bsu-schedule/./src/App.vue","webpack://bsu-schedule/./src/registerServiceWorker.js","webpack://bsu-schedule/./src/views/Schedule.vue?12df","webpack://bsu-schedule/src/views/Schedule.vue","webpack://bsu-schedule/./src/views/Schedule.vue?ebb8","webpack://bsu-schedule/./src/views/Schedule.vue","webpack://bsu-schedule/./src/views/NotFound.vue?7ee0","webpack://bsu-schedule/src/views/NotFound.vue","webpack://bsu-schedule/./src/views/NotFound.vue?252d","webpack://bsu-schedule/./src/views/NotFound.vue","webpack://bsu-schedule/./src/views/LastRedirect.vue?08a8","webpack://bsu-schedule/src/views/LastRedirect.vue","webpack://bsu-schedule/./src/views/LastRedirect.vue?61b4","webpack://bsu-schedule/./src/views/LastRedirect.vue","webpack://bsu-schedule/./src/components/general/AboutPage.vue?d70d","webpack://bsu-schedule/src/components/general/AboutPage.vue","webpack://bsu-schedule/./src/components/general/AboutPage.vue?1b47","webpack://bsu-schedule/./src/components/general/AboutPage.vue","webpack://bsu-schedule/./src/router/index.js","webpack://bsu-schedule/./src/class/LocalStorageAPI.js","webpack://bsu-schedule/./src/store/index.js","webpack://bsu-schedule/./src/plugins/vuetify.js","webpack://bsu-schedule/./src/main.js","webpack://bsu-schedule/./src/parser/source/group/dto/day.js","webpack://bsu-schedule/./src/parser/source/group/help/day.js","webpack://bsu-schedule/./src/parser/source/group/dto/content.js","webpack://bsu-schedule/./src/parser/source/group/dto/lesson.js","webpack://bsu-schedule/./src/parser/source/group/help/lesson.js","webpack://bsu-schedule/./src/parser/source/group/help/content.js","webpack://bsu-schedule/./src/parser/source/group/help/header.js","webpack://bsu-schedule/./src/parser/source/group/group.js","webpack://bsu-schedule/./src/parser/source/teacher/help/header.js","webpack://bsu-schedule/./src/parser/source/teacher/dto/day.js","webpack://bsu-schedule/./src/parser/source/teacher/help/day.js","webpack://bsu-schedule/./src/parser/source/teacher/dto/content.js","webpack://bsu-schedule/./src/parser/source/teacher/dto/lesson.js","webpack://bsu-schedule/./src/parser/source/teacher/help/lesson.js","webpack://bsu-schedule/./src/parser/source/teacher/help/content.js","webpack://bsu-schedule/./src/parser/source/teacher/teacher.js","webpack://bsu-schedule/./src/parser/source/location/dto/day.js","webpack://bsu-schedule/./src/parser/source/location/help/day.js","webpack://bsu-schedule/./src/parser/source/location/dto/content.js","webpack://bsu-schedule/./src/parser/source/location/dto/lesson.js","webpack://bsu-schedule/./src/parser/source/location/help/lesson.js","webpack://bsu-schedule/./src/parser/source/location/help/content.js","webpack://bsu-schedule/./src/parser/source/location/help/header.js","webpack://bsu-schedule/./src/parser/source/location/location.js","webpack://bsu-schedule/./src/parser/source/search/help/group.js","webpack://bsu-schedule/./src/parser/source/search/help/teacher.js","webpack://bsu-schedule/./src/parser/source/search/help/location.js","webpack://bsu-schedule/./src/parser/source/search/search.js","webpack://bsu-schedule/./src/parser/parsers.js","webpack://bsu-schedule/./src/components/general/AppSettings.vue?6af7","webpack://bsu-schedule/src/components/general/AppSettings.vue","webpack://bsu-schedule/./src/components/general/AppSettings.vue?b6cd","webpack://bsu-schedule/./src/components/general/AppSettings.vue","webpack://bsu-schedule/./src/components/mobile/BottomSheet/BottomSheet.vue?76fa","webpack://bsu-schedule/src/components/mobile/BottomSheet/BottomSheet.vue","webpack://bsu-schedule/./src/components/mobile/BottomSheet/BottomSheet.vue?78d2","webpack://bsu-schedule/./src/components/mobile/BottomSheet/BottomSheet.vue","webpack://bsu-schedule/./src/components/mobile/NavBar/TheNavbarMobile.vue?1192","webpack://bsu-schedule/./src/components/mobile/NavBar/mainNavBarMobile.vue?243b","webpack://bsu-schedule/src/components/mobile/NavBar/mainNavBarMobile.vue","webpack://bsu-schedule/./src/components/mobile/NavBar/mainNavBarMobile.vue?a0ba","webpack://bsu-schedule/./src/components/mobile/NavBar/mainNavBarMobile.vue","webpack://bsu-schedule/./src/components/mobile/Favorite/TheFavorite.vue?3e01","webpack://bsu-schedule/./src/components/mobile/Favorite/AppFavoriteChip.vue?58aa","webpack://bsu-schedule/src/components/mobile/Favorite/AppFavoriteChip.vue","webpack://bsu-schedule/./src/components/mobile/Favorite/AppFavoriteChip.vue?a870","webpack://bsu-schedule/./src/components/mobile/Favorite/AppFavoriteChip.vue","webpack://bsu-schedule/src/components/mobile/Favorite/TheFavorite.vue","webpack://bsu-schedule/./src/components/mobile/Favorite/TheFavorite.vue?3a0c","webpack://bsu-schedule/./src/components/mobile/Favorite/TheFavorite.vue","webpack://bsu-schedule/src/components/mobile/NavBar/TheNavbarMobile.vue","webpack://bsu-schedule/./src/components/mobile/NavBar/TheNavbarMobile.vue?9588","webpack://bsu-schedule/./src/components/mobile/NavBar/TheNavbarMobile.vue","webpack://bsu-schedule/webpack/bootstrap","webpack://bsu-schedule/webpack/runtime/chunk loaded","webpack://bsu-schedule/webpack/runtime/compat get default export","webpack://bsu-schedule/webpack/runtime/define property getters","webpack://bsu-schedule/webpack/runtime/ensure chunk","webpack://bsu-schedule/webpack/runtime/get javascript chunk filename","webpack://bsu-schedule/webpack/runtime/get mini-css chunk filename","webpack://bsu-schedule/webpack/runtime/global","webpack://bsu-schedule/webpack/runtime/hasOwnProperty shorthand","webpack://bsu-schedule/webpack/runtime/load script","webpack://bsu-schedule/webpack/runtime/make namespace object","webpack://bsu-schedule/webpack/runtime/publicPath","webpack://bsu-schedule/webpack/runtime/css loading","webpack://bsu-schedule/webpack/runtime/jsonp chunk loading","webpack://bsu-schedule/webpack/startup"],"sourcesContent":["import Parsers from \"@/parser/parsers\";\r\n\r\nclass SearchAPI {\r\n TEXT = {\r\n notFound: \"Ничего не найдено :(\",\r\n need: \"Необходимо больше данных...\",\r\n loading: \"Идёт поиск...\",\r\n error: \"Не удалось выполнить поиск\",\r\n };\r\n\r\n controller = new AbortController();\r\n timeout = null;\r\n debounce = 500;\r\n Fetch = new Parsers();\r\n\r\n constructor() {}\r\n\r\n query({ query, setFunction }) {\r\n this.clear();\r\n if (!(typeof query == \"string\" && query)) {\r\n setFunction({ text: this.TEXT.need, result: [] });\r\n return;\r\n }\r\n if (query.trim().length < 3) {\r\n setFunction({ text: this.TEXT.need, result: [] });\r\n return;\r\n } else {\r\n setFunction({ text: this.TEXT.loading, result: [] });\r\n }\r\n\r\n //! Проверка на группу\r\n query = query.trim().toLowerCase();\r\n\r\n this.timeout = setTimeout(async () => {\r\n try {\r\n const data = await this.Fetch.fetchSearch({\r\n query: query,\r\n signal: this.controller.signal,\r\n });\r\n\r\n if (data.length == 0) {\r\n const d = 1;\r\n setFunction({ text: this.TEXT.notFound, result: [] });\r\n } else {\r\n setFunction({\r\n text: this.TEXT.loading,\r\n result: this.formResult(data),\r\n });\r\n }\r\n } catch (e) {\r\n if (e.name == \"AbortError\") {\r\n return;\r\n }\r\n\r\n setFunction({ text: this.TEXT.error, result: [] });\r\n }\r\n }, this.debounce);\r\n }\r\n\r\n clear() {\r\n this.controller.abort();\r\n this.controller = new AbortController();\r\n if (this.timeout) {\r\n clearTimeout(this.timeout);\r\n }\r\n }\r\n\r\n formResult(data) {\r\n let result = [];\r\n data.forEach((entry) => {\r\n const obj = {};\r\n switch (entry.type) {\r\n case \"group\":\r\n obj.text = entry.content.id;\r\n obj.value = {\r\n type: entry.type,\r\n id: entry.content.id,\r\n label: obj.text,\r\n };\r\n break;\r\n case \"teacher\":\r\n obj.text = `${entry.content.Surname} ${entry.content.Name} ${entry.content.Middlename}`;\r\n obj.value = {\r\n type: entry.type,\r\n id: entry.content.id,\r\n label: obj.text,\r\n };\r\n break;\r\n case \"location\":\r\n obj.text = `${entry.content.aud} ${entry.content.corp}`;\r\n obj.value = {\r\n type: entry.type,\r\n id: entry.content.id,\r\n label: obj.text,\r\n };\r\n break;\r\n }\r\n result.push(obj);\r\n });\r\n return result;\r\n }\r\n\r\n async searchMobile(value) {\r\n if (value) {\r\n this.controller.abort();\r\n this.controller = new AbortController();\r\n this.search = [];\r\n if (this.timeout) {\r\n clearTimeout(this.timeout);\r\n }\r\n\r\n if (value.trim().length < 3) {\r\n this.noDataText = \"Для поиска нужно более 2 символов\";\r\n } else {\r\n this.noDataText = \"Поиск...\";\r\n }\r\n\r\n this.timeout = setTimeout(async () => {\r\n const Fetch = new Parsers();\r\n\r\n const search = await Fetch.fetchSearch({\r\n query: value,\r\n signal: this.controller.signal,\r\n });\r\n if (search) {\r\n this.noDataText = \"Ничего не найдено :(\";\r\n }\r\n for (let i = 0; i < search.length && i < 10; i++) {\r\n const entry = search[i];\r\n const obj = {};\r\n switch (entry.type) {\r\n case \"group\":\r\n obj.text = entry.content.id;\r\n obj.value = {\r\n type: entry.type,\r\n id: entry.content.id,\r\n label: obj.text,\r\n };\r\n break;\r\n case \"teacher\":\r\n obj.text = `${entry.content.Surname} ${entry.content.Name} ${entry.content.Middlename}`;\r\n obj.value = {\r\n type: entry.type,\r\n id: entry.content.id,\r\n label: obj.text,\r\n };\r\n break;\r\n case \"location\":\r\n obj.text = `${entry.content.aud} ${entry.content.corp}`;\r\n obj.value = {\r\n type: entry.type,\r\n id: entry.content.id,\r\n label: obj.text,\r\n };\r\n break;\r\n default:\r\n continue;\r\n }\r\n this.search.push(obj);\r\n }\r\n }, this.debounce);\r\n }\r\n }\r\n}\r\n\r\nexport default new SearchAPI();\r\n","class SystemUI {\r\n dayRgb = [245, 245, 245];\r\n nightRgb = [39, 39, 39];\r\n bottomSheetRgb = [147, 147, 147];\r\n night = 0;\r\n targetNight = this.night;\r\n rate = 2.5 / 60;\r\n\r\n smooth(x) {\r\n return x < 0.5 ? 2 * x ** 2 : 1 - 2 * (1 - x) ** 2;\r\n }\r\n\r\n updateColour = () => {\r\n const colour = `rgb(${this.dayRgb.map(\r\n (day, i) => (this.nightRgb[i] - day) * this.smooth(this.night) + day\r\n )})`;\r\n themeColor.content = colour;\r\n document.body.style.backgroundColor = colour;\r\n if (this.night == this.targetNight) {\r\n // if (this.night == 0) {\r\n // //? Светлая тема\r\n\r\n // document\r\n // .querySelector(\"[name=apple-mobile-web-app-status-bar-style]\")\r\n // .setAttribute(\"content\", \"default\");\r\n // } else if (this.night == 1) {\r\n // //! Тёмная тема\r\n // document\r\n // .querySelector(\"[name=apple-mobile-web-app-status-bar-style]\")\r\n // .setAttribute(\"content\", \"black-transcluent\");\r\n // }\r\n return;\r\n }\r\n\r\n if (Math.abs(this.targetNight - this.night) < this.rate) {\r\n this.night = this.targetNight;\r\n } else {\r\n this.night += this.rate * (this.targetNight < this.night ? -1 : 1);\r\n }\r\n\r\n requestAnimationFrame(this.updateColour);\r\n };\r\n\r\n changeThemeAppBar() {\r\n this.targetNight = 1 - this.targetNight;\r\n this.updateColour();\r\n }\r\n\r\n overlayOnTheme(delay) {\r\n setTimeout(() => {\r\n const colour = `rgb(${this.bottomSheetRgb[0]},${this.bottomSheetRgb[1]},${this.bottomSheetRgb[2]})`;\r\n themeColor.content = colour;\r\n document.body.style.backgroundColor = colour;\r\n }, delay);\r\n }\r\n\r\n overlayOffTheme(delay) {\r\n setTimeout(() => {\r\n const colour = `rgb(${this.dayRgb[0]},${this.dayRgb[1]},${this.dayRgb[2]})`;\r\n themeColor.content = colour;\r\n document.body.style.backgroundColor = colour;\r\n }, delay);\r\n }\r\n\r\n constructor() {}\r\n}\r\n\r\nexport default new SystemUI();\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-app',[_c('router-view')],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js??clonedRuleSet-40[0].rules[0].use[1]!../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js??clonedRuleSet-40[0].rules[0].use[1]!../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./App.vue?vue&type=template&id=7847149a&\"\nimport script from \"./App.vue?vue&type=script&lang=js&\"\nexport * from \"./App.vue?vue&type=script&lang=js&\"\nimport style0 from \"./App.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VApp } from 'vuetify/lib/components/VApp';\ninstallComponents(component, {VApp})\n","/* eslint-disable no-console */\r\n\r\nimport { register } from \"register-service-worker\";\r\n\r\nif (process.env.NODE_ENV === \"production\") {\r\n register(`${process.env.BASE_URL}service-worker.js`, {\r\n ready() {},\r\n registered() {},\r\n cached() {},\r\n updatefound() {},\r\n updated() {},\r\n offline() {},\r\n error(error) {\r\n console.error(\"Error during service worker registration:\", error);\r\n },\r\n });\r\n}\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{directives:[{name:\"resize\",rawName:\"v-resize\",value:(_vm.onResize),expression:\"onResize\"}]},[(_vm.isMobile)?_c('div',{staticClass:\"navbar--mobile\"},[_c('nav-bar-mobile')],1):_vm._e(),(!_vm.isMobile)?_c('div',{staticClass:\"navigation--drawer--desktop\"},[_c('nav-drawer-desktop',{attrs:{\"dateRange\":_vm.dateRange,\"dateRangeLabel\":_vm.dateRangeLabel},on:{\"update:dateRange\":_vm.onDateRangeUpdate,\"date--set\":_vm.onDateRangeSet}})],1):_vm._e(),_c('v-main',{style:({ paddingLeft: _vm.isMobile ? '0px' : '400px' })},[(_vm.isMobile)?_c('v-container',{staticClass:\"schedule--mobile pa-2\"},[_c('schedule-head-mobile',{staticClass:\"mb-3\",attrs:{\"header\":_vm.header,\"loading\":_vm.isHeaderLoading,\"dateRange\":_vm.dateRange,\"dateRangeLabel\":_vm.dateRangeLabel,\"autoNextWeek\":_vm.autoNextWeek,\"type\":_vm.scheduleType},on:{\"update:dateRange\":_vm.onDateRangeUpdate,\"next--week\":_vm.nextWeek,\"back--week\":_vm.backWeek,\"date--set\":_vm.onDateRangeSet}}),_c('schedule-body-mobile',{attrs:{\"hasError\":_vm.hasError,\"loading\":_vm.isBodyLoading,\"body\":_vm.body,\"nowButton\":_vm.nowButtonVisible,\"type\":_vm.scheduleType}},[(_vm.body)?_c('div',[(_vm.body.length != 0)?_c('schedule-footer',{attrs:{\"loading\":_vm.isBodyLoading}}):_vm._e()],1):_vm._e()])],1):_vm._e(),(!_vm.isMobile)?_c('v-container',{staticClass:\"schedule--desktop pa-2 fix--width--schedule--desktop\"},[_c('schedule-header-desktop',{staticClass:\"mb-3\",attrs:{\"header\":_vm.header,\"loading\":_vm.isHeaderLoading,\"autoChange\":_vm.autoNextWeek,\"type\":_vm.scheduleType},on:{\"next--week\":_vm.nextWeek,\"back--week\":_vm.backWeek,\"update:dateRange\":_vm.onDateRangeUpdate,\"date--set\":_vm.onDateRangeSet}}),_c('schedule-body-desktop',{attrs:{\"hasError\":_vm.hasError,\"loading\":_vm.isBodyLoading,\"body\":_vm.body,\"nowButton\":_vm.nowButtonVisible,\"type\":_vm.scheduleType}},[(_vm.body)?_c('div',[(_vm.body.length != 0)?_c('schedule-footer',{attrs:{\"loading\":_vm.isBodyLoading}}):_vm._e()],1):_vm._e()])],1):_vm._e()],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Schedule.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Schedule.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Schedule.vue?vue&type=template&id=72c21d12&\"\nimport script from \"./Schedule.vue?vue&type=script&lang=js&\"\nexport * from \"./Schedule.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Schedule.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VMain } from 'vuetify/lib/components/VMain';\ninstallComponents(component, {VContainer,VMain})\n\n\n/* vuetify-loader */\nimport installDirectives from \"!../../node_modules/vuetify-loader/lib/runtime/installDirectives.js\"\nimport Resize from 'vuetify/lib/directives/resize'\ninstallDirectives(component, {Resize})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"d-flex fill-height justify-center align-center flex-column\"},[_c('div',{staticClass:\"text--404 text-h1\"},[_vm._v(\"404\")]),_c('div',{staticClass:\"text-button mb-10 text-center\"},[_vm._v(\" Хм... Похоже что-то пошло не так \")]),_c('v-btn',{attrs:{\"elevation\":\"2\"},on:{\"click\":function($event){return _vm.$router.push({ name: 'main' })}}},[_vm._v(\"Вернуться к расписанию\")])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./NotFound.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./NotFound.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./NotFound.vue?vue&type=template&id=3d401cbf&scoped=true&\"\nimport script from \"./NotFound.vue?vue&type=script&lang=js&\"\nexport * from \"./NotFound.vue?vue&type=script&lang=js&\"\nimport style0 from \"./NotFound.vue?vue&type=style&index=0&id=3d401cbf&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"3d401cbf\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\ninstallComponents(component, {VBtn})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c(\"div\")}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./LastRedirect.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./LastRedirect.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./LastRedirect.vue?vue&type=template&id=68be82b5&\"\nimport script from \"./LastRedirect.vue?vue&type=script&lang=js&\"\nexport * from \"./LastRedirect.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('v-parallax',{staticClass:\"mb-3\",attrs:{\"src\":\"img/kod.jpg\",\"height\":\"250\"}},[_c('div',{staticClass:\"wrapper\"},[_c('div',{staticClass:\"typing-demo-one mt-3 mb-3\"},[_vm._v(\"It's revolution, Johnny!\")])]),_c('div',{staticClass:\"d-flex justify-center align-center flex-column\"},[_c('v-img',{staticClass:\"elevation-5 rounded-circle\",attrs:{\"eager\":\"\",\"src\":\"img/icon.png\",\"width\":\"25%\",\"max-width\":\"100px\",\"alt\":\"Расписание\"}}),_c('div',{staticClass:\"text-h6 mt-2\"},[_vm._v(\"Расписание\")]),_c('div',{},[_vm._v(\"1.0.14\")])],1)]),_c('v-container',{staticClass:\"fix--about--container\"},[_c('v-expansion-panels',{staticClass:\"rounded-lg mb-3\"},[_c('v-expansion-panel',[_c('v-expansion-panel-header',{staticClass:\"text-subtitle-1 font-weight-medium\"},[_vm._v(\" Актуальное расписание \")]),_c('v-expansion-panel-content',{staticClass:\"text-body-1 px-3\"},[_vm._v(\" Первоисточником расписания является официальный сайт НИУ БелГУ. По этой причине расписание всегда будет актуальным! \")])],1),_c('v-expansion-panel',[_c('v-expansion-panel-header',{staticClass:\"text-subtitle-1 font-weight-medium\"},[_vm._v(\" Поддержка всех типов расписания \")]),_c('v-expansion-panel-content',{staticClass:\"text-body-1 px-3\"},[_vm._v(\" Расписание имеет полную поддержку расписаний групп, преподавателей и аудиторий. Навигация возможна с помощью поиска или кнопок перехода. \")])],1),_c('v-expansion-panel',[_c('v-expansion-panel-header',{staticClass:\"text-subtitle-1 font-weight-medium\"},[_vm._v(\" Переход в курс ПЕГАС \")]),_c('v-expansion-panel-content',{staticClass:\"text-body-1 px-3\"},[_vm._v(\" В Расписание интегрирована возможность перехода в курсы дисциплин электронной системы НИУ БелГУ ПЕГАС. Поддерживается система множественных курсов ПЕГАС: их количество не отличается от количества на официальном сайте НИУ БелГУ. \")])],1),_c('v-expansion-panel',[_c('v-expansion-panel-header',{staticClass:\"text-subtitle-1 font-weight-medium\"},[_vm._v(\" Установка на любое устройство \")]),_c('v-expansion-panel-content',{staticClass:\"text-body-1 px-3\"},[_vm._v(\" Расписание можно установить на любое устройство, поддерживающее технологию PWA. В рамках такой установки приложение появится на вашем главном экране и будет работать без окна браузера. Это очень удобно, ведь пропадает необходимость каждый раз заходить на сайт самостоятельно! \")])],1),_c('v-expansion-panel',[_c('v-expansion-panel-header',{staticClass:\"text-subtitle-1 font-weight-medium\"},[_vm._v(\" Избранное \")]),_c('v-expansion-panel-content',{staticClass:\"text-body-1 px-3\"},[_vm._v(\" Возможность удобно переключаться между частопосещаемыми группами / преподавателями / аудиториями может быть удобна для кураторов и работников университета. Избранное сохраняется в памяти устройства, поэтому не нужно каждый раз искать группу, преподавателя или аудиторию самостоятельно \")])],1),_c('v-expansion-panel',[_c('v-expansion-panel-header',{staticClass:\"text-subtitle-1 font-weight-medium\"},[_vm._v(\" Адаптивный интерфейс \")]),_c('v-expansion-panel-content',{staticClass:\"text-body-1 px-3\"},[_vm._v(\" Расписание сохраняет особенности интерфейса для различных платформ. Такой подход - гарант удобства пользователя. \")])],1),_c('v-expansion-panel',[_c('v-expansion-panel-header',{staticClass:\"text-subtitle-1 font-weight-medium\"},[_vm._v(\" Отображение текущего занятия в реальном времени \")]),_c('v-expansion-panel-content',{staticClass:\"text-body-1 px-3\"},[_vm._v(\" Теперь нет необходимости каждый раз обновлять страницу! Расписание самостоятельно перерисует интерфейс и покажет текущее занятие. \")])],1),_c('v-expansion-panel',[_c('v-expansion-panel-header',{staticClass:\"text-subtitle-1 font-weight-medium\"},[_vm._v(\" Автоматическое переключение на следующую неделю \")]),_c('v-expansion-panel-content',{staticClass:\"text-body-1 px-3\"},[_vm._v(\" Думаете в воскресенье о новой неделе? Расписание автоматически переключится на следующую неделю в этот день! Эту функцию можно отключить в настройках. \")])],1),_c('v-expansion-panel',[_c('v-expansion-panel-header',{staticClass:\"text-subtitle-1 font-weight-medium\"},[_vm._v(\" Прокрутка до текущего занятия \")]),_c('v-expansion-panel-content',{staticClass:\"text-body-1 px-3\"},[_vm._v(\" По нажатию кнопки в нижнем правом углу «Расписание» прокрутит страницу до текущего дня или занятия. Это очень удобно, ведь не нужно тратить время на поиски занятий! \")])],1),_c('v-expansion-panel',[_c('v-expansion-panel-header',{staticClass:\"text-subtitle-1 font-weight-medium\"},[_vm._v(\" Наличие собственного Telegram-бота \")]),_c('v-expansion-panel-content',{staticClass:\"text-body-1 px-3\"},[_c('div',[_vm._v(\" Теперь имеется возможность посмотреть Расписание с помощью современного Telegram-бота. Бот \"),_c('a',{staticClass:\"text-decoration-none\",attrs:{\"href\":\"http://t.me/bsuedubot\"}},[_vm._v(\"@bsuedubot\")]),_vm._v(\" имеет полную поддержку всех видов расписаний! \")]),_c('div',{staticClass:\"d-flex justify-center mt-3\"},[_c('v-btn',{attrs:{\"color\":\"indigo\",\"dark\":\"\",\"href\":\"http://t.me/bsuedubot\",\"target\":\"_blank\"}},[_vm._v(\" Перейти к боту \")])],1)])],1)],1),_c('v-card',{staticClass:\"mb-3\"},[_c('v-toolbar',{attrs:{\"color\":\"indigo\",\"dark\":\"\",\"flat\":\"\"},scopedSlots:_vm._u([{key:\"extension\",fn:function(){return [_c('v-tabs',{attrs:{\"fixed-tabs\":\"\",\"slider-color\":\"indigo lighten-4\"},model:{value:(_vm.model),callback:function ($$v) {_vm.model=$$v},expression:\"model\"}},[_c('v-tab',{attrs:{\"href\":\"#tab-1\"}},[_vm._v(\"Android\")]),_c('v-tab',{attrs:{\"href\":\"#tab-2\"}},[_vm._v(\"IOS\")]),_c('v-tab',{attrs:{\"href\":\"#tab-3\"}},[_vm._v(\"ПК\")])],1)]},proxy:true}])},[_c('v-toolbar-title',[_vm._v(\"Как установить?\")])],1),_c('v-tabs-items',{attrs:{\"touchless\":false},model:{value:(_vm.model),callback:function ($$v) {_vm.model=$$v},expression:\"model\"}},[_c('v-tab-item',{attrs:{\"value\":\"tab-1\"}},[_c('v-stepper',{attrs:{\"vertical\":\"\"},model:{value:(_vm.android),callback:function ($$v) {_vm.android=$$v},expression:\"android\"}},[_c('v-stepper-step',{attrs:{\"complete\":_vm.android > 1,\"step\":\"1\"}},[_vm._v(\" Скачайте приложение \\\"Расписание\\\" на своё устройство \")]),_c('v-stepper-content',{attrs:{\"step\":\"1\"}},[_c('div',{staticClass:\"mb-6 d-flex align-center justify-center flex-column\",attrs:{\"elevation\":\"0\"}},[_c('v-img',{staticClass:\"elevation-5 rounded-circle my-4\",attrs:{\"src\":\"img/icon.png\",\"eager\":\"\",\"width\":\"40%\",\"max-width\":\"150\",\"alt\":\"Расписание\"}}),_c('v-btn',{staticClass:\"my-2\",attrs:{\"color\":\"indigo\",\"dark\":\"\",\"href\":(\"/file/\" + _vm.getNameAPK)}},[_vm._v(\" Скачать \")])],1),_c('v-btn',{attrs:{\"color\":\"primary\"},on:{\"click\":function($event){_vm.android = 2}}},[_vm._v(\" Далее \")])],1),_c('v-stepper-step',{attrs:{\"complete\":_vm.android > 2,\"step\":\"2\"}},[_vm._v(\" Выполните установку \")]),_c('v-stepper-content',{attrs:{\"step\":\"2\"}},[_c('div',{staticClass:\"mb-6 d-flex align-center justify-center flex-column\",attrs:{\"elevation\":\"0\"}},[_c('v-img',{staticClass:\"elevation-5 my-2\",attrs:{\"eager\":\"\",\"src\":\"img/android-step-2.jpg\",\"width\":\"40%\",\"min-width\":\"150\",\"alt\":\"Расписание\"}})],1),_c('v-btn',{attrs:{\"color\":\"primary\"},on:{\"click\":function($event){_vm.android = 3}}},[_vm._v(\" Далее \")]),_c('v-btn',{staticClass:\"ml-2\",attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.android = _vm.android - 1}}},[_vm._v(\" Назад \")])],1),_c('v-stepper-step',{attrs:{\"complete\":_vm.android > 3,\"step\":\"3\"}},[_vm._v(\" Теперь приложение доступно на рабочем столе \")]),_c('v-stepper-content',{attrs:{\"step\":\"3\"}},[_c('div',{staticClass:\"mb-6 d-flex align-center justify-center flex-column\",attrs:{\"elevation\":\"0\"}},[_c('v-img',{staticClass:\"elevation-5 my-2\",attrs:{\"src\":\"img/android-step-3.jpg\",\"width\":\"20%\",\"eager\":\"\",\"min-width\":\"150\",\"alt\":\"Расписание\"}})],1),_c('v-btn',{attrs:{\"color\":\"primary\"},on:{\"click\":function($event){_vm.android = 1}}},[_vm._v(\" В начало \")]),_c('v-btn',{staticClass:\"ml-2\",attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.android = _vm.android - 1}}},[_vm._v(\" Назад \")])],1)],1)],1),_c('v-tab-item',{attrs:{\"value\":\"tab-2\"}},[_c('v-stepper',{attrs:{\"vertical\":\"\"},model:{value:(_vm.ios),callback:function ($$v) {_vm.ios=$$v},expression:\"ios\"}},[_c('v-stepper-step',{attrs:{\"complete\":_vm.ios > 1,\"step\":\"1\"}},[_vm._v(\" Откройте главную страницу \\\"Расписание\\\" в Safari \")]),_c('v-stepper-content',{attrs:{\"step\":\"1\"}},[_c('div',{staticClass:\"mb-6 d-flex align-center justify-center flex-column\",attrs:{\"elevation\":\"0\"}},[_c('v-btn',{staticClass:\"my-2\",attrs:{\"color\":\"indigo\",\"dark\":\"\",\"href\":\"/\",\"target\":\"_blank\"}},[_vm._v(\" beluni.ru \")])],1),_c('v-btn',{attrs:{\"color\":\"primary\"},on:{\"click\":function($event){_vm.ios = 2}}},[_vm._v(\" Далее \")])],1),_c('v-stepper-step',{attrs:{\"complete\":_vm.ios > 2,\"step\":\"2\"}},[_vm._v(\" Перейдите в полную версию браузера \")]),_c('v-stepper-content',{attrs:{\"step\":\"2\"}},[_c('div',{staticClass:\"mb-6 d-flex align-center justify-center flex-column\",attrs:{\"elevation\":\"0\"}},[_c('v-img',{staticClass:\"elevation-5 my-2\",attrs:{\"eager\":\"\",\"src\":\"img/ios-step-1.jpg\",\"width\":\"40%\",\"min-width\":\"210\",\"alt\":\"Расписание\"}})],1),_c('v-btn',{attrs:{\"color\":\"primary\"},on:{\"click\":function($event){_vm.ios = 3}}},[_vm._v(\" Далее \")]),_c('v-btn',{staticClass:\"ml-2\",attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.ios = _vm.ios - 1}}},[_vm._v(\" Назад \")])],1),_c('v-stepper-step',{attrs:{\"complete\":_vm.ios > 3,\"step\":\"3\"}},[_vm._v(\" Нажмите \\\"Поделиться\\\" \")]),_c('v-stepper-content',{attrs:{\"step\":\"3\"}},[_c('div',{staticClass:\"mb-6 d-flex align-center justify-center flex-column\",attrs:{\"elevation\":\"0\"}},[_c('v-img',{staticClass:\"elevation-5 my-2\",attrs:{\"eager\":\"\",\"src\":\"img/ios-step-2.jpg\",\"width\":\"40%\",\"min-width\":\"210\",\"alt\":\"Расписание\"}})],1),_c('v-btn',{attrs:{\"color\":\"primary\"},on:{\"click\":function($event){_vm.ios = 4}}},[_vm._v(\" Далее \")]),_c('v-btn',{staticClass:\"ml-2\",attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.ios = _vm.ios - 1}}},[_vm._v(\" Назад \")])],1),_c('v-stepper-step',{attrs:{\"complete\":_vm.ios > 4,\"step\":\"4\"}},[_vm._v(\" Нажмите \\\"На экран Домой\\\" \")]),_c('v-stepper-content',{attrs:{\"step\":\"4\"}},[_c('div',{staticClass:\"mb-6 d-flex align-center justify-center flex-column\",attrs:{\"elevation\":\"0\"}},[_c('v-img',{staticClass:\"elevation-5 my-2\",attrs:{\"src\":\"img/ios-step-3.jpg\",\"eager\":\"\",\"width\":\"40%\",\"min-width\":\"210\",\"alt\":\"Расписание\"}})],1),_c('v-btn',{attrs:{\"color\":\"primary\"},on:{\"click\":function($event){_vm.ios = 5}}},[_vm._v(\" Далее \")]),_c('v-btn',{staticClass:\"ml-2\",attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.ios = _vm.ios - 1}}},[_vm._v(\" Назад \")])],1),_c('v-stepper-step',{attrs:{\"complete\":_vm.ios > 5,\"step\":\"5\"}},[_vm._v(\" Добавьте приложение на рабочий стол \")]),_c('v-stepper-content',{attrs:{\"step\":\"5\"}},[_c('div',{staticClass:\"mb-6 d-flex align-center justify-center flex-column\",attrs:{\"elevation\":\"0\"}},[_c('v-img',{staticClass:\"elevation-5 my-2\",attrs:{\"src\":\"img/ios-step-4.jpg\",\"eager\":\"\",\"width\":\"40%\",\"min-width\":\"210\",\"alt\":\"Расписание\"}})],1),_c('v-btn',{attrs:{\"color\":\"primary\"},on:{\"click\":function($event){_vm.ios = 6}}},[_vm._v(\" Далее \")]),_c('v-btn',{staticClass:\"ml-2\",attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.ios = _vm.ios - 1}}},[_vm._v(\" Назад \")])],1),_c('v-stepper-step',{attrs:{\"step\":\"6\"}},[_vm._v(\" Теперь приложение появилось на главном экране \")]),_c('v-stepper-content',{attrs:{\"step\":\"6\"}},[_c('div',{staticClass:\"mb-6 d-flex align-center justify-center flex-column\",attrs:{\"elevation\":\"0\"}},[_c('v-img',{staticClass:\"elevation-5 my-2\",attrs:{\"src\":\"img/ios-step-5.jpg\",\"eager\":\"\",\"width\":\"40%\",\"min-width\":\"130\",\"max-width\":\"200\",\"alt\":\"Расписание\"}})],1),_c('v-btn',{attrs:{\"color\":\"primary\"},on:{\"click\":function($event){_vm.ios = 1}}},[_vm._v(\" В начало \")]),_c('v-btn',{staticClass:\"ml-2\",attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.ios = _vm.ios - 1}}},[_vm._v(\" Назад \")])],1)],1)],1),_c('v-tab-item',{attrs:{\"value\":\"tab-3\"}},[_c('v-stepper',{attrs:{\"vertical\":\"\"},model:{value:(_vm.pc),callback:function ($$v) {_vm.pc=$$v},expression:\"pc\"}},[_c('v-stepper-step',{attrs:{\"complete\":_vm.pc > 1,\"step\":\"1\"}},[_vm._v(\" Откройте главную страницу \\\"Расписание\\\" в браузере \")]),_c('v-stepper-content',{attrs:{\"step\":\"1\"}},[_c('div',{staticClass:\"mb-6 d-flex align-center justify-center flex-column\",attrs:{\"elevation\":\"0\"}},[_c('v-btn',{staticClass:\"my-2\",attrs:{\"color\":\"indigo\",\"dark\":\"\",\"href\":\"/\",\"target\":\"_blank\"}},[_vm._v(\" beluni.ru \")])],1),_c('v-btn',{attrs:{\"color\":\"primary\"},on:{\"click\":function($event){_vm.pc = 2}}},[_vm._v(\" Далее \")])],1),_c('v-stepper-step',{attrs:{\"complete\":_vm.pc > 2,\"step\":\"2\"}},[_vm._v(\" Нажмите \\\"Установить\\\" \")]),_c('v-stepper-content',{attrs:{\"step\":\"2\"}},[_c('div',{staticClass:\"mb-6 d-flex align-center justify-center flex-column\",attrs:{\"elevation\":\"0\"}},[_c('v-img',{staticClass:\"elevation-5 my-2\",attrs:{\"eager\":\"\",\"src\":\"img/pc-step-2.jpg\",\"width\":\"40%\",\"min-width\":\"210\",\"alt\":\"Расписание\"}})],1),_c('v-btn',{attrs:{\"color\":\"primary\"},on:{\"click\":function($event){_vm.pc = 3}}},[_vm._v(\" Далее \")]),_c('v-btn',{staticClass:\"ml-2\",attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.pc = _vm.pc - 1}}},[_vm._v(\" Назад \")])],1),_c('v-stepper-step',{attrs:{\"complete\":_vm.pc > 3,\"step\":\"3\"}},[_vm._v(\" Установите приложение \")]),_c('v-stepper-content',{attrs:{\"step\":\"3\"}},[_c('div',{staticClass:\"mb-6 d-flex align-center justify-center flex-column\",attrs:{\"elevation\":\"0\"}},[_c('v-img',{staticClass:\"elevation-5 my-2\",attrs:{\"src\":\"img/pc-step-3.jpg\",\"eager\":\"\",\"width\":\"40%\",\"min-width\":\"210\",\"alt\":\"Расписание\"}})],1),_c('v-btn',{attrs:{\"color\":\"primary\"},on:{\"click\":function($event){_vm.pc = 4}}},[_vm._v(\" Далее \")]),_c('v-btn',{staticClass:\"ml-2\",attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.pc = _vm.pc - 1}}},[_vm._v(\" Назад \")])],1),_c('v-stepper-step',{attrs:{\"complete\":_vm.pc > 4,\"step\":\"4\"}},[_vm._v(\" Теперь приложение доступно на рабочем столе \")]),_c('v-stepper-content',{attrs:{\"step\":\"4\"}},[_c('div',{staticClass:\"mb-6 d-flex align-center justify-center flex-column\",attrs:{\"elevation\":\"0\"}},[_c('v-img',{staticClass:\"elevation-5 my-2\",attrs:{\"src\":\"img/pc-step-4.jpg\",\"eager\":\"\",\"width\":\"40%\",\"min-width\":\"150\",\"max-width\":\"200\",\"alt\":\"Расписание\"}})],1),_c('v-btn',{attrs:{\"color\":\"primary\"},on:{\"click\":function($event){_vm.pc = 1}}},[_vm._v(\" В начало \")]),_c('v-btn',{staticClass:\"ml-2\",attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.pc = _vm.pc - 1}}},[_vm._v(\" Назад \")])],1)],1)],1)],1)],1),_c('v-card',{staticClass:\"mb-3 elevation-2\",attrs:{\"dark\":\"\",\"color\":\"indigo\"}},[_c('v-card-title',{staticClass:\"py-1 justify-center\"},[_vm._v(\"Автор проекта\")])],1),_c('v-card',{staticClass:\"rounded-lg d-flex justify-space-around flex-column align-center mb-3\"},[_c('v-avatar',{staticClass:\"ma-3\",attrs:{\"size\":\"150\"}},[_c('v-img',{attrs:{\"src\":\"/img/author.jpg\",\"eager\":\"\"}})],1),_c('div',{staticClass:\"text-h5\"},[_vm._v(\"Антон Дахин\")]),_c('div',{staticClass:\"my-4\"},[_c('v-btn',{attrs:{\"color\":\"#0077FF\",\"dark\":\"\",\"href\":\"https://vk.com/a_d_elec\",\"target\":\"_blank\"}},[_vm._v(\" VK \")])],1)],1),_c('v-card',{staticClass:\"mb-3 elevation-2\",attrs:{\"dark\":\"\",\"color\":\"indigo\"}},[_c('v-card-title',{staticClass:\"py-1 justify-center\"},[_vm._v(\"Отдельное спасибо\")])],1),_c('v-card',{staticClass:\"rounded-lg d-flex justify-space-around flex-column align-center mb-3\"},[_c('v-avatar',{staticClass:\"ma-3\",attrs:{\"size\":\"150\",\"id\":\"1337\"}},[_c('div',{staticClass:\"grey lighten-2 undefined--fix d-flex align-center justify-center\"},[_c('v-progress-circular',{attrs:{\"indeterminate\":\"\",\"color\":\"indigo\"}})],1)]),_c('div',{staticClass:\"text-h5\"},[_vm._v(\"undefined\")]),_c('div',{staticClass:\"text-caption text-center mt-3\"},[_c('div',[_vm._v(\"Помощь с кодом\")]),_c('div',[_vm._v(\"Тестирование\")]),_c('div',[_vm._v(\"Умный proxy\")]),_c('div',[_vm._v(\"Быстрый фидбек\")])]),_c('div',{staticClass:\"my-4\"},[_c('v-btn',{attrs:{\"color\":\"#0077FF\",\"disabled\":\"\",\"href\":\"1337\",\"target\":\"_blank\"}},[_vm._v(\" Нет данных \")])],1)],1),_c('v-card',{staticClass:\"rounded-lg d-flex justify-space-around flex-column align-center mb-3\"},[_c('v-avatar',{staticClass:\"ma-3\",attrs:{\"size\":\"150\"}},[_c('v-img',{attrs:{\"src\":\"/img/thanks2.jpg\",\"eager\":\"\"}})],1),_c('div',{staticClass:\"text-h5\"},[_vm._v(\"Vitaly Taran\")]),_c('div',{staticClass:\"text-caption text-center mt-3\"},[_c('div',[_vm._v(\"Помощь с размещением\")]),_c('div',[_vm._v(\"Тестирование\")]),_c('div',[_vm._v(\"Создание Telegram-бота\")])]),_c('div',{staticClass:\"my-4\"},[_c('v-btn',{attrs:{\"color\":\"#0077FF\",\"dark\":\"\",\"href\":\"https://vk.com/vooforx\",\"target\":\"_blank\"}},[_vm._v(\" VK \")])],1)],1),_c('v-card',{staticClass:\"rounded-lg d-flex justify-space-around flex-column align-center mb-3\"},[_c('v-avatar',{staticClass:\"ma-3\",attrs:{\"size\":\"150\"}},[_c('v-img',{attrs:{\"src\":\"/img/thanks3.jpg\",\"eager\":\"\"}})],1),_c('div',{staticClass:\"text-h5\"},[_vm._v(\"Мария Ходячих\")]),_c('div',{staticClass:\"text-caption text-center mt-3\"},[_c('div',[_vm._v(\"Создание иконки\")]),_c('div',[_vm._v(\"Разработка адаптивного интерфейса\")]),_c('div',[_vm._v(\"Тестирование\")])]),_c('div',{staticClass:\"my-4\"},[_c('v-btn',{attrs:{\"color\":\"#0077FF\",\"dark\":\"\",\"href\":\"https://vk.com/m_h_411\",\"target\":\"_blank\"}},[_vm._v(\" VK \")])],1)],1),_c('v-card',{staticClass:\"rounded-lg d-flex justify-space-around flex-column align-center mb-3\"},[_c('v-avatar',{staticClass:\"ma-3\",attrs:{\"size\":\"150\"}},[_c('v-img',{attrs:{\"src\":\"/img/thanks4.jpg\",\"eager\":\"\"}})],1),_c('div',{staticClass:\"text-h5\"},[_vm._v(\"Даниил Щербаков\")]),_c('div',{staticClass:\"text-caption text-center mt-3\"},[_c('div',[_vm._v(\"Помощь с кодом\")]),_c('div',[_vm._v(\"Новые идеи в проект\")])]),_c('div',{staticClass:\"my-4\"},[_c('v-btn',{attrs:{\"color\":\"#0077FF\",\"dark\":\"\",\"href\":\"https://vk.com/kurkulio\",\"target\":\"_blank\"}},[_vm._v(\" VK \")])],1)],1),_c('v-card',{staticClass:\"rounded-lg d-flex justify-space-around flex-column align-center mb-3 pa-7\"},[_c('div',{staticClass:\"text-h6 text-center\"},[_vm._v(\" И всем тем, кто помогал c тестированием приложения на различных устройствах! \")])])],1),_c('v-parallax',{attrs:{\"src\":\"img/kod.jpg\",\"height\":\"200\"}},[_c('v-lazy',[_c('div',{staticClass:\"wrapper\"},[_c('div',{staticClass:\"typing-demo-two mt-3 mb-3\"},[_vm._v(\"Приятного использования!\")])])]),_c('div',{staticClass:\"wrapper\"},[_c('div',{staticClass:\"my-4\"},[_c('router-link',{attrs:{\"to\":{ name: 'main' },\"custom\":\"\"},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar navigate = ref.navigate;\nvar href = ref.href;\nreturn [_c('v-btn',{attrs:{\"elevation\":\"2\",\"href\":href},on:{\"click\":navigate}},[_vm._v(\"К расписанию\")])]}}])})],1)])],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AboutPage.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40[0].rules[0].use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AboutPage.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./AboutPage.vue?vue&type=template&id=d0acde1a&scoped=true&\"\nimport script from \"./AboutPage.vue?vue&type=script&lang=js&\"\nexport * from \"./AboutPage.vue?vue&type=script&lang=js&\"\nimport style0 from \"./AboutPage.vue?vue&type=style&index=0&id=d0acde1a&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"d0acde1a\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VAvatar } from 'vuetify/lib/components/VAvatar';\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardTitle } from 'vuetify/lib/components/VCard';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VExpansionPanel } from 'vuetify/lib/components/VExpansionPanel';\nimport { VExpansionPanelContent } from 'vuetify/lib/components/VExpansionPanel';\nimport { VExpansionPanelHeader } from 'vuetify/lib/components/VExpansionPanel';\nimport { VExpansionPanels } from 'vuetify/lib/components/VExpansionPanel';\nimport { VImg } from 'vuetify/lib/components/VImg';\nimport { VLazy } from 'vuetify/lib/components/VLazy';\nimport { VParallax } from 'vuetify/lib/components/VParallax';\nimport { VProgressCircular } from 'vuetify/lib/components/VProgressCircular';\nimport { VStepper } from 'vuetify/lib/components/VStepper';\nimport { VStepperContent } from 'vuetify/lib/components/VStepper';\nimport { VStepperStep } from 'vuetify/lib/components/VStepper';\nimport { VTab } from 'vuetify/lib/components/VTabs';\nimport { VTabItem } from 'vuetify/lib/components/VTabs';\nimport { VTabs } from 'vuetify/lib/components/VTabs';\nimport { VTabsItems } from 'vuetify/lib/components/VTabs';\nimport { VToolbar } from 'vuetify/lib/components/VToolbar';\nimport { VToolbarTitle } from 'vuetify/lib/components/VToolbar';\ninstallComponents(component, {VAvatar,VBtn,VCard,VCardTitle,VContainer,VExpansionPanel,VExpansionPanelContent,VExpansionPanelHeader,VExpansionPanels,VImg,VLazy,VParallax,VProgressCircular,VStepper,VStepperContent,VStepperStep,VTab,VTabItem,VTabs,VTabsItems,VToolbar,VToolbarTitle})\n","import Vue from \"vue\";\r\nimport VueRouter from \"vue-router\";\r\n\r\nimport Schedule from \"@/views/Schedule.vue\";\r\nimport NotFound from \"@/views/NotFound.vue\";\r\nimport Last from \"@/views/LastRedirect.vue\";\r\nimport About from \"@/components/general/AboutPage.vue\";\r\n\r\nVue.use(VueRouter);\r\n\r\nconst routes = [\r\n {\r\n path: \"/\",\r\n name: \"main\",\r\n component: Last,\r\n },\r\n {\r\n path: \"/welcome\",\r\n name: \"welcome\",\r\n component: Schedule,\r\n },\r\n {\r\n path: \"/g/:id(\\\\d{6,})\",\r\n name: \"group\",\r\n component: Schedule,\r\n },\r\n {\r\n path: \"/t/:id(\\\\d+)\",\r\n name: \"teacher\",\r\n component: Schedule,\r\n },\r\n {\r\n path: \"/a/:id(\\\\d+)\",\r\n name: \"location\",\r\n component: Schedule,\r\n },\r\n {\r\n path: \"/about\",\r\n name: \"about\",\r\n component: About,\r\n },\r\n {\r\n path: \"/404\",\r\n name: \"notFound\",\r\n component: NotFound,\r\n },\r\n {\r\n path: \"*\",\r\n name: \"notFoundv2\",\r\n component: NotFound,\r\n },\r\n];\r\n\r\nconst router = new VueRouter({\r\n mode: \"history\",\r\n base: process.env.BASE_URL,\r\n routes,\r\n});\r\n\r\nexport default router;\r\n","const LAST_NAME = \"last\";\r\nconst FAVORITE_NAME = \"favorite\";\r\nconst SETTINGS_NAME = \"settings\";\r\nconst WELCOME_TYPE_NAME = \"welcome\";\r\n\r\nconst DEFAULT_LAST = {\r\n type: WELCOME_TYPE_NAME,\r\n};\r\nconst DEFAULT_FAVORITE = [];\r\nconst DEFAULT_SETTINGS = {\r\n dark: false,\r\n autoNextWeek: true,\r\n weakDesktop: false,\r\n};\r\n\r\nclass LocalStorageAPI {\r\n LS = null;\r\n\r\n constructor() {\r\n this.LS = localStorage;\r\n\r\n if (this.check) {\r\n localStorage.setItem(LAST_NAME, JSON.stringify(DEFAULT_LAST));\r\n localStorage.setItem(FAVORITE_NAME, JSON.stringify(DEFAULT_FAVORITE));\r\n localStorage.setItem(SETTINGS_NAME, JSON.stringify(DEFAULT_SETTINGS));\r\n }\r\n }\r\n\r\n _setLastDefault() {\r\n localStorage.setItem(LAST_NAME, JSON.stringify(DEFAULT_LAST));\r\n }\r\n\r\n _setFavoriteDefault() {\r\n localStorage.setItem(FAVORITE_NAME, JSON.stringify(DEFAULT_FAVORITE));\r\n }\r\n\r\n _setSettingsDefault() {\r\n localStorage.setItem(SETTINGS_NAME, JSON.stringify(DEFAULT_SETTINGS));\r\n }\r\n\r\n get last() {\r\n try {\r\n const data = JSON.parse(this.LS.last);\r\n let result = null;\r\n if (data.type && data.id) {\r\n result = {\r\n type: data.type,\r\n id: data.id,\r\n };\r\n } else {\r\n result = DEFAULT_LAST;\r\n }\r\n return result;\r\n } catch (e) {\r\n this._setLastDefault();\r\n return DEFAULT_LAST;\r\n }\r\n }\r\n\r\n set last(value) {\r\n localStorage.setItem(LAST_NAME, JSON.stringify(value));\r\n }\r\n\r\n get favorite() {\r\n try {\r\n const data = JSON.parse(this.LS.favorite);\r\n let result = [];\r\n if (Array.isArray(data)) {\r\n result = data.filter((fav) => {\r\n return (\r\n fav.hasOwnProperty(\"id\") &&\r\n fav.hasOwnProperty(\"label\") &&\r\n fav.hasOwnProperty(\"type\")\r\n );\r\n });\r\n }\r\n return result;\r\n } catch (e) {\r\n this._setFavoriteDefault();\r\n return DEFAULT_FAVORITE;\r\n }\r\n }\r\n\r\n set favorite(value) {\r\n localStorage.setItem(FAVORITE_NAME, JSON.stringify(value));\r\n }\r\n\r\n get settings() {\r\n try {\r\n const data = JSON.parse(this.LS.settings);\r\n return {\r\n dark:\r\n \"dark\" in data && typeof data.dark == \"boolean\"\r\n ? data.dark\r\n : DEFAULT_SETTINGS.dark,\r\n autoNextWeek:\r\n \"autoNextWeek\" in data && typeof data.autoNextWeek == \"boolean\"\r\n ? data.autoNextWeek\r\n : DEFAULT_SETTINGS.autoNextWeek,\r\n weakDesktop:\r\n \"weakDesktop\" in data && typeof data.weakDesktop == \"boolean\"\r\n ? data.weakDesktop\r\n : DEFAULT_SETTINGS.weakDesktop,\r\n };\r\n } catch (e) {\r\n this._setSettingsDefault();\r\n return DEFAULT_SETTINGS;\r\n }\r\n }\r\n\r\n set settings(value) {\r\n localStorage.setItem(SETTINGS_NAME, JSON.stringify(value));\r\n }\r\n\r\n get check() {\r\n return this.LS.length < 3;\r\n }\r\n}\r\n\r\nexport default new LocalStorageAPI();\r\n","import Vue from \"vue\";\r\nimport Vuex from \"vuex\";\r\nimport LSAPI from \"@/class/LocalStorageAPI.js\";\r\n\r\nVue.use(Vuex);\r\n\r\nexport default new Vuex.Store({\r\n state: {\r\n last: {},\r\n favorite: [],\r\n settings: {},\r\n isMobileSearch: false,\r\n },\r\n getters: {\r\n getLast(state) {\r\n return state.last;\r\n },\r\n getFavorite(state) {\r\n return state.favorite;\r\n },\r\n getSettings(state) {\r\n return state.settings;\r\n },\r\n getMobileSearch(state) {\r\n return state.isMobileSearch;\r\n },\r\n },\r\n mutations: {\r\n INIT(state) {\r\n state.last = LSAPI.last;\r\n state.favorite = LSAPI.favorite;\r\n state.settings = LSAPI.settings;\r\n },\r\n\r\n SET_LAST(state, { type, id }) {\r\n if (state.last.type == type && state.last.id == id) return;\r\n\r\n LSAPI.last = { type, id };\r\n state.last = { type, id };\r\n },\r\n\r\n ADD_FAVORITE(state, { type, id, label }) {\r\n if (type && id && label) {\r\n state.favorite.push({ type, id, label });\r\n LSAPI.favorite = state.favorite;\r\n }\r\n },\r\n\r\n REMOVE_FAVORITE(state, { type, id }) {\r\n if (type && id) {\r\n state.favorite = state.favorite.filter((fav) => {\r\n return !(fav.id == id && fav.type == type);\r\n });\r\n LSAPI.favorite = state.favorite;\r\n }\r\n },\r\n\r\n dark(state, value) {\r\n state.settings.dark = value;\r\n LSAPI.settings = state.settings;\r\n },\r\n\r\n autoNextWeek(state, value) {\r\n state.settings.autoNextWeek = value;\r\n LSAPI.settings = state.settings;\r\n },\r\n weakDesktop(state, value) {\r\n state.settings.weakDesktop = value;\r\n LSAPI.settings = state.settings;\r\n },\r\n weakMobile(state, value) {\r\n state.settings.weakMobile = value;\r\n LSAPI.settings = state.settings;\r\n },\r\n\r\n setMobileSearch(state, value) {\r\n state.isMobileSearch = value;\r\n },\r\n },\r\n actions: {},\r\n modules: {},\r\n});\r\n","import Vue from \"vue\";\r\nimport Vuetify from \"vuetify/lib/framework\";\r\n\r\nVue.use(Vuetify);\r\n\r\nexport default new Vuetify({\r\n theme: { dark: false },\r\n});\r\n","import \"@fontsource/roboto/100.css\";\r\nimport \"@fontsource/roboto/300.css\";\r\nimport \"@fontsource/roboto/400.css\";\r\nimport \"@fontsource/roboto/500.css\";\r\nimport \"@fontsource/roboto/700.css\";\r\nimport \"@fontsource/roboto/900.css\";\r\nimport '@mdi/font/css/materialdesignicons.css' // Ensure you are using css-loader\r\nimport Vue from \"vue\";\r\nimport App from \"./App.vue\";\r\nimport \"./registerServiceWorker\";\r\nimport router from \"./router\";\r\nimport store from \"./store\";\r\nimport vuetify from \"./plugins/vuetify\";\r\n\r\nnew Vue({\r\n router,\r\n store,\r\n vuetify,\r\n render: (h) => h(App),\r\n}).$mount(\"#app\");\r\n","export default class Day {\r\n date = \"\";\r\n dayWeek = \"\";\r\n\r\n constructor() {}\r\n\r\n get object() {\r\n //? Получение объекта дня\r\n if (!this.check) {\r\n console.error('Объекта \"День\" получен без ключевых свойств');\r\n }\r\n return {\r\n date: this.date,\r\n dayWeek: this.dayWeek,\r\n today: false,\r\n lessons: [],\r\n };\r\n }\r\n\r\n get check() {\r\n return this.date && this.dayWeek;\r\n }\r\n}\r\n","import Day from \"@/parser/source/group/dto/day.js\";\r\n\r\nexport default class dayParser {\r\n $ = null;\r\n Day = new Day();\r\n constructor(mainNode) {\r\n this.$ = mainNode;\r\n }\r\n\r\n parse() {\r\n const dateDay = this.$.textContent.trim().split(\" \"); //? ['14.03.2022', 'Понедельник']\r\n this.Day.date = dateDay[0];\r\n this.Day.dayWeek = dateDay[1];\r\n return this.Day;\r\n }\r\n}\r\n","export default class Content {\r\n type = \"\";\r\n subgroup = undefined;\r\n name = \"\";\r\n subname = \"\";\r\n online = undefined;\r\n teacherName = \"\";\r\n teacherSurname = \"\";\r\n teacherMiddlename = \"\";\r\n teacherPost = \"\";\r\n teacherId = 0;\r\n teacherPromt = 0;\r\n locationAud = \"\";\r\n locationCorp = \"\";\r\n locationId = \"\";\r\n locationPromt = \"\";\r\n locationSpecific = \"\";\r\n links = [];\r\n\r\n constructor(type) {}\r\n\r\n get object() {\r\n //? Получение объекта дня\r\n if (!this.check) {\r\n console.error('Объекта \"Контент\" получен без ключевых свойств');\r\n }\r\n return {\r\n type: this.type,\r\n subgroup: this.subgroup,\r\n name: this.name,\r\n subname: this.subname,\r\n online: this.online,\r\n links: this.links,\r\n teacher: {\r\n surname: this.teacherSurname,\r\n name: this.teacherName,\r\n middlename: this.teacherMiddlename,\r\n post: this.teacherPost,\r\n id: this.teacherId,\r\n promt: this.teacherPromt,\r\n },\r\n location: {\r\n aud: this.locationAud,\r\n corp: this.locationCorp,\r\n id: this.locationId,\r\n prompt: this.locationPromt,\r\n specific: this.locationSpecific,\r\n },\r\n };\r\n }\r\n\r\n get check() {\r\n return this.type && this.name;\r\n }\r\n\r\n addLink(name, href) {\r\n this.links.push({\r\n name,\r\n href,\r\n });\r\n }\r\n}\r\n","import Content from \"./content\";\r\n\r\nexport default class Lesson {\r\n number = 0;\r\n startTime = \"\";\r\n endTime = \"\";\r\n content = [];\r\n\r\n constructor() {}\r\n\r\n get object() {\r\n //? Получение объекта дня\r\n if (!this.check) {\r\n console.error('Объекта \"Занятие\" получен без ключевых свойств');\r\n }\r\n return {\r\n number: this.number,\r\n startTime: this.startTime,\r\n endTime: this.endTime,\r\n content: this.content,\r\n isNow: false,\r\n isToday: false,\r\n };\r\n }\r\n\r\n get check() {\r\n return this.number && this.startTime && this.endTime;\r\n }\r\n\r\n addContent(Content) {\r\n this.content.push(Content.object);\r\n }\r\n}\r\n","import Lesson from \"@/parser/source/group/dto/lesson\";\r\nimport Content from \"@/parser/source/group/dto/content\";\r\n\r\nexport default class lessonParser {\r\n $ = null;\r\n Lesson = new Lesson();\r\n Content = new Content();\r\n re =\r\n /^(\\(.*?[^\\(]*\\))?\\s?((?:.*(?=\\s\\(Э))|(?:.*(?=\\s\\(с))|.*)\\s?(?:\\(Э.*(?=\\())?(\\(с видеотрансляцией\\))?.*$/;\r\n\r\n constructor(mainNode) {\r\n this.$ = mainNode.cells;\r\n }\r\n\r\n parse() {\r\n this.numberParser(this.$.num);\r\n this.timeParser(this.$.time);\r\n this.typeParse(this.$[2]); //? Ну кто делает ID одинаковым на двух элементах строки таблицы??? ((((\r\n this.nameParse(this.$[3]);\r\n this.teacherParse(this.$.teacher);\r\n this.locationParse(this.$.aud);\r\n\r\n this.Lesson.addContent(this.Content);\r\n return this.Lesson;\r\n }\r\n\r\n numberParser(node) {\r\n const temp = node.textContent.trim().split(\" \");\r\n this.Lesson.number = temp[0];\r\n }\r\n\r\n timeParser(node) {\r\n const temp = node.textContent.trim().split(\" \");\r\n this.Lesson.startTime = temp[0];\r\n this.Lesson.endTime = temp[2];\r\n }\r\n\r\n typeParse(node) {\r\n const temp = node.textContent.trim();\r\n //TODO Место для измененя названия типа занятия (может как-то в будущем)\r\n this.Content.type = temp;\r\n }\r\n\r\n nameParse(node) {\r\n const name = node.textContent.replace(/\\s+/g, \" \").trim();\r\n //TODO Место для измененя названия дисциплины (может как-то в будущем)\r\n\r\n let m = null;\r\n m = this.re.exec(name);\r\n if (m !== null) {\r\n this.Content.subgroup = m[1]\r\n ? m[1]\r\n .replace(\"(\", \"\")\r\n .replace(\")\", \"\")\r\n .replace(\"п/г \", \"\")\r\n .replace(\"подгруппа\", \"п/г\")\r\n .replace(\"русский язык как иностранный\", \"рус. яз.\")\r\n .replace(\"русский язык как иностанный\", \"рус. яз.\")\r\n .replace(\"иностранный язык\", \"ин. яз.\")\r\n .replace(\"немецкий язык\", \"нем. яз.\")\r\n : \"\";\r\n this.Content.subname = m[3] ? m[3] : \"\";\r\n this.Content.name = m[2] ? m[2] : \"\";\r\n // (m[3] ? ' ' + m[3] + \"\" : \"\");\r\n } else {\r\n this.Content.name = name;\r\n }\r\n \r\n let href = node.querySelector(\"#lesson > a\");\r\n if (href) {\r\n this.Content.addLink(\"В курс\", href.href);\r\n }\r\n for (let href of node.querySelectorAll(\"#lesson > small > a\")) {\r\n this.Content.addLink(href.textContent, href.href);\r\n }\r\n }\r\n\r\n teacherParse(node) {\r\n this.Content.teacherPost = node.querySelector(\"small\").textContent.trim();\r\n\r\n const aTeacher = node.querySelector(\"a\");\r\n\r\n const FullTeacherNameArray = aTeacher.textContent.trim().split(\" \");\r\n\r\n //TODO Место для измененя названия дисциплины (может как-то в будущем)\r\n\r\n this.Content.teacherSurname = FullTeacherNameArray[0];\r\n this.Content.teacherName =\r\n FullTeacherNameArray.length > 2 ? FullTeacherNameArray[1] : \"\";\r\n\r\n this.Content.teacherMiddlename =\r\n FullTeacherNameArray.length == 3 ? FullTeacherNameArray[2] : \"\";\r\n this.Content.teacherPromt = node.querySelector(\"img\").title.trim();\r\n this.Content.teacherId = +aTeacher.href.split(\"=\")[1];\r\n }\r\n\r\n locationParse(node) {\r\n const aLocation = node.querySelector(\"a\");\r\n\r\n if (!aLocation) {\r\n //? Онлайн курс или что-то другое\r\n this.Content.locationSpecific = node.textContent.trim();\r\n this.Content.online =\r\n node.textContent.trim() == \"Онлайн курс\" ? true : false;\r\n } else {\r\n //? Аудитория + корпус\r\n this.Content.locationAud = aLocation.textContent;\r\n this.Content.locationId = +aLocation.href.split(\"=\")[1];\r\n this.Content.locationPromt = node.querySelector(\"img\").title.trim();\r\n this.Content.locationCorp = node.textContent\r\n .replace(/\\s+/g, \" \")\r\n .trim()\r\n .split(\",\")[1]\r\n .trim();\r\n }\r\n }\r\n}\r\n","import Content from \"@/parser/source/group/dto/content\";\r\n\r\nexport default class contentParser {\r\n $ = null;\r\n Content = new Content();\r\n re =\r\n /^(\\(.*?[^\\(]*\\))?\\s?((?:.*(?=\\s\\(Э))|(?:.*(?=\\s\\(с))|.*)\\s?(?:\\(Э.*(?=\\())?(\\(с видеотрансляцией\\))?.*$/;\r\n\r\n constructor(mainNode) {\r\n this.$ = mainNode.cells;\r\n }\r\n\r\n parse() {\r\n this.typeParse(this.$[0]); //? Ну кто делает ID одинаковым на двух элементах строки таблицы??? ((((\r\n this.nameParse(this.$[1]);\r\n this.teacherParse(this.$.teacher);\r\n this.locationParse(this.$.aud);\r\n return this.Content;\r\n }\r\n\r\n typeParse(node) {\r\n const temp = node.textContent.trim();\r\n //TODO Место для измененя названия типа занятия (может как-то в будущем)\r\n this.Content.type = temp;\r\n }\r\n\r\n nameParse(node) {\r\n const name = node.textContent.replace(/\\s+/g, \" \").trim();\r\n //TODO Место для измененя названия дисциплины (может как-то в будущем)\r\n\r\n let m = null;\r\n m = this.re.exec(name);\r\n if (m !== null) {\r\n this.Content.subgroup = m[1]\r\n ? m[1]\r\n .replace(\"(\", \"\")\r\n .replace(\")\", \"\")\r\n .replace(\"п/г \", \"\")\r\n .replace(\"подгруппа\", \"п/г\")\r\n .replace(\"русский язык как иностранный\", \"рус. яз.\")\r\n .replace(\"русский язык как иностанный\", \"рус. яз.\")\r\n .replace(\"иностранный язык\", \"ин. яз.\")\r\n .replace(\"немецкий язык\", \"нем. яз.\")\r\n : \"\";\r\n this.Content.subname = m[3] ? m[3] : \"\";\r\n this.Content.name = m[2] ? m[2] : \"\";\r\n // (m[3] ? ' ' + m[3] + \"\" : \"\");\r\n } else {\r\n this.Content.name = name;\r\n }\r\n \r\n let href = node.querySelector(\"#lesson > a\");\r\n if (href) {\r\n this.Content.addLink(\"В курс\", href.href);\r\n }\r\n for (let href of node.querySelectorAll(\"#lesson > small > a\")) {\r\n this.Content.addLink(href.textContent, href.href);\r\n }\r\n }\r\n\r\n teacherParse(node) {\r\n this.Content.teacherPost = node.querySelector(\"small\").textContent.trim();\r\n\r\n const aTeacher = node.querySelector(\"a\");\r\n const FullTeacherNameArray = aTeacher.textContent.trim().split(\" \");\r\n //TODO Место для измененя названия дисциплины (может как-то в будущем)\r\n\r\n this.Content.teacherSurname = FullTeacherNameArray[0];\r\n this.Content.teacherName = 2 ? FullTeacherNameArray[1] : \"\";\r\n this.Content.teacherMiddlename =\r\n FullTeacherNameArray.length == 3 ? FullTeacherNameArray[2] : \"\";\r\n this.Content.teacherPromt = node.querySelector(\"img\").title.trim();\r\n this.Content.teacherId = +aTeacher.href.split(\"=\")[1];\r\n }\r\n\r\n locationParse(node) {\r\n const aLocation = node.querySelector(\"a\");\r\n if (!aLocation) {\r\n //? Онлайн курс или что-то другое\r\n this.Content.locationSpecific = node.textContent.trim();\r\n this.Content.online =\r\n node.textContent.trim() == \"Онлайн курс\" ? true : false;\r\n } else {\r\n //? Аудитория + корпус\r\n this.Content.locationAud = aLocation.textContent;\r\n this.Content.locationId = +aLocation.href.split(\"=\")[1];\r\n this.Content.locationPromt = node.querySelector(\"img\").title.trim();\r\n this.Content.locationCorp = node.textContent\r\n .replace(/\\s+/g, \" \")\r\n .trim()\r\n .split(\",\")[1]\r\n .trim();\r\n }\r\n }\r\n}\r\n","export default class headerParser {\r\n $ = null;\r\n constructor(mainNode) {\r\n this.$ = mainNode;\r\n }\r\n\r\n parse() {\r\n const temp = this.$.querySelector(\"#h2\").textContent.trim();\r\n return temp;\r\n }\r\n}\r\n","// import dayParser from \"@/parsers/group/help/day\";\r\nimport dayParser from \"@/parser/source/group/help/day\";\r\nimport lessonParser from \"@/parser/source/group/help/lesson\";\r\nimport contentParser from \"@/parser/source/group/help/content\";\r\nimport headerParser from \"@/parser/source/group/help/header\";\r\n\r\nexport default class groupScheduleParser {\r\n $ = { header: null, schedule: null }; //? Основная node таблицы для парсинга\r\n header = \"\";\r\n result = []; //? Основной массив расписания\r\n\r\n code = -1; //? Код завершения парсинга\r\n\r\n constructor({ headerTable, scheduleTable }) {\r\n if (!headerTable) {\r\n throw \"Ошибка! Передан нулевой DOM-элемент элемент заголовока для парсинга...\";\r\n }\r\n if (!scheduleTable) {\r\n throw \"Ошибка! Передан нулевой DOM-элемент расписания для парсинга...\";\r\n }\r\n\r\n this.$.header = headerTable;\r\n this.$.schedule = scheduleTable;\r\n }\r\n\r\n parsing() {\r\n //? Основная парсинг-функция\r\n try {\r\n this.header = new headerParser(this.$.header).parse(); //? Парсинг заголовка\r\n for (let i = 0; i < this.$.schedule.rows.length; i++) {\r\n const strockNode = this.$.schedule.rows[i];\r\n this.selectParserFunction(strockNode);\r\n }\r\n return this.schedule;\r\n } catch (err) {\r\n throw err;\r\n }\r\n }\r\n\r\n selectParserFunction(strockNode) {\r\n const stlb = strockNode.cells.length;\r\n switch (stlb) {\r\n case 1:\r\n // TODO: Добавить новый день\r\n const Day = new dayParser(strockNode).parse();\r\n this.addDay(Day);\r\n break;\r\n case 4:\r\n // TODO: Пара для подгруппы\r\n const Content = new contentParser(strockNode).parse();\r\n this.addContent(Content);\r\n break;\r\n case 6:\r\n // TODO: Полная пара\r\n const Lesson = new lessonParser(strockNode).parse();\r\n this.addLesson(Lesson);\r\n break;\r\n default:\r\n break;\r\n }\r\n }\r\n\r\n addDay(Day) {\r\n this.result.push(Day.object);\r\n }\r\n\r\n addLesson(Lesson) {\r\n this.result[this.index].lessons.push(Lesson.object);\r\n }\r\n\r\n addContent(Content) {\r\n this.result[this.index].lessons[this.lessonsIndex].content.push(\r\n Content.object\r\n );\r\n }\r\n\r\n get index() {\r\n //? Индекс крайнего дня\r\n return this.result.length - 1;\r\n }\r\n\r\n get lessonsIndex() {\r\n //? Индекс крайнего занятия\r\n return this.result[this.index].lessons.length - 1;\r\n }\r\n\r\n get schedule() {\r\n //? Результат парсинга возвращается этим методом\r\n return {\r\n header: this.header,\r\n schedule: this.result,\r\n };\r\n }\r\n}\r\n","export default class headerParser {\r\n $ = null;\r\n constructor(mainNode) {\r\n this.$ = mainNode;\r\n }\r\n\r\n parse() {\r\n const nodes = this.$.rows[0].cells[0].childNodes;\r\n const post = nodes[0].textContent.trim();\r\n const fullName = nodes[1].textContent.trim();\r\n return { fullName, post };\r\n }\r\n}\r\n","export default class Day {\r\n date = \"\";\r\n dayWeek = \"\";\r\n\r\n constructor() {}\r\n\r\n get object() {\r\n //? Получение объекта дня\r\n if (!this.check) {\r\n console.error('Объекта \"День\" получен без ключевых свойств');\r\n }\r\n return {\r\n date: this.date,\r\n dayWeek: this.dayWeek,\r\n lessons: [],\r\n };\r\n }\r\n\r\n get check() {\r\n return this.date && this.dayWeek;\r\n }\r\n}\r\n","import Day from \"@/parser/source/teacher/dto/day.js\";\r\n\r\nexport default class dayParser {\r\n $ = null;\r\n Day = new Day();\r\n constructor(mainNode) {\r\n this.$ = mainNode;\r\n }\r\n\r\n parse() {\r\n const dateDay = this.$.textContent.trim().split(\" \"); //? ['14.03.2022', 'Понедельник']\r\n this.Day.date = dateDay[0];\r\n this.Day.dayWeek = dateDay[1];\r\n return this.Day;\r\n }\r\n}\r\n","export default class Content {\r\n type = \"\";\r\n subgroup = undefined;\r\n name = \"\";\r\n subname = \"\";\r\n online = undefined;\r\n group = \"\";\r\n groupPromt = \"\";\r\n groupId = 0; //? Кажется, что не нужно, но вдруг что сломается...\r\n locationAud = \"\";\r\n locationCorp = \"\";\r\n locationId = 0;\r\n locationPromt = \"\";\r\n locationSpecific = \"\";\r\n links = [];\r\n\r\n constructor(type) {}\r\n\r\n get object() {\r\n //? Получение объекта дня\r\n if (!this.check) {\r\n console.error('Объект \"Контент\" получен без ключевых свойств');\r\n }\r\n return {\r\n type: this.type,\r\n subgroup: this.subgroup,\r\n subname: this.subname,\r\n online: this.online,\r\n name: this.name,\r\n links: this.links,\r\n group: {\r\n name: this.group,\r\n promt: this.groupPromt,\r\n id: this.groupId,\r\n },\r\n location: {\r\n aud: this.locationAud,\r\n corp: this.locationCorp,\r\n id: this.locationId,\r\n prompt: this.locationPromt,\r\n specific: this.locationSpecific,\r\n },\r\n };\r\n }\r\n\r\n get check() {\r\n return this.type && this.name && this.group && this.groupId;\r\n }\r\n\r\n addLink(name, href) {\r\n this.links.push({\r\n name,\r\n href,\r\n });\r\n }\r\n}\r\n","import Content from \"./content\";\r\n\r\nexport default class Lesson {\r\n number = 0;\r\n startTime = \"\";\r\n endTime = \"\";\r\n content = [];\r\n\r\n constructor() {}\r\n\r\n get object() {\r\n //? Получение объекта дня\r\n if (!this.check) {\r\n console.error('Объекта \"Занятие\" получен без ключевых свойств');\r\n }\r\n return {\r\n number: this.number,\r\n startTime: this.startTime,\r\n endTime: this.endTime,\r\n content: this.content,\r\n isNow: false,\r\n isToday: false,\r\n };\r\n }\r\n\r\n get check() {\r\n return this.number && this.startTime && this.endTime;\r\n }\r\n\r\n addContent(Content) {\r\n this.content.push(Content.object);\r\n }\r\n}\r\n","import Lesson from \"@/parser/source/teacher/dto/lesson\";\r\nimport Content from \"@/parser/source/teacher/dto/content\";\r\n\r\nexport default class lessonParser {\r\n $ = null;\r\n Lesson = new Lesson();\r\n Content = new Content();\r\n re =\r\n /^(\\(.*?[^\\(]*\\))?\\s?((?:.*(?=\\s\\(Э))|(?:.*(?=\\s\\(с))|.*)\\s?(?:\\(Э.*(?=\\())?(\\(с видеотрансляцией\\))?.*$/;\r\n constructor(mainNode) {\r\n this.$ = mainNode.cells;\r\n }\r\n\r\n parse() {\r\n this.numberParser(this.$.num);\r\n this.timeParser(this.$.time);\r\n this.typeParse(this.$[2]); //? Ну кто делает ID одинаковым на двух элементах строки таблицы??? ((((\r\n this.nameParse(this.$[3]);\r\n this.groupParse(this.$.group);\r\n this.locationParse(this.$.aud);\r\n this.Lesson.addContent(this.Content);\r\n return this.Lesson;\r\n }\r\n\r\n numberParser(node) {\r\n const temp = node.textContent.trim().split(\" \");\r\n this.Lesson.number = temp[0];\r\n }\r\n\r\n timeParser(node) {\r\n const temp = node.textContent.trim().split(\" \");\r\n this.Lesson.startTime = temp[0];\r\n this.Lesson.endTime = temp[2];\r\n }\r\n\r\n typeParse(node) {\r\n const temp = node.textContent.trim();\r\n //TODO Место для измененя названия типа занятия (может как-то в будущем)\r\n this.Content.type = temp;\r\n }\r\n\r\n nameParse(node) {\r\n const name = node.textContent.replace(/\\s+/g, \" \").trim();\r\n //TODO Место для измененя названия дисциплины (может как-то в будущем)\r\n let m = null;\r\n m = this.re.exec(name);\r\n if (m !== null) {\r\n this.Content.subgroup = m[1]\r\n ? m[1]\r\n .replace(\"(\", \"\")\r\n .replace(\")\", \"\")\r\n .replace(\"п/г \", \"\")\r\n .replace(\"подгруппа\", \"п/г\")\r\n .replace(\"русский язык как иностранный\", \"рус. яз.\")\r\n .replace(\"русский язык как иностанный\", \"рус. яз.\")\r\n .replace(\"иностранный язык\", \"ин. яз.\")\r\n .replace(\"немецкий язык\", \"нем. яз.\")\r\n : \"\";\r\n this.Content.subname = m[3] ? m[3] : \"\";\r\n this.Content.name = m[2] ? m[2] : \"\";\r\n // (m[3] ? ' ' + m[3] + \"\" : \"\");\r\n } else {\r\n this.Content.name = name;\r\n }\r\n\r\n let href = node.querySelector(\"#lesson > a\");\r\n if (href) {\r\n this.Content.addLink(\"В курс\", href.href);\r\n }\r\n for (let href of node.querySelectorAll(\"#lesson > small > a\")) {\r\n this.Content.addLink(href.textContent, href.href);\r\n }\r\n }\r\n\r\n locationParse(node) {\r\n const aLocation = node.querySelector(\"a\");\r\n\r\n if (!aLocation) {\r\n //? Онлайн курс или что-то другое\r\n this.Content.locationSpecific = node.textContent.trim();\r\n this.Content.online =\r\n node.textContent.trim() == \"Онлайн курс\" ? true : false;\r\n } else {\r\n //? Аудитория + корпус\r\n this.Content.locationAud = aLocation.textContent;\r\n this.Content.locationId = +aLocation.href.split(\"=\")[1];\r\n this.Content.locationPromt = node.querySelector(\"img\").title.trim();\r\n this.Content.locationCorp = node.textContent\r\n .replace(/\\s+/g, \" \")\r\n .trim()\r\n .split(\",\")[1]\r\n .trim();\r\n }\r\n }\r\n\r\n groupParse(node) {\r\n const aGroup = node.querySelector(\"a\");\r\n this.Content.group = aGroup.textContent.trim();\r\n const idGroup = aGroup.href.split(\"=\")[1];\r\n this.Content.groupId = aGroup.textContent.trim();\r\n this.Content.groupPromt = node.querySelector(\"img\").title.trim();\r\n }\r\n}\r\n","import Content from \"@/parser/source/teacher/dto/content\";\r\n\r\nexport default class contentParser {\r\n $ = null;\r\n Content = new Content();\r\n re =\r\n /^(\\(.*?[^\\(]*\\))?\\s?((?:.*(?=\\s\\(Э))|(?:.*(?=\\s\\(с))|.*)\\s?(?:\\(Э.*(?=\\())?(\\(с видеотрансляцией\\))?.*$/;\r\n constructor(mainNode) {\r\n this.$ = mainNode.cells;\r\n }\r\n\r\n parse() {\r\n this.typeParse(this.$[0]); //? Ну кто делает ID одинаковым на двух элементах строки таблицы??? ((((\r\n this.nameParse(this.$[1]);\r\n this.groupParse(this.$.group);\r\n this.locationParse(this.$.aud);\r\n return this.Content;\r\n }\r\n\r\n typeParse(node) {\r\n const temp = node.textContent.trim();\r\n //TODO Место для измененя названия типа занятия (может как-то в будущем)\r\n this.Content.type = temp;\r\n }\r\n\r\n nameParse(node) {\r\n const name = node.textContent.replace(/\\s+/g, \" \").trim();\r\n //TODO Место для измененя названия дисциплины (может как-то в будущем)\r\n let m = null;\r\n m = this.re.exec(name);\r\n if (m !== null) {\r\n this.Content.subgroup = m[1]\r\n ? m[1]\r\n .replace(\"(\", \"\")\r\n .replace(\")\", \"\")\r\n .replace(\"п/г \", \"\")\r\n .replace(\"подгруппа\", \"п/г\")\r\n .replace(\"русский язык как иностранный\", \"рус. яз.\")\r\n .replace(\"русский язык как иностанный\", \"рус. яз.\")\r\n .replace(\"иностранный язык\", \"ин. яз.\")\r\n .replace(\"немецкий язык\", \"нем. яз.\")\r\n : \"\";\r\n this.Content.subname = m[3] ? m[3] : \"\";\r\n this.Content.name = m[2] ? m[2] : \"\";\r\n // (m[3] ? ' ' + m[3] + \"\" : \"\");\r\n } else {\r\n this.Content.name = name;\r\n }\r\n\r\n let href = node.querySelector(\"#lesson > a\");\r\n if (href) {\r\n this.Content.addLink(\"В курс\", href.href);\r\n }\r\n for (let href of node.querySelectorAll(\"#lesson > small > a\")) {\r\n this.Content.addLink(href.textContent, href.href);\r\n }\r\n }\r\n\r\n locationParse(node) {\r\n const aLocation = node.querySelector(\"a\");\r\n\r\n if (!aLocation) {\r\n //? Онлайн курс или что-то другое\r\n this.Content.locationSpecific = node.textContent.trim();\r\n this.Content.online =\r\n node.textContent.trim() == \"Онлайн курс\" ? true : false;\r\n } else {\r\n //? Аудитория + корпус\r\n this.Content.locationAud = aLocation.textContent;\r\n this.Content.locationId = +aLocation.href.split(\"=\")[1];\r\n this.Content.locationPromt = node.querySelector(\"img\").title.trim();\r\n this.Content.locationCorp = node.textContent\r\n .replace(/\\s+/g, \" \")\r\n .trim()\r\n .split(\",\")[1]\r\n .trim();\r\n }\r\n }\r\n\r\n groupParse(node) {\r\n const aGroup = node.querySelector(\"a\");\r\n this.Content.group = aGroup.textContent.trim();\r\n const idGroup = aGroup.href.split(\"=\")[1];\r\n this.Content.groupId = idGroup;\r\n this.Content.groupPromt = node.querySelector(\"img\").title.trim();\r\n }\r\n}\r\n","import headerParser from \"@/parser/source/teacher/help/header\";\r\nimport dayParser from \"@/parser/source/teacher/help/day\";\r\nimport lessonParser from \"@/parser/source/teacher/help/lesson\";\r\nimport contentParser from \"@/parser/source/teacher/help/content\";\r\n\r\nexport default class teacherScheduleParser {\r\n $ = { header: null, schedule: null };\r\n\r\n result = [];\r\n header = {\r\n fullName: \"\",\r\n post: \"\",\r\n };\r\n\r\n code = -1;\r\n constructor({ headerTable, scheduleTable }) {\r\n if (!headerTable) {\r\n throw \"Ошибка! Передан нулевой DOM-элемент элемент заголовока для парсинга...\";\r\n }\r\n if (!scheduleTable) {\r\n throw \"Ошибка! Передан нулевой DOM-элемент расписания для парсинга...\";\r\n }\r\n\r\n this.$.header = headerTable;\r\n this.$.schedule = scheduleTable;\r\n }\r\n\r\n parsing() {\r\n try {\r\n this.header = new headerParser(this.$.header).parse(); //? Парсинг заголовка\r\n\r\n for (let i = 0; i < this.$.schedule.rows.length; i++) {\r\n const strockNode = this.$.schedule.rows[i];\r\n this.selectParserFunction(strockNode);\r\n }\r\n return this.schedule;\r\n } catch (err) {\r\n throw err;\r\n }\r\n }\r\n\r\n selectParserFunction(strockNode) {\r\n const stlb = strockNode.cells.length;\r\n switch (stlb) {\r\n case 1:\r\n // TODO: Добавить новый день\r\n const Day = new dayParser(strockNode).parse();\r\n this.addDay(Day);\r\n break;\r\n\r\n case 4:\r\n // TODO: Пара для нескольких групп\r\n const Content = new contentParser(strockNode).parse();\r\n this.addContent(Content);\r\n break;\r\n case 6:\r\n // TODO: Полная пара\r\n const Lesson = new lessonParser(strockNode).parse();\r\n this.addLesson(Lesson);\r\n break;\r\n default:\r\n break;\r\n }\r\n }\r\n\r\n addDay(Day) {\r\n this.result.push(Day.object);\r\n }\r\n\r\n addLesson(Lesson) {\r\n this.result[this.index].lessons.push(Lesson.object);\r\n }\r\n\r\n addContent(Content) {\r\n this.result[this.index].lessons[this.lessonsIndex].content.push(\r\n Content.object\r\n );\r\n }\r\n\r\n get index() {\r\n //? Индекс крайнего дня\r\n return this.result.length - 1;\r\n }\r\n\r\n get lessonsIndex() {\r\n //? Индекс крайнего занятия\r\n return this.result[this.index].lessons.length - 1;\r\n }\r\n\r\n get schedule() {\r\n //? Результат парсинга возвращается этим методом\r\n return {\r\n header: this.header,\r\n schedule: this.result,\r\n };\r\n }\r\n}\r\n","export default class Day {\r\n date = \"\";\r\n dayWeek = \"\";\r\n\r\n constructor() {}\r\n\r\n get object() {\r\n //? Получение объекта дня\r\n if (!this.check) {\r\n console.error('Объекта \"День\" получен без ключевых свойств');\r\n }\r\n return {\r\n date: this.date,\r\n dayWeek: this.dayWeek,\r\n lessons: [],\r\n };\r\n }\r\n\r\n get check() {\r\n return this.date && this.dayWeek;\r\n }\r\n}\r\n","import Day from \"@/parser/source/location/dto/day.js\";\r\n\r\nexport default class dayParser {\r\n $ = null;\r\n Day = new Day();\r\n constructor(mainNode) {\r\n this.$ = mainNode;\r\n }\r\n\r\n parse() {\r\n const dateDay = this.$.textContent.trim().split(\" \"); //? ['14.03.2022', 'Понедельник']\r\n this.Day.date = dateDay[0];\r\n this.Day.dayWeek = dateDay[1];\r\n return this.Day;\r\n }\r\n}\r\n","export default class Content {\r\n type = \"\";\r\n subgroup = undefined;\r\n name = \"\";\r\n subname = \"\";\r\n online = undefined;\r\n teacherName = \"\";\r\n teacherSurname = \"\";\r\n teacherMiddlename = \"\";\r\n teacherPost = \"\";\r\n teacherId = 0;\r\n teacherPromt = 0;\r\n group = \"\";\r\n groupPromt = \"\";\r\n groupId = 0; //? Кажется, что не нужно, но вдруг что сломается...\r\n links = [];\r\n\r\n constructor(type) {}\r\n\r\n get object() {\r\n //? Получение объекта дня\r\n if (!this.check) {\r\n console.error('Объект \"Контент\" получен без ключевых свойств');\r\n }\r\n return {\r\n type: this.type,\r\n subgroup: this.subgroup,\r\n subname: this.subname,\r\n online: this.online,\r\n name: this.name,\r\n links: this.links,\r\n teacher: {\r\n surname: this.teacherSurname,\r\n name: this.teacherName,\r\n middlename: this.teacherMiddlename,\r\n post: this.teacherPost,\r\n id: this.teacherId,\r\n promt: this.teacherPromt,\r\n },\r\n group: {\r\n name: this.group,\r\n promt: this.groupPromt,\r\n id: this.groupId,\r\n },\r\n };\r\n }\r\n\r\n get check() {\r\n return this.type && this.name && this.group && this.groupId;\r\n }\r\n\r\n addLink(name, href) {\r\n this.links.push({\r\n name,\r\n href,\r\n });\r\n }\r\n}\r\n","import Content from \"./content\";\r\n\r\nexport default class Lesson {\r\n number = 0;\r\n startTime = \"\";\r\n endTime = \"\";\r\n content = [];\r\n\r\n constructor() {}\r\n\r\n get object() {\r\n //? Получение объекта дня\r\n if (!this.check) {\r\n console.error('Объекта \"Занятие\" получен без ключевых свойств');\r\n }\r\n return {\r\n number: this.number,\r\n startTime: this.startTime,\r\n endTime: this.endTime,\r\n content: this.content,\r\n isNow: false,\r\n isToday: false,\r\n };\r\n }\r\n\r\n get check() {\r\n return this.number && this.startTime && this.endTime;\r\n }\r\n\r\n addContent(Content) {\r\n this.content.push(Content.object);\r\n }\r\n}\r\n","import Lesson from \"@/parser/source/location/dto/lesson\";\r\nimport Content from \"@/parser/source/location/dto/content\";\r\n\r\nexport default class lessonParser {\r\n $ = null;\r\n Lesson = new Lesson();\r\n Content = new Content();\r\n re =\r\n /^(\\(.*?[^\\(]*\\))?\\s?((?:.*(?=\\s\\(Э))|(?:.*(?=\\s\\(с))|.*)\\s?(?:\\(Э.*(?=\\())?(\\(с видеотрансляцией\\))?.*$/;\r\n constructor(mainNode) {\r\n this.$ = mainNode.cells;\r\n }\r\n\r\n parse() {\r\n this.numberParser(this.$.num);\r\n this.timeParser(this.$.time);\r\n this.typeParse(this.$[2]); //? Ну кто делает ID одинаковым на двух элементах строки таблицы??? ((((\r\n this.nameParse(this.$[3]);\r\n this.teacherParse(this.$.teacher);\r\n this.groupParse(this.$.aud); //? Да-да-да, группы там имеют id = 'aud'\r\n\r\n this.Lesson.addContent(this.Content);\r\n return this.Lesson;\r\n }\r\n\r\n numberParser(node) {\r\n const temp = node.textContent.trim().split(\" \");\r\n this.Lesson.number = temp[0];\r\n }\r\n\r\n timeParser(node) {\r\n const temp = node.textContent.trim().split(\" \");\r\n this.Lesson.startTime = temp[0];\r\n this.Lesson.endTime = temp[2];\r\n }\r\n\r\n typeParse(node) {\r\n const temp = node.textContent.trim();\r\n //TODO Место для измененя названия типа занятия (может как-то в будущем)\r\n this.Content.type = temp;\r\n }\r\n\r\n nameParse(node) {\r\n const name = node.textContent.replace(/\\s+/g, \" \").trim();\r\n //TODO Место для измененя названия дисциплины (может как-то в будущем)\r\n let m = null;\r\n m = this.re.exec(name);\r\n if (m !== null) {\r\n this.Content.subgroup = m[1]\r\n ? m[1]\r\n .replace(\"(\", \"\")\r\n .replace(\")\", \"\")\r\n .replace(\"п/г \", \"\")\r\n .replace(\"подгруппа\", \"п/г\")\r\n .replace(\"русский язык как иностранный\", \"рус. яз.\")\r\n .replace(\"русский язык как иностанный\", \"рус. яз.\")\r\n .replace(\"иностранный язык\", \"ин. яз.\")\r\n .replace(\"немецкий язык\", \"нем. яз.\")\r\n : \"\";\r\n this.Content.subname = m[3] ? m[3] : \"\";\r\n this.Content.name = m[2] ? m[2] : \"\";\r\n // (m[3] ? ' ' + m[3] + \"\" : \"\");\r\n } else {\r\n this.Content.name = name;\r\n }\r\n\r\n let href = node.querySelector(\"#lesson > a\");\r\n if (href) {\r\n this.Content.addLink(\"В курс\", href.href);\r\n }\r\n for (let href of node.querySelectorAll(\"#lesson > small > a\")) {\r\n this.Content.addLink(href.textContent, href.href);\r\n }\r\n }\r\n\r\n teacherParse(node) {\r\n this.Content.teacherPost = node.querySelector(\"small\").textContent.trim();\r\n\r\n const aTeacher = node.querySelector(\"a\");\r\n const FullTeacherNameArray = aTeacher.textContent.trim().split(\" \");\r\n //TODO Место для измененя названия дисциплины (может как-то в будущем)\r\n\r\n this.Content.teacherSurname = FullTeacherNameArray[0];\r\n this.Content.teacherName = FullTeacherNameArray[1];\r\n this.Content.teacherMiddlename =\r\n FullTeacherNameArray.length == 3 ? FullTeacherNameArray[2] : \"\";\r\n this.Content.teacherPromt = node.querySelector(\"img\").title.trim();\r\n this.Content.teacherId = +aTeacher.href.split(\"=\")[1];\r\n }\r\n\r\n groupParse(node) {\r\n const aGroup = node.querySelector(\"a\");\r\n this.Content.group = aGroup.textContent.trim();\r\n const idGroup = aGroup.href.split(\"=\")[1];\r\n this.Content.groupId = aGroup.textContent.trim();\r\n this.Content.groupPromt = node.querySelector(\"img\").title.trim();\r\n }\r\n}\r\n","import Content from \"@/parser/source/location/dto/content\";\r\n\r\nexport default class contentParser {\r\n $ = null;\r\n Content = new Content();\r\n re =\r\n /^(\\(.*?[^\\(]*\\))?\\s?((?:.*(?=\\s\\(Э))|(?:.*(?=\\s\\(с))|.*)\\s?(?:\\(Э.*(?=\\())?(\\(с видеотрансляцией\\))?.*$/;\r\n constructor(mainNode) {\r\n this.$ = mainNode.cells;\r\n }\r\n\r\n parse() {\r\n this.typeParse(this.$[0]); //? Ну кто делает ID одинаковым на двух элементах строки таблицы??? ((((\r\n this.nameParse(this.$[1]);\r\n this.teacherParse(this.$.teacher);\r\n this.groupParse(this.$.aud);\r\n return this.Content;\r\n }\r\n\r\n typeParse(node) {\r\n const temp = node.textContent.trim();\r\n //TODO Место для измененя названия типа занятия (может как-то в будущем)\r\n this.Content.type = temp;\r\n }\r\n\r\n nameParse(node) {\r\n const name = node.textContent.replace(/\\s+/g, \" \").trim();\r\n //TODO Место для измененя названия дисциплины (может как-то в будущем)\r\n let m = null;\r\n m = this.re.exec(name);\r\n if (m !== null) {\r\n this.Content.subgroup = m[1]\r\n ? m[1]\r\n .replace(\"(\", \"\")\r\n .replace(\")\", \"\")\r\n .replace(\"п/г \", \"\")\r\n .replace(\"подгруппа\", \"п/г\")\r\n .replace(\"русский язык как иностранный\", \"рус. яз.\")\r\n .replace(\"русский язык как иностанный\", \"рус. яз.\")\r\n .replace(\"иностранный язык\", \"ин. яз.\")\r\n .replace(\"немецкий язык\", \"нем. яз.\")\r\n : \"\";\r\n this.Content.subname = m[3] ? m[3] : \"\";\r\n this.Content.name = m[2] ? m[2] : \"\";\r\n // (m[3] ? ' ' + m[3] + \"\" : \"\");\r\n } else {\r\n this.Content.name = name;\r\n }\r\n\r\n let href = node.querySelector(\"#lesson > a\");\r\n if (href) {\r\n this.Content.addLink(\"В курс\", href.href);\r\n }\r\n for (let href of node.querySelectorAll(\"#lesson > small > a\")) {\r\n this.Content.addLink(href.textContent, href.href);\r\n }\r\n }\r\n\r\n teacherParse(node) {\r\n this.Content.teacherPost = node.querySelector(\"small\").textContent.trim();\r\n\r\n const aTeacher = node.querySelector(\"a\");\r\n const FullTeacherNameArray = aTeacher.textContent.trim().split(\" \");\r\n //TODO Место для измененя названия дисциплины (может как-то в будущем)\r\n\r\n this.Content.teacherSurname = FullTeacherNameArray[0];\r\n this.Content.teacherName = FullTeacherNameArray[1];\r\n this.Content.teacherMiddlename =\r\n FullTeacherNameArray.length == 3 ? FullTeacherNameArray[2] : \"\";\r\n this.Content.teacherPromt = node.querySelector(\"img\").title.trim();\r\n this.Content.teacherId = +aTeacher.href.split(\"=\")[1];\r\n }\r\n\r\n groupParse(node) {\r\n const aGroup = node.querySelector(\"a\");\r\n this.Content.group = aGroup.textContent.trim();\r\n const idGroup = aGroup.href.split(\"=\")[1];\r\n this.Content.groupId = idGroup;\r\n this.Content.groupPromt = node.querySelector(\"img\").title.trim();\r\n }\r\n}\r\n","export default class headerParser {\r\n $ = null;\r\n constructor(mainNode) {\r\n this.$ = mainNode;\r\n }\r\n\r\n parse() {\r\n const temp = this.$.querySelector(\"#h2\").textContent.trim();\r\n return temp;\r\n }\r\n}\r\n","// import dayParser from \"@/parsers/location/help/day\";\r\n// import lessonParser from \"@/parsers/location/help/lesson\";\r\n// import contentParser from \"@/parsers/location/help/content\";\r\n// import headerParser from \"@/parsers/location/help/header\";\r\n\r\nimport dayParser from \"@/parser/source/location/help/day.js\";\r\nimport lessonParser from \"@/parser/source/location/help/lesson.js\";\r\nimport contentParser from \"@/parser/source/location/help/content.js\";\r\nimport headerParser from \"@/parser/source/location/help/header.js\";\r\n\r\nexport default class locationScheduleParser {\r\n $ = { header: null, schedule: null }; //? Основная node таблицы для парсинга\r\n header = \"\";\r\n result = []; //? Основной массив расписания\r\n\r\n code = -1; //? Код завершения парсинга\r\n\r\n constructor({ headerTable, scheduleTable }) {\r\n if (!headerTable) {\r\n throw \"Ошибка! Передан нулевой DOM-элемент элемент заголовока для парсинга...\";\r\n }\r\n if (!scheduleTable) {\r\n throw \"Ошибка! Передан нулевой DOM-элемент расписания для парсинга...\";\r\n }\r\n\r\n this.$.header = headerTable;\r\n this.$.schedule = scheduleTable;\r\n }\r\n\r\n parsing() {\r\n //? Основная парсинг-функция\r\n try {\r\n this.header = new headerParser(this.$.header).parse(); //? Парсинг заголовка\r\n for (let i = 0; i < this.$.schedule.rows.length; i++) {\r\n const strockNode = this.$.schedule.rows[i];\r\n this.selectParserFunction(strockNode);\r\n }\r\n return this.schedule;\r\n } catch (err) {\r\n throw err;\r\n }\r\n }\r\n\r\n selectParserFunction(strockNode) {\r\n const stlb = strockNode.cells.length;\r\n switch (stlb) {\r\n case 1:\r\n // TODO: Добавить новый день\r\n const Day = new dayParser(strockNode).parse();\r\n this.addDay(Day);\r\n break;\r\n case 4:\r\n // TODO: Пара для подгруппы\r\n const Content = new contentParser(strockNode).parse();\r\n this.addContent(Content);\r\n break;\r\n case 6:\r\n // TODO: Полная пара\r\n const Lesson = new lessonParser(strockNode).parse();\r\n this.addLesson(Lesson);\r\n break;\r\n default:\r\n break;\r\n }\r\n }\r\n\r\n addDay(Day) {\r\n this.result.push(Day.object);\r\n }\r\n\r\n addLesson(Lesson) {\r\n this.result[this.index].lessons.push(Lesson.object);\r\n }\r\n\r\n addContent(Content) {\r\n this.result[this.index].lessons[this.lessonsIndex].content.push(\r\n Content.object\r\n );\r\n }\r\n\r\n parsingAud(audHtml) {\r\n //! Грязно, но быстро\r\n const re =\r\n /