{"version":3,"sources":["./$_lazy_route_resource lazy namespace object","./node_modules/@angular/compiler/src sync","./src/_shared/constants/privacy-policy.ts","./src/_shared/constants/transmissionType.ts","./src/_shared/constants/tripStatuses.ts","./src/app/app-routing.module.ts","./src/app/app.component.ts","./src/app/app.component.html","./src/app/app.module.ts","./src/app/buy-course/buy-course.component.ts","./src/app/buy-course/buy-course.component.html","./src/app/core/guards/autorized-user.guard.ts","./src/app/core/guards/finish-registration.guard.ts","./src/app/core/guards/student-registration.guard.ts","./src/app/core/guards/tiket.guard.ts","./src/app/core/services/interceptor.service.ts","./src/app/core/services/storage.service.ts","./src/app/modules/authorize/authorize.service.ts","./src/app/modules/course/course-lectures/course-lectures.component.ts","./src/app/modules/course/course-lectures/course-lectures.component.html","./src/app/modules/course/services/final-test.service.ts","./src/app/modules/course/services/lectures.service.ts","./src/app/modules/driving-school-registration/documents/documents.component.ts","./src/app/modules/driving-school-registration/documents/documents.component.html","./src/app/modules/driving-school-registration/driving-school-registration-routing.module.ts","./src/app/modules/driving-school-registration/driving-school-registration.component.ts","./src/app/modules/driving-school-registration/driving-school-registration.component.html","./src/app/modules/driving-school-registration/driving-school-registration.module.ts","./src/app/modules/driving-school-registration/menu-registration/menu-registration.component.ts","./src/app/modules/driving-school-registration/menu-registration/menu-registration.component.html","./src/app/modules/driving-school-registration/payment/payment.component.ts","./src/app/modules/driving-school-registration/payment/payment.component.html","./src/app/modules/driving-school-registration/personal-information/personal-information.component.ts","./src/app/modules/driving-school-registration/personal-information/personal-information.component.html","./src/app/modules/driving-school-registration/services/registration-personal-information.service.ts","./src/app/modules/layout/services/search.service.ts","./src/app/modules/practice/services/instructors.service.ts","./src/app/modules/start-learning/components/services/city.service.ts","./src/app/modules/tests/components/selected/selected-tests/selected-tests.component.ts","./src/app/modules/tests/components/selected/selected-tests/selected-tests.component.html","./src/app/modules/tests/components/selected/selected-ticket/selected-ticket.component.ts","./src/app/modules/tests/components/selected/selected-ticket/selected-ticket.component.html","./src/app/modules/tests/components/test-content/test-content.component.ts","./src/app/modules/tests/components/test-content/test-content.component.html","./src/app/modules/tests/components/test-on-themes-content/test/test.component.ts","./src/app/modules/tests/components/test-on-themes-content/test/test.component.html","./src/app/modules/tests/components/test-on-themes-content/tests-on-themes/tests-on-themes.component.ts","./src/app/modules/tests/components/test-on-themes-content/tests-on-themes/tests-on-themes.component.html","./src/app/modules/tests/components/ticket-content/ticket-content.component.ts","./src/app/modules/tests/components/ticket-content/ticket-content.component.html","./src/app/modules/tests/components/ticket-tests/ticket-tests.component.ts","./src/app/modules/tests/components/ticket-tests/ticket-tests.component.html","./src/app/modules/tests/components/ticket-tests/ticket/ticket.component.ts","./src/app/modules/tests/components/ticket-tests/ticket/ticket.component.html","./src/app/modules/tests/components/twenty-random-tickets/twenty-random-tickets.component.ts","./src/app/modules/tests/components/twenty-random-tickets/twenty-random-tickets.component.html","./src/app/modules/tests/services/tests-on-themes.service.ts","./src/app/modules/tests/tests-routing.module.ts","./src/app/modules/tests/tests.module.ts","./src/app/modules/training-materials/components/menu-components/penalties-menu/penalties-menu.component.ts","./src/app/modules/training-materials/components/menu-components/penalties-menu/penalties-menu.component.html","./src/app/modules/training-materials/components/menu-components/road-marking-menu/road-marking-menu.component.ts","./src/app/modules/training-materials/components/menu-components/road-marking-menu/road-marking-menu.component.html","./src/app/modules/training-materials/components/menu-components/sign-menu/sign-menu.component.ts","./src/app/modules/training-materials/components/menu-components/sign-menu/sign-menu.component.html","./src/app/modules/training-materials/components/penalties/penalties.component.ts","./src/app/modules/training-materials/components/penalties/penalties.component.html","./src/app/modules/training-materials/components/penalty/penalty.component.ts","./src/app/modules/training-materials/components/road-marking-categories/road-marking-categories.component.ts","./src/app/modules/training-materials/components/road-marking-category/road-marking-category.component.ts","./src/app/modules/training-materials/components/road-marking-category/road-marking-category.component.html","./src/app/modules/training-materials/components/road-marking/road-marking.component.ts","./src/app/modules/training-materials/components/road-marking/road-marking.component.html","./src/app/modules/training-materials/components/search-components/penalties-search/penalties-search.component.ts","./src/app/modules/training-materials/components/search-components/penalties-search/penalties-search.component.html","./src/app/modules/training-materials/components/search-components/search-road-markings/search-road-markings.component.ts","./src/app/modules/training-materials/components/search-components/search-road-markings/search-road-markings.component.html","./src/app/modules/training-materials/components/search-components/search-signs/search-signs.component.ts","./src/app/modules/training-materials/components/search-components/search-signs/search-signs.component.html","./src/app/modules/training-materials/components/search-components/traffic-rule-search/traffic-rule-search.component.ts","./src/app/modules/training-materials/components/search-components/traffic-rule-search/traffic-rule-search.component.html","./src/app/modules/training-materials/components/sign-categories/sign-categories.component.ts","./src/app/modules/training-materials/components/sign-category/sign-category.component.ts","./src/app/modules/training-materials/components/sign-category/sign-category.component.html","./src/app/modules/training-materials/components/sign/sign.component.ts","./src/app/modules/training-materials/components/sign/sign.component.html","./src/app/modules/training-materials/components/traffic-rule-categories/traffic-rule-categories.component.ts","./src/app/modules/training-materials/components/traffic-rule-categories/traffic-rule-categories.component.html","./src/app/modules/training-materials/components/traffic-rule-category/traffic-rule-category.component.ts","./src/app/modules/training-materials/components/traffic-rule-category/traffic-rule-category.component.html","./src/app/modules/training-materials/components/traffic-rule/traffic-rule.component.ts","./src/app/modules/training-materials/components/traffic-rule/traffic-rule.component.html","./src/app/modules/training-materials/services/license-categories.service.ts","./src/app/modules/training-materials/services/penalty.service.ts","./src/app/modules/training-materials/services/road-markings.service.ts","./src/app/modules/training-materials/services/signs.service.ts","./src/app/modules/training-materials/services/traffic-rules.service.ts","./src/app/modules/training-materials/training-materials-routing.module.ts","./src/app/modules/training-materials/training-materials.module.ts","./src/app/modules/user/services/user.service.ts","./src/app/modules/user/user.component.ts","./src/app/modules/user/user.component.html","./src/app/modules/web-view-redirect-page/components/redirect-page/redirect-page.component.ts","./src/app/shared/classes/upload-img.ts","./src/app/shared/components/finished-test/finished-test.component.ts","./src/app/shared/components/finished-test/finished-test.component.html","./src/app/shared/components/full-instructor-information/full-instructor-information.component.ts","./src/app/shared/components/full-instructor-information/full-instructor-information.component.html","./src/app/shared/components/reject-application/reject-application.component.ts","./src/app/shared/components/reject-application/reject-application.component.html","./src/app/shared/components/short-instructor-information/short-instructor-information.component.ts","./src/app/shared/components/short-instructor-information/short-instructor-information.component.html","./src/app/shared/components/social-information/social-information.component.ts","./src/app/shared/components/social-information/social-information.component.html","./src/app/shared/components/start-learning/start-learning.component.ts","./src/app/shared/components/start-learning/start-learning.component.html","./src/app/shared/components/student-progress/student-progress.component.ts","./src/app/shared/components/student-progress/student-progress.component.html","./src/app/shared/components/test-item/test-item.component.ts","./src/app/shared/components/test-item/test-item.component.html","./src/app/shared/components/wait-confirm/wait-confirm.component.ts","./src/app/shared/components/wait-confirm/wait-confirm.component.html","./src/app/shared/decorators/storage.decorator.ts","./src/app/shared/dialogs/book-classes/book-classes.component.ts","./src/app/shared/dialogs/cancel-registration/cancel-registration.component.ts","./src/app/shared/dialogs/cancel-registration/cancel-registration.component.html","./src/app/shared/dialogs/change-password-type/change-password-type.component.ts","./src/app/shared/dialogs/change-password-type/change-password-type.component.html","./src/app/shared/dialogs/continue-learning/continue-learning.component.ts","./src/app/shared/dialogs/continue-learning/continue-learning.component.html","./src/app/shared/dialogs/crop-image/crop-image.component.ts","./src/app/shared/dialogs/crop-image/crop-image.component.html","./src/app/shared/dialogs/final-test/final-test.component.ts","./src/app/shared/dialogs/final-test/final-test.component.html","./src/app/shared/dialogs/hints/hints.component.ts","./src/app/shared/dialogs/hints/hints.component.html","./src/app/shared/dialogs/leave-test/leave-test.component.ts","./src/app/shared/dialogs/leave-test/leave-test.component.html","./src/app/shared/dialogs/mobile-version/mobile-version.component.ts","./src/app/shared/dialogs/mobile-version/mobile-version.component.html","./src/app/shared/dialogs/privacy-policy/privacy-policy.component.ts","./src/app/shared/dialogs/privacy-policy/privacy-policy.component.html","./src/app/shared/dialogs/registration-data/registration-data.component.ts","./src/app/shared/dialogs/registration-data/registration-data.component.html","./src/app/shared/dialogs/reject-lesson/reject-lesson.component.ts","./src/app/shared/dialogs/reject-lesson/reject-lesson.component.html","./src/app/shared/dialogs/rejected-lesson-information/rejected-lesson-information.component.ts","./src/app/shared/dialogs/rejected-lesson-information/rejected-lesson-information.component.html","./src/app/shared/dialogs/select-category/select-category.component.ts","./src/app/shared/dialogs/select-category/select-category.component.html","./src/app/shared/dialogs/success-registration/success-registration.component.ts","./src/app/shared/dialogs/success-registration/success-registration.component.html","./src/app/shared/dialogs/test-image-view/test-image-view.component.ts","./src/app/shared/dialogs/test-image-view/test-image-view.component.html","./src/app/shared/dialogs/video-player/video-player.component.ts","./src/app/shared/dialogs/video-player/video-player.component.html","./src/app/shared/directives/click-outside.directive.ts","./src/app/shared/enums/documentsType.enum.ts","./src/app/shared/pipes/highlights-text.pipe.ts","./src/app/shared/property/constant.ts","./src/app/shared/property/socialLiinks.ts","./src/app/shared/shared.module.ts","./src/environments/environment.ts","./src/main.ts"],"names":[],"mappings":"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","file":"main.js","sourcesContent":["function webpackEmptyAsyncContext(req) {\n\t// Here Promise.resolve().then() is used instead of new Promise() to prevent\n\t// uncaught exception popping up in devtools\n\treturn Promise.resolve().then(function() {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t});\n}\nwebpackEmptyAsyncContext.keys = function() { return []; };\nwebpackEmptyAsyncContext.resolve = webpackEmptyAsyncContext;\nmodule.exports = webpackEmptyAsyncContext;\nwebpackEmptyAsyncContext.id = \"./$$_lazy_route_resource lazy recursive\";","function webpackEmptyContext(req) {\n\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\te.code = 'MODULE_NOT_FOUND';\n\tthrow e;\n}\nwebpackEmptyContext.keys = function() { return []; };\nwebpackEmptyContext.resolve = webpackEmptyContext;\nmodule.exports = webpackEmptyContext;\nwebpackEmptyContext.id = \"./node_modules/@angular/compiler/src sync recursive\";","export class PrivacyPolicy{\n public static value(): any {\n return [\n {\n theme: 'Загальні положення',\n themeItem: [\n {\n text: ' У межах цієї Політики конфіденційності персональною інформацією є:',\n item: [\n {\n definition: 'ідентифікаційні та контактні дані',\n itemText: ', як-от: ім’я, прізвище, по батькові; ідентифікаційного номера облікової картки платника податків;адреса електронної пошти та номери телефонів; серії та номери документів, що засвідчують особу або їх замінюють;'\n },\n {\n definition: 'ідентифікаційні та контактні дані',\n itemText: ', як-от: ім’я, прізвище, по батькові; ідентифікаційного номера облікової картки платника податків;адреса електронної пошти та номери телефонів; серії та номери документів, що засвідчують особу або їх замінюють;'\n },\n {\n definition: 'технічні дані',\n itemText: ', які автоматично передаються Сайту у процесі їх використання Послуг за допомогою встановленого на Вашому пристрої програмного забезпечення, зокрема, адреса інтернет-протоколу (IP-адреса), дані файлів cookie, інформація про тип та версію браузера, який Ви використовуєте (або інші програми, за допомогою яких здійснюється доступ до Послуги), дата та година доступу до Послуги, технічні характеристики обладнання та програмного забезпечення, які Ви використовуєте для доступу до Сайту; '\n },\n {\n definition: 'дані профілю',\n itemText: ', як-от ім’я користувача та пароль;'\n },\n {\n definition: 'маркетингові та комунікаційні дані',\n itemText: ', які включають переваги в отриманні від нас маркетингових матеріалів та Ваші уподобання щодо комунікації;'\n },\n {\n definition: 'дані з медичної довідки',\n itemText: '(форма 083/о) щодо Вашої придатності керування транспортним засобом;'\n },\n {\n definition: 'фінансові дані ',\n itemText: '(якщо Ви приєднуєтеся до ліцензійного договору), наприклад, номер банківського рахунку або картки, коли Ви розміщуєте замовлення через реєстрацію на Сайті;'\n },\n {\n definition: 'інша інформація',\n itemText: ' про Вас, обробка якої передбачена',\n url: 'Правилами користування',\n urlUnderline: true,\n itemTextSecondPart: '.'\n }\n ]\n },\n {\n text: 'Політика конфіденційності застосовується лише до Сайту www.romdomdom.in.ua.'\n },\n {\n text: 'Ми є володільцем та розпорядником Ваших персональних даних. Одержувачем Ваших персональних даних є організації та фізичні особи, з якими ми взаємодіємо для виконання умов ліцензійного договору (публічної оферти).'\n },\n {\n text: 'Місцезнаходження персональних даних: Україна, 79066 м. Львів, вул. Сихівська, 20.'\n },\n {\n text: 'Цей Сайт може містити посилання на сторонні вебсайти, як-от наші сторінки в соціальних мережах Twitter, Facebook і LinkedIn. Натискання на ці посилання може дозволити третім особам збирати або передавати дані про Вас. Сайт не контролює та не несе відповідальності за сайти третіх осіб, на які Ви можете перейти за посиланням, доступним на Сайті.'\n }\n ],\n },\n {\n theme: 'Мета обробки персональних даних ',\n themeItem: [\n {\n text: 'Сайт збирає та зберігає тільки ту персональну інформацію, яка необхідна для надання Послуг або виконання договору із Вами, за винятком випадків, коли законодавством передбачено обов’язкове зберігання персональної інформації впродовж визначеного законом строку.'\n },\n {\n text: 'Сайт як оператор Ваших персональних даних обробляє такі дані для (мета):',\n item: [\n {\n itemText: 'Вашої ідентифікації для надання Послуг;'\n },\n {\n itemText: 'формування даних Вашого електронного кабінету (створення облікового запису);'\n },\n {\n itemText: 'надання Вам, зокрема, з використанням мобільного застосунку Сайту, доступу до персоналізованих ресурсів Сайту;'\n },\n {\n itemText: 'забезпечення Вам доступу до даних про себе через Ваш електронний кабінет, зокрема, у мобільному застосунку;'\n },\n {\n itemText: 'встановлення з Вами зворотного зв’язку, включно з надсиланням повідомлень, запитів щодо використання Сайту, надання послуг, оброблення запитів та Ваших заявок;'\n },\n {\n itemText: 'підтвердження достовірності та повноти наданих Вами персональних даних;'\n },\n {\n itemText: 'створення облікового запису для функціонування Вашого електронного кабінету на Сайті, якщо Ви дали згоду на створення облікового запису;'\n },\n {\n itemText: 'адміністрування вашої передплати (якщо Ви приєднуєтеся до договору про надання послуг), коли Ви розміщуєте замовлення через реєстрацію на Сайті, щоби ми могли надати послуги (для виконання ліцензійного договору-оферти); '\n },\n {\n itemText: 'передання нами Ваших персональних даних або доручення їх обробки третім особам відповідно до чинного законодавства;'\n },\n {\n itemText: 'адміністрування Сайту, включно з наданням Вам ефективної клієнтської та технічної підтримки в разі виникнення проблем, пов’язаних із використанням Сайту;'\n },\n {\n itemText: 'здійснення рекламної (маркетингової) діяльності за Вашою згодою;'\n },\n {\n itemText: 'збору Ваших відгуків про Послуги;'\n },\n {\n itemText: 'повідомлення Вас про порушення',\n url: 'Правил користування',\n urlUnderline: true,\n itemTextSecondPart: ' чи інших положень (політики);'\n },\n ]\n },\n {\n text: 'Сайт не здійснює обробку персональних даних щодо расової, національної приналежності, політичних поглядів, релігійних або філософських переконань, інтимного життя.'\n }\n ],\n },\n {\n theme: 'Умови обробки персональної інформації та її передання третім особам',\n themeItem: [\n {\n text: 'Обробка Ваших персональних даних здійснюється відповідно до',\n url: 'Закону',\n urlUnderline: true,\n text2: ' України від 01.06.2010 № 2297–VI «Про захист персональних даних».'\n },\n {\n text: 'Сайт зберігає Вашу персональну інформацію згідно з внутрішніми регламентами Сайту.'\n },\n {\n text: 'Зберігання отриманих нами Ваших персональних даних здійснюється на матеріальних (паперових та електронних) носіях, зокрема, в інформаційній системі персональних даних. Право доступу до Ваших персональних даних на матеріальних носіях мають (дістануть) тільки ті працівники Адміністрації Сайту, яким це необхідно для виконання їх посадових обов’язків та які в законному порядку наділені відповідними повноваженнями та правами доступу до Ваших персональних даних та засобів їх обробки.'\n },\n {\n text: 'Щодо Вашої персональної інформації зберігається її конфіденційність, крім випадків добровільного надання Вами інформації про себе для загального доступу необмеженому колу осіб. Під час використання Послуги Ви погоджується з тим, що певна частина Вашої персональної інформації стає загальнодоступною.'\n },\n {\n text: 'Сайт має право передати Вашу персональну інформацію третім особам у таких випадках:',\n item: [\n {\n itemText: 'Ви дали згоду на такі дії;'\n },\n {\n itemText: 'передання необхідних для використання Вами Послуг або для виконання ліцензійного договору з Вами;'\n },\n {\n itemText: 'передання передбачене українським законодавством у межах встановленої законом процедури;'\n },\n {\n itemText: 'у разі продажу Сайту до набувача переходять усі зобов’язання з дотримання умов цієї Політики щодо отриманої ним персональної інформації.'\n },\n ]\n },\n {\n text: 'Ви даєте згоду на передання таких Ваших персональних даних третім особам (взаємодіючими організаціями та фізичними особами) для організації проведення занять із теоретичної підготовки та практичного керування транспортним засобом:',\n addingInformation: 'У разі передання Ваших персональних даних ми попередимо третіх осіб, які одержать Ваші персональні дані, про те, що ці дані можуть бути використані лише для наперед визначеної мети, а також будемо вимагати від цих осіб підтвердження того, що це правило було (буде) дотримано. Ми включимо в договори з взаємодіючими організаціями та фізичними особами про передання Ваших персональних даних вимоги дотримання конфіденційності (включно з зобов’язаннями нерозголошення) та забезпечення безпеки Ваших персональних даних під час їх обробки.',\n item: [\n {\n definition: 'ідентифікаційні та контактні дані',\n itemText: ', як-от: ім’я, прізвище, по батькові; адреса електронної пошти та номери телефонів; серії та номери документів, що засвідчують особу або їх замінюють;'\n },\n {\n definition: 'ідентифікаційного номера',\n itemText: 'облікової картки платника податків;'\n },\n {\n definition: 'дані з медичної довідки',\n itemText: '(форма 083/о) щодо Вашої придатності керування транспортним засобом.'\n },\n ]\n },\n {\n text: 'Строки обробки та зберігання Ваших персональних даних визначаються відповідно до;',\n addingInformation: 'За загальним правилом, строк обробки Ваших персональних даних не обмежений.',\n item: [\n {\n itemText: 'строку дії договору (цивільно-правових відносин) з Вами;'\n },\n {\n itemText: 'строків зберігання документів, що містять персональні дані (на паперових та електронних носіях), встановленими Наказом [гіперпосилання] Міністерства юстиції України від 12.04.2012 № 578/5 «Про затвердження Переліку типових документів, що створюються під час діяльності державних органів та органів місцевого самоврядування, інших установ, підприємств та організацій, із зазначенням строків зберігання документів»;'\n },\n {\n itemText: 'строку позовної давності;'\n },\n {\n itemText: 'інших вимог, що визначають строки обробки та зберігання персональних даних, встановленими актами законодавства та іншими нормативно-правовими актами;'\n },\n {\n itemText: 'строку дії Вашої згоди.'\n },\n ]\n },\n {\n text: 'Підставами для припинення обробки Ваших персональних даних можуть бути:',\n item: [\n {\n itemText: 'досягнення мети обробки Ваших персональних даних;'\n },\n {\n itemText: 'закінчення строку дії Вашої згоди на обробку персональних даних;'\n },\n {\n itemText: 'відкликання Вами згоди на обробку Ваших Персональних даних;'\n },\n {\n itemText: 'виявлення неправомірної обробки Ваших персональних даних.'\n },\n {\n itemText: 'строку дії Вашої згоди.'\n },\n ]\n },\n {\n text: 'Обробка Ваших персональних даних здійснюється будь-яким законним способом, зокрема, в інформаційних системах персональних даних із використанням засобів автоматизації або без використання таких засобів.',\n },\n {\n text: 'У разі втрати або розголошення персональних даних Ми поінформуємо Вас про це.',\n },\n {\n text: 'Ми вживаємо необхідних організаційних та технічних заходів для захисту Вашої персональної інформації від неправомірного або випадкового доступу, знищення, перекручення, блокування, копіювання, поширення, а також від інших неправомірних дій третіх осіб.',\n },\n {\n text: 'Ми спільно з Вами вживаємо необхідних заходів щодо запобігання збиткам або іншим шкідливим наслідкам, які спричинені втратою або розголошенням Ваших персональних даних.',\n },\n ],\n },\n {\n theme: 'Зобов’язання сторін',\n themeItem: [\n {\n text: 'Ви зобов’язані:',\n item: [\n {\n itemText: 'надати інформацію про Ваші персональні дані, яка необхідна для користування Сайтом, забезпечувати на момент надання їх точність, достовірність та актуальність;'\n },\n {\n itemText: 'оновлювати, доповнювати надану інформацію про персональні дані в разі зміни такої інформації.'\n },\n ]\n },\n {\n text: 'Ми зобов’язані:',\n item: [\n {\n itemText: 'використовувати отриману інформацію для досягнення мети, яка зазначена в цій Політиці конфіденційності;'\n },\n {\n itemText: 'забезпечити зберігання конфіденційної інформації в таємниці, не розголошувати без Вашої попередньої письмової згоди, а також не здійснювати продаж, обмін, опублікування або розголошення іншими можливими способами переданих Ваших персональних даних, крім винятків передбачених цією Політикою конфіденційності;'\n },\n {\n itemText: 'вживати заходів обережності для захисту конфіденційності Ваших персональних даних згідно з порядком, який зазвичай використовується для захисту такого роду інформації в сучасному діловому обігу;'\n },\n {\n itemText: 'здійснити блокування персональних даних щодо Вас із моменту звернення або Вашого запиту або Вашого законного представника або уповноваженого органу з захисту прав суб’єктів персональних даних на період перевірки в разі виявлення недостовірних персональних даних або неправомірних дій.'\n },\n ]\n },\n ]\n },\n {\n theme: 'Відповідальність сторін',\n themeItem: [\n {\n text: 'Якщо ми не виконали свої зобов’язання, ми несемо відповідальність за збитки, понесені Вами внаслідок неправомірного використання Ваших персональних даних, відповідно до законодавства України.',\n },\n {\n text: 'У разі втрати або розголошення конфіденційної інформації Ми не несемо відповідальності, якщо така конфіденційна інформація:',\n item: [\n {\n itemText: 'стала публічним надбанням до її втрати або розголошення;'\n },\n {\n itemText: 'була отримана від третьої сторони до моменту її отримання нами;'\n },\n {\n itemText: 'була розголошена за Вашою згодою.'\n }\n ]\n },\n ]\n },\n {\n theme: 'Вирішення спорів',\n themeItem: [\n {\n text: 'До звернення в суд із позовом у спорах, що виникають із відносин між Вами та нами, обов’язковим є пред’явлення претензії (письмової пропозиції про добровільне врегулювання спору).',\n },\n {\n text: 'Одержувач претензії впродовж 10 (десяти) календарних днів із дня отримання претензії письмово повідомляє заявника претензії про результати розгляду претензії.',\n },\n {\n text: 'У разі недосягнення згоди спір буде переданий на розгляд до суду відповідно до чинного законодавства України.',\n },\n {\n text: 'До цієї Політики конфіденційності та відносин між Вами та нами застосовується чинне законодавство України.',\n },\n ]\n },\n {\n theme: 'Інші умови',\n themeItem: [\n {\n text: 'Ми маємо право змінити Політику конфіденційності без Вашої згоди, змінивши цю сторінку. Деякі умови, що містяться в цій Політиці конфіденційності, також можуть бути замінені положеннями або повідомленнями, які публікуються в іншому місці на Сайті. Очікується, що Ви будете час від часу перевіряти цю сторінку, щоби помічати будь-які зміни, оскільки вони є обов’язковими для Вас.',\n },\n {\n text: 'Нова Політика конфіденційності набирає чинності з моменту її розміщення на Сайті, якщо інше не передбачено новою редакцією Політики конфіденційності.',\n },\n {\n text: 'Усі пропозиції або питання з цієї Політики конфіденційності повідомляйте на адресу:',\n url: ' romdomdomofficial@gmail.com'\n },\n {\n text: 'Чинна Політика конфіденційності розміщена на сторінці за адресою:',\n url: 'Правил користування',\n text2: ', розміщених на сторінці за адресою: ',\n url2: 'www.romdomdom.in.ua.',\n urlUnderline: true\n },\n ]\n }\n ]\n }\n}\n","export class TransmissionType{\n public static value(): string[] {\n return ['Механіка', 'Автомат'];\n }\n}\n","export class TripStatuses {\n public static value(): ({ color: string; value: string })[] {\n return [{\n value: 'Заняття заплановане',\n color: '#EAEAEA'\n },\n {\n value: 'Очікує підтвердження',\n color: '#FFBF00'\n },\n {\n value: 'Скасоване студентом',\n color: '#FE5858'\n },\n {\n value: 'Скасоване автошколою',\n color: '#FE5858'\n },\n {\n value: 'Скасоване інструктором',\n color: '#FE5858'\n },\n {\n value: 'Заняття зараховане',\n color: '#23C1B8'\n }\n ];\n };\n}\n","import { NgModule } from '@angular/core';\nimport { Routes, RouterModule } from '@angular/router';\nimport { AutorizedUserGuard } from './core/guards/autorized-user.guard';\nimport { BuyCourseComponent } from './buy-course/buy-course.component';\n\nconst routes: Routes = [\n {\n path: '',\n redirectTo: '/home/dashboard',\n pathMatch: 'full',\n },\n {\n path: 'authorization',\n loadChildren: () => import('./modules/authorize/authorize.module').then(m => m.AuthorizeModule),\n },\n {\n path: 'viber-link',\n loadChildren: () => import('./modules/viber/viber.module').then(m => m.ViberModule)\n },\n {\n path: 'home',\n loadChildren: () => import('./modules/main/main.module').then(m => m.MainModule),\n canActivate: [AutorizedUserGuard]\n },\n {\n path: 'driving-school-registration',\n loadChildren: () => import('./modules/driving-school-registration/driving-school-registration.module').\n then(m => m.DrivingSchoolRegistrationModule),\n canActivate: [AutorizedUserGuard]\n },\n {\n path: 'registration-category-select',\n loadChildren: () => import('./modules/registration-category-select/registration-category-select.module').\n then(m => m.RegistrationCategorySelectModule),\n canActivate: [AutorizedUserGuard]\n },\n {\n path: 'start-learning',\n loadChildren: () => import('./modules/start-learning/start-learning.module').\n then(m => m.StartLearningModule),\n canActivate: [AutorizedUserGuard]\n },\n {\n path: 'instructor',\n loadChildren: () => import('./modules/instuctor-finish-registration/finish-instructor.module').\n then(m => m.FinishInstructorModule)\n },\n {\n path: 'buy-course',\n component: BuyCourseComponent\n },\n {\n path: '**', redirectTo: '/home/dashboard'\n }\n];\n\n@NgModule({\n imports: [RouterModule.forRoot(routes)],\n exports: [RouterModule]\n})\nexport class AppRoutingModule { }\n","import { Component } from '@angular/core';\n\nimport { TranslateService } from '@ngx-translate/core';\nimport { StorageService } from './core/services/storage.service';\nimport { propToLocalStorage } from './shared/decorators/storage.decorator';\nimport { UserService } from './modules/user/services/user.service';\nimport { DeviceDetectorService } from '~/node_modules/ngx-device-detector';\n\n@Component({\n selector: 'app-root',\n templateUrl: './app.component.html',\n styleUrls: ['./app.component.scss']\n})\nexport class AppComponent {\n title = 'RDD';\n @propToLocalStorage('user')\n public user;\n checkPhone: boolean;\n deviceInfo: any;\n openApplication: number;\n location: Location;\n isViber: boolean;\n availableForMobile: boolean;\n\n constructor(private translate: TranslateService,\n private storageService: StorageService,\n private userService: UserService,\n private deviceService: DeviceDetectorService) {\n this.initTranslate();\n this.checkPhone = this.deviceService.isMobile();\n this.deviceInfo = this.deviceService.getDeviceInfo();\n this.isViber = window.location.pathname.includes('/viber-link');\n this.availableForMobile = this.pages_opened_in_mobile();\n if (this.checkPhone) {\n if (this.tryOpenMobileVersion()) {\n this.openApplication = this.storageService.get('openApplication') ?\n this.storageService.get('openApplication').value : 0;\n if (this.openApplication === 1) {\n this.openAppstore();\n }\n } else {\n this.openApplication = 0;\n }\n }\n }\n\n tryOpenMobileVersion(): boolean {\n return window.location.pathname.includes('authorization') && document.referrer !== '' &&\n (document.referrer.includes('romdomdom.in.ua'));\n }\n\n pages_opened_in_mobile(): boolean {\n return window.location.pathname.includes('confirm-email') ||\n window.location.pathname.includes('reset-password') ||\n window.location.pathname.includes('confirmed-email') ||\n window.location.pathname.includes('finish-registration') ||\n window.location.pathname.includes('/registration-categories') ||\n window.location.pathname.includes('forgot-password') ||\n window.location.pathname.includes('buy-course');\n }\n\n openAppstore(): void {\n this.storageService.set('openApplication', 0);\n if (this.checkPhone && this.deviceInfo.os === 'Android') {\n window.open('https://play.google.com/store/apps/details?id=com.romdomdom.student');\n } else if (this.checkPhone && this.deviceInfo.os === 'iOS') {\n window.open('https://apps.apple.com/ua/app/romdomdom/id1541853396/');\n }\n }\n\n tryToOpenApp(): void {\n this.storageService.set('openApplication', 1);\n this.openAppstore();\n }\n\n initTranslate(): void {\n const lang = this.storageService.get('lang') ?\n this.storageService.get('lang') : {value: 'Uk'};\n this.translate.use(lang.value);\n this.translate.onLangChange.subscribe(event => this.storageService.set('lang', event.lang));\n }\n\n}\n","
\n \n
\n\n
\n
\n \n

Для зручності користування завантажте мобільний додаток або використовуйте персональний ПК

\n \n
\n
\n
\n\"\n>\n\n","import { BrowserModule } from '@angular/platform-browser';\nimport { NgModule } from '@angular/core';\n\n// Components\nimport { AppComponent } from './app.component';\n\n// Modules\n\nimport { AppRoutingModule } from './app-routing.module';\nimport { SharedModule } from './shared/shared.module';\nimport { NgxSpinnerModule } from 'ngx-spinner';\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\nimport { HttpClient, HttpClientModule } from '@angular/common/http';\nimport { UserComponent } from './modules/user/user.component';\nimport { TestsModule } from './modules/tests/tests.module';\nimport {\n FacebookLoginProvider,\n GoogleLoginProvider,\n SocialAuthServiceConfig,\n SocialLoginModule\n} from 'angularx-social-login';\nimport { TranslateHttpLoader } from '@ngx-translate/http-loader';\nimport { TrainingMaterialsModule } from './modules/training-materials/training-materials.module';\nimport { CourseLecturesComponent } from './modules/course/course-lectures/course-lectures.component';\nimport { MatProgressBarModule } from '@angular/material/progress-bar';\nimport { MatCardModule } from '@angular/material/card';\nimport { DrivingSchoolRegistrationComponent } from './modules/driving-school-registration/driving-school-registration.component';\nimport { DrivingSchoolRegistrationModule } from './modules/driving-school-registration/driving-school-registration.module';\nimport { NgxMaskModule, IConfig } from 'ngx-mask';\nimport { RedirectPageComponent } from '@module/web-view-redirect-page/components/redirect-page/redirect-page.component';\nimport { MatSelectModule } from '~/node_modules/@angular/material/select';\nimport { BuyCourseComponent } from './buy-course/buy-course.component';\n\nconst maskConfig: Partial = {\n validation: false,\n};\nexport function createTranslateLoader(http: HttpClient): TranslateHttpLoader {\n return new TranslateHttpLoader(http, './assets/i18n/', '.json');\n}\n\n@NgModule({\n declarations: [\n AppComponent,\n UserComponent,\n CourseLecturesComponent,\n DrivingSchoolRegistrationComponent,\n RedirectPageComponent,\n BuyCourseComponent,\n ],\n imports: [\n BrowserModule,\n BrowserAnimationsModule,\n AppRoutingModule,\n SharedModule,\n NgxSpinnerModule,\n HttpClientModule,\n SocialLoginModule,\n TestsModule,\n TrainingMaterialsModule,\n MatProgressBarModule,\n MatCardModule,\n DrivingSchoolRegistrationModule,\n NgxMaskModule.forRoot(maskConfig),\n MatSelectModule\n ],\n providers: [\n {\n provide: 'SocialAuthServiceConfig',\n useValue: {\n autoLogin: false,\n providers: [\n {\n id: GoogleLoginProvider.PROVIDER_ID,\n provider: new GoogleLoginProvider(\n '882376766374-mjub6vvs5t292o3nari32a68h6grrfb6.apps.googleusercontent.com'\n ),\n },\n {\n id: FacebookLoginProvider.PROVIDER_ID,\n provider: new FacebookLoginProvider('143995727684389'),\n },\n ],\n } as SocialAuthServiceConfig,\n }\n ],\n bootstrap: [AppComponent]\n})\nexport class AppModule { }\n","import { Component, OnChanges, OnDestroy, OnInit, SimpleChanges } from '@angular/core';\nimport { FormBuilder, FormControl, FormGroup, Validators } from '@angular/forms';\nimport { Subscription } from 'rxjs';\nimport { AuthorizeService } from 'src/app/modules/authorize/authorize.service';\nimport { NgxSpinnerService } from 'ngx-spinner';\nimport { RegistrationPersonalInformationService } from 'src/app/modules/driving-school-registration/services/registration-personal-information.service';\n\n\n@Component({\n selector: 'app-buy-course',\n templateUrl: './buy-course.component.html',\n styleUrls: ['./buy-course.component.scss']\n})\nexport class BuyCourseComponent implements OnInit {\n\n registrationForm: FormGroup;\n error: boolean;\n name: string;\n errorName: boolean;\n emptyEmail: boolean;\n incorrectEmail: boolean;\n emailExist: boolean;\n // isAgreed: boolean = true;\n formControlName = new FormGroup({\n fullName: new FormControl('')\n });\n user = {\n fullName: '',\n };\n subscriptions: Subscription = new Subscription();\n\n public tariff: any;\n public paymentData = '';\n public paymentSignature = '';\n private clientData;\n\n constructor(private authService: AuthorizeService,\n private regPersonalInformationService: RegistrationPersonalInformationService,\n private fb: FormBuilder,\n private spinner: NgxSpinnerService) {\n this.error = false;\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n }\n\n ngOnInit(): void {\n this.registrationForm = this.fb.group({\n fullName: ['', [Validators.required, Validators.pattern('^[\\\\s]*[a-zA-Zа-щА-ЩЬьЮюЯяЇїІіЄєҐґ’_`\\'-\\\\s]{3,20}')]],\n email: ['', [Validators.required, Validators.pattern('^[\\\\s]*(([^<>()[\\\\]\\\\\\\\.,;:\\\\s@\"]+(\\\\.[^<>()[\\\\]\\\\\\\\.,;:\\\\s@\"]+)*)|(\".+\"))@((\\\\[[0-9]{1,3}\\\\.[0-9]{1,3}\\\\.[0-9]{1,3}\\\\.[0-9]{1,3}\\\\])|(([a-zA-Z\\\\-0-9]+\\\\.)+[a-zA-Z]{2,}))$')]],\n phoneNumber: ['', [Validators.required, Validators.pattern('^[\\\\s]*(\\\\+38)?(\\\\d{3})\\\\-?(\\\\d{3})\\\\-?(\\\\d{2})\\\\-?(\\\\d{2})')]],\n // agreement: [false, [Validators.required]],\n tariff: ['', [Validators.required]]\n });\n\n this.clientData = {\n email: '', \n tariffId: '',\n // Allow to receive payment data in base64 encode format [false: will return payment data in JSON format]\n isDataEncode: true,\n clientUrl: ''\n };\n }\n\n ngOnDestroy(): void {\n this.subscriptions.unsubscribe();\n }\n\n async makePayment(){\n // this.isAgreed = this.registrationForm.get('agreement').value;\n // if(this.isAgreed)\n // {\n if (this.registrationForm.valid) {\n await this.registration();\n this.spinner.show();\n this.clientData.email = this.registrationForm.get('email').value;\n this.clientData.tariffId = this.registrationForm.get('tariff').value;\n this.clientData.clientUrl = window.location.protocol + window.location.host + '/authorization/confirmed-email';\n this.getPaymentData(this.clientData);\n }\n // }\n }\n\n validate()\n {\n return !this.registrationForm.get('agreement').value;\n }\n\n async registration(): Promise {\n this.spinner.show();\n const credential = this.registrationForm.getRawValue();\n credential.language = 0;\n try {\n await this.authService.fastRegistration(credential).toPromise();\n this.spinner.hide();\n } catch (err) {\n this.error = true;\n this.spinner.hide();\n this.errorName = !!err.error.errorCodes.includes(400022);\n this.emptyEmail = !!err.error.errorCodes.includes(400021);\n this.incorrectEmail = !!err.error.errorCodes.includes(400030);\n this.emailExist = !!err.error.errorCodes.includes(400319);\n }\n }\n\n deleteGap(key, value): void {\n const src = value.replace(/^[\\s\\uFEFF\\xA0]+|[\\s\\uFEFF\\xA0]+$/g, '');\n switch (key) {\n case 0:\n this.registrationForm.patchValue({fullName: src});\n break;\n case 1:\n this.registrationForm.patchValue({email: src});\n break;\n }\n }\n\n enterRegistration(event): void {\n if (event.keyCode === 13){\n this.registration();\n }\n }\n\n getPaymentData(data): void {\n this.regPersonalInformationService.getPaymentDataSimplified(data).subscribe((res) => {\n this.paymentSignature = res?.signature;\n this.paymentData = res?.paymentData;\n this.spinner.hide();\n if(document !== undefined)\n {\n (document.getElementById('paymentData') as HTMLInputElement).value = this.paymentData;\n (document.getElementById('paymentSignature') as HTMLInputElement).value = this.paymentSignature;\n this.submit();\n }\n });\n }\n\n submit(): void {\n if(document !== undefined)\n {\n const form = document.getElementById('payForm') as HTMLFormElement;\n form.submit();\n }\n }\n\n}\n","
\n
\n \n

Придбати курс теорії

\n

лише за 500 грн

\n
\n
\n
\n
\n \n
    \n
  • \n \n
    \n \n \n \n
    \n
  • \n
  • \n \n
  • \n
  • \n \n
  • \n
  • \n \n
  • \n
\n \n
\n \n
\n
\n \n\n \n\n \n\n \n \n \n\n \n\n
\n \n \n \n \n \n
\n
\n\n
\n
\n \n \n
\n
\n \n \n \n \n
\n
\n
\n \n
\n
\n
\n
\n
\n
\n \n \n
\n \n \n \n \n
\n
\n
","import { Injectable } from '@angular/core';\nimport { CanActivate, ActivatedRouteSnapshot, RouterStateSnapshot, UrlTree, Router } from '@angular/router';\nimport { Observable } from 'rxjs';\nimport { propToLocalStorage } from '../../shared/decorators/storage.decorator';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class AutorizedUserGuard implements CanActivate {\n\n constructor(private router: Router) { }\n\n @propToLocalStorage('token')\n public token;\n\n @propToLocalStorage('user')\n public user;\n\n canActivate(\n next: ActivatedRouteSnapshot,\n state: RouterStateSnapshot): Observable | Promise | boolean | UrlTree {\n if (this.token && this.user) {\n return true;\n }\n this.router.navigate(['/authorization']);\n return false;\n }\n}\n","import { Injectable } from '@angular/core';\nimport { CanDeactivate, ActivatedRouteSnapshot, RouterStateSnapshot, UrlTree } from '@angular/router';\nimport { Observable } from 'rxjs';\nimport { MatDialog, MatDialogConfig, MatDialogRef } from '@angular/material/dialog';\nimport { LeaveTestComponent } from '../../shared/dialogs/leave-test/leave-test.component';\nimport { map } from 'rxjs/operators';\nimport { StorageService } from '../services/storage.service';\nimport { CancelRegistrationComponent } from '../../shared/dialogs/cancel-registration/cancel-registration.component';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class FinishRegistrationGuard implements CanDeactivate {\n\n constructor(private matDialog: MatDialog,\n private stor: StorageService) {\n }\n\n canDeactivate(\n component: unknown,\n currentRoute: ActivatedRouteSnapshot,\n currentState: RouterStateSnapshot,\n nextState?: RouterStateSnapshot): Observable | Promise | boolean | UrlTree {\n const dialogConfig = new MatDialogConfig();\n const data = {\n hint: 'ssss'\n };\n dialogConfig.data = data;\n if (!this.stor.get('finish-registration').value) {\n const dialogRef = this.matDialog.open(CancelRegistrationComponent);\n return dialogRef.afterClosed().pipe(map(result => {\n if (result) {\n this.matDialog.closeAll();\n this.stor.remove('personal-information', );\n this.stor.remove('editDocuments');\n this.stor.remove('correctInformation');\n this.stor.remove('personal-informationStep');\n }\n return result;\n }));\n }\n else {\n return true;\n }\n }\n\n}\n","import { Injectable } from '@angular/core';\nimport { CanActivate, ActivatedRouteSnapshot, RouterStateSnapshot, UrlTree, Router } from '@angular/router';\nimport { Observable } from 'rxjs';\nimport { propToLocalStorage } from '../../shared/decorators/storage.decorator';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class StudentRegistrationGuard implements CanActivate {\n @propToLocalStorage('token')\n public token;\n\n @propToLocalStorage('registCategory')\n public registCategory;\n constructor(private router: Router){}\n canActivate(\n next: ActivatedRouteSnapshot,\n state: RouterStateSnapshot): Observable | Promise | boolean | UrlTree {\n if (this.token && this.registCategory) {\n return true;\n }\n if (this.token && window.localStorage.getItem('documents')) {\n return true;\n }\n else {\n this.router.navigate([`/registration-category-select`]);\n return false;\n }\n }\n\n}\n","import { Injectable } from '@angular/core';\nimport { CanDeactivate, ActivatedRouteSnapshot, RouterStateSnapshot, UrlTree } from '@angular/router';\nimport { Observable } from 'rxjs';\nimport { MatDialog, MatDialogConfig, MatDialogRef } from '@angular/material/dialog';\nimport { LeaveTestComponent } from '../../shared/dialogs/leave-test/leave-test.component';\nimport { map } from 'rxjs/operators';\nimport { StorageService } from '../services/storage.service';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class TiketGuard implements CanDeactivate {\n\n constructor(private matDialog: MatDialog,\n private stor: StorageService) {\n }\n\n canDeactivate(\n component: unknown,\n currentRoute: ActivatedRouteSnapshot,\n currentState: RouterStateSnapshot,\n nextState?: RouterStateSnapshot): Observable | Promise | boolean | UrlTree {\n const dialogConfig = new MatDialogConfig();\n const data = {\n hint: 'ssss'\n };\n dialogConfig.data = data;\n if (!this.stor.get('finish-test').value) {\n const dialogRef = this.matDialog.open(LeaveTestComponent);\n return dialogRef.afterClosed().pipe(map(result => {\n if (result) {\n this.matDialog.closeAll();\n }\n return result;\n }));\n }\n else {\n return true;\n }\n }\n\n}\n","import { Injectable, Injector } from '@angular/core';\nimport { HttpClient, HttpErrorResponse, HttpHandler, HttpRequest } from '@angular/common/http';\nimport { catchError, concatMap, delay, map, tap, timeout } from 'rxjs/operators';\nimport { Params, Router } from '@angular/router';\nimport { from, Observable, throwError } from 'rxjs';\nimport { StorageService } from './storage.service';\nimport { propToLocalStorage } from '../../shared/decorators/storage.decorator';\nimport { Config } from '../../shared/property/constant';\nimport { NgxSpinnerService } from 'ngx-spinner';\n\nimport * as jwt_decode from 'jwt-decode';\nimport { ActivatedRoute } from '~/node_modules/@angular/router';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class InterceptorService {\n\n private refreshTokenInProgress = false;\n private url = Config.apiUrl();\n private promise;\n\n @propToLocalStorage('token')\n public token;\n\n @propToLocalStorage('user')\n public user;\n\n constructor(private injector: Injector,\n private router: Router,\n private http: HttpClient,\n private storageService: StorageService,\n private spinner: NgxSpinnerService,\n private activatedRoute: ActivatedRoute) {\n\n if (window.location.pathname.includes('/registration-categories') ){\n this.activatedRoute.queryParams\n .subscribe((params: Params) => {\n if (params.refreshToken) {\n this.token = {\n refreshToken: params.refreshToken,\n token: params.token\n };\n this.user = jwt_decode(this.token.token);\n }\n });\n }\n\n }\n\n intercept(request: HttpRequest, next: HttpHandler): Observable {\n if (!this.user && !this.token) {\n return next.handle(request);\n }\n\n const params = request.url.split('/');\n if (params[params.length - 1] === 'token') {\n this.promise = this.doRequest(request, next);\n return from(this.promise);\n }\n\n if (this.checkTokenExpaired && !this.refreshTokenInProgress) {\n this.refreshTokenInProgress = true;\n return this.refreshToken().pipe(\n concatMap((value: any) => {\n request = this.addHeaders(request);\n this.refreshTokenInProgress = false;\n return from(this.doRequest(request, next));\n })\n );\n } else {\n return from(this.doRequest(request, next));\n }\n }\n\n async doRequest(request, next): Promise {\n await this.promise;\n request = this.addHeaders(request);\n return next.handle(request).pipe(\n timeout(20000),\n catchError((err: any) => {\n this.errorHandler(err);\n this.refreshTokenInProgress = false;\n return throwError(err);\n })\n ).toPromise();\n }\n\n errorHandler(err: any): void{\n if (err instanceof HttpErrorResponse) {\n this.spinner.hide();\n if (err.status === 400 && err.error.errorCodes.includes(400003) || err.status === 400 && err.error.errorCodes.includes(400002)) {\n delete this.user;\n delete this.token;\n this.storageService.remove('user');\n this.storageService.remove('token');\n window.location.reload();\n }\n if (err.status === 404 && err.error.errorCodes.includes(404001)) {\n this.storageService.remove('user');\n this.storageService.remove('token');\n delete this.user;\n delete this.token;\n window.location.reload();\n }\n\n if (err.status === 401) {\n delete this.user;\n delete this.token;\n this.router.navigate(['authorization']);\n }\n }\n }\n\n refreshToken(): Observable {\n const reqParams = {\n token: this.token.token,\n refreshToken: this.token.refreshToken\n };\n return this.http.put(`${this.url}account/token`, reqParams)\n .pipe(map((token) => {\n this.token = token;\n this.user = jwt_decode(token.token);\n return token;\n }));\n }\n\n get checkTokenExpaired(): boolean {\n const token = this.token.token;\n if (token) {\n return new Date(this.user.exp * 1000).getTime() <= new Date().getTime();\n }\n return false;\n }\n\n addHeaders(request): HttpRequest {\n if (!this.user)\n {\n this.user = {id: ''};\n }\n return request.clone({\n setHeaders: {\n Authorization: `Bearer ${this.token.token}`,\n appId: this.user.id,\n Accept: 'application/json',\n 'Cache-Control': 'no-cache, no-store, must-revalidate, post-check=0, pre-check=0',\n 'Pragma': 'no-cache',\n 'Expires': '0'\n }\n });\n }\n\n}\n","import { Injectable } from '@angular/core';\n\nexport interface StorageOptions {\n expire?: number;\n tags?: Array;\n inMemory?: boolean;\n}\n\n@Injectable({\n providedIn: 'root'\n})\n\nexport class StorageService {\n\n private memoryCache = {};\n private localStorageSupported;\n\n constructor() {\n this.localStorageSupported = this.checkLocalStorage();\n }\n\n set(key: string, value: any, options: StorageOptions = {}): any {\n const data = {\n value: value,\n tags: options.tags,\n expireAt: null,\n createdAt: new Date()\n };\n\n if (options.expire) {\n data.expireAt = new Date(Date.now() + options.expire);\n }\n\n if (options.inMemory || !this.localStorageSupported) {\n this.memoryCache[key] = data;\n } else {\n window.localStorage.setItem(key, JSON.stringify(data));\n }\n }\n\n get(key: string, inMemory = false): any {\n let data;\n\n if (inMemory || !this.localStorageSupported) {\n data = this.memoryCache[key];\n\n if (data === undefined) {\n return null;\n }\n } else {\n const dataString = window.localStorage.getItem(key);\n\n if (!dataString) {\n return null;\n }\n\n data = JSON.parse(dataString);\n }\n\n if (data.expireAt) {\n const currentDate = new Date();\n const expireDate = new Date(data.expireAt);\n\n if (currentDate > expireDate) {\n return null;\n }\n }\n\n return data;\n }\n\n remove(key: string): void {\n delete this.memoryCache[key];\n window.localStorage.removeItem(key);\n }\n\n private checkLocalStorage(): boolean {\n const key = 'ls-check';\n\n try {\n window.localStorage.setItem(key, key);\n window.localStorage.removeItem(key);\n return true;\n } catch (e) {\n return false;\n }\n }\n}\n","import { BehaviorSubject, Observable } from 'rxjs';\nimport { map } from 'rxjs/operators';\n\nimport { Injectable } from '@angular/core';\nimport { HttpClient } from '@angular/common/http';\nimport * as jwt_decode from 'jwt-decode';\n\nimport { API_PREFIX, Config } from '../../shared/property/constant';\nimport { propToLocalStorage } from '../../shared/decorators/storage.decorator';\nimport { IUser } from '../../shared/interfaces/user';\nimport { Credential } from '../../shared/classes/credential';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class AuthorizeService {\n /**\n * Access token.\n */\n @propToLocalStorage('user')\n public user: any;\n\n @propToLocalStorage('token')\n public token: any;\n\n /**\n * Token API endpoint.\n */\n private url = Config.apiUrl();\n\n /**\n * Current User Subject.\n */\n private currentUserSubject: BehaviorSubject;\n\n /**\n * Current user stream.\n */\n public currentUser: Observable;\n\n constructor(private http: HttpClient) {\n this.currentUserSubject = new BehaviorSubject(JSON.parse(localStorage.getItem('currentIUser')));\n this.currentUser = this.currentUserSubject.asObservable();\n }\n\n public get currentIUserValue(): IUser {\n return this.currentUserSubject.value;\n }\n\n /**\n * Login, and store user.\n *\n * @param credential\n */\n login(credential: Credential): Observable {\n return this.http.post(`${this.url}account/login`, credential)\n .pipe(map(token => {\n this.token = token;\n this.user = jwt_decode(token.token);\n this.currentUserSubject.next(this.user);\n return this.user;\n }));\n }\n\n\n /**\n * Login, and store user by fb.\n *\n * @param authToken\n */\n loginByFB(authToken: string): Observable {\n return this.http.post(`${this.url}account/login/external/facebook`, {\n accessToken: authToken,\n accountLanguage: 0\n }).pipe(map(token => {\n this.token = token;\n this.user = jwt_decode(token.token);\n this.currentUserSubject.next(this.user);\n return this.user;\n }));\n }\n\n\n /**\n * Login, and store user by Google.\n *\n * @param authCode\n */\n loginByGoogle(accessToken: string): Observable {\n return this.http.post(`${this.url}account/login/external/google`, {\n accessToken,\n accountLanguage: 0\n }).pipe(map(token => {\n this.token = token;\n this.user = jwt_decode(token.token);\n this.currentUserSubject.next(this.user);\n return this.user;\n }));\n }\n\n /**\n * Registration.\n *\n * @param credential\n */\n registration(credential: Credential): Observable {\n return this.http.post(`${this.url}account`, credential);\n }\n\n /**\n * Fast Registration.\n *\n * @param credential\n */\n fastRegistration(credential: Credential): Observable {\n return this.http.post(`${this.url}account/fast-sign-up`, credential);\n }\n\n /**\n * Remove Password.\n *\n * @param email\n */\n removePassword(email: string): Observable {\n return this.http.delete(`${this.url}accountsettings/password?email=` + email);\n }\n\n /**\n * Remove Password.\n *\n * @param email\n */\n confirmEmail(email: string, token: string): Observable{\n return this.http.post(`${this.url}accountsettings/email/confirmation`, {\n email,\n confirmationToken: token\n });\n }\n\n /**\n * Remove Password.\n *\n * @param email\n */\n resetPassword(resetPassword): Observable {\n return this.http.post(`${this.url}accountsettings/password`, resetPassword);\n }\n\n /**\n * Clear user info.\n */\n logout(): void {\n this.user = null;\n this.token = null;\n this.currentUserSubject.next(null);\n }\n}\n","import { AfterViewInit, Component, OnInit } from '@angular/core';\nimport { PenaltyService } from '../../training-materials/services/penalty.service';\nimport { StorageService } from '../../../core/services/storage.service';\nimport { TranslateService } from '@ngx-translate/core';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { NgxSpinnerService } from 'ngx-spinner';\nimport { ILicenseCategory } from '../../../shared/interfaces/licenseCategory';\nimport { LecturesService } from '../services/lectures.service';\nimport { FinalTestService } from '../services/final-test.service';\nimport { RegistrationPersonalInformationService } from '../../driving-school-registration/services/registration-personal-information.service';\nimport { PersonalInformation } from '../../../shared/interfaces/personalInformation';\nimport { LectureView, Structure } from '../../../shared/interfaces/lecture-view';\nimport { newArray } from '~/node_modules/@angular/compiler/src/util';\nimport { HttpErrorResponse } from '~/node_modules/@angular/common/http';\nimport { InstructorsService } from '@module/practice/services/instructors.service';\nimport { Subscription } from '~/node_modules/rxjs';\nimport { OnDestroy } from '~/node_modules/@angular/core';\nimport { SocialLinks } from '~/src/app/shared/property/socialLiinks';\nimport { LicenseCategoriesService } from '../../training-materials/services/license-categories.service';\nimport { Tariff } from '../../../shared/interfaces/licenseCategory';\n\n@Component({\n selector: 'app-course-lectures',\n templateUrl: './course-lectures.component.html',\n styleUrls: ['./course-lectures.component.scss',\n '/src/app/modules/training-materials/components/penalties/penalties.component.scss']\n})\nexport class CourseLecturesComponent implements OnInit, AfterViewInit, OnDestroy {\n openComment: number;\n practice: boolean;\n finalTest: boolean;\n practiseArray = new Array(10);\n lessonsScoreValue: number;\n openStatus: boolean;\n licenseCategory: ILicenseCategory;\n courses: LectureView[] = [];\n copyCourses = [...this.courses];\n drivingValues: number;\n accessToDriving: number;\n limitCount: number;\n accessToFinalTest: boolean;\n currentOpen: number;\n practiceWindow: boolean;\n isFinalPassed: boolean;\n registerInfo: PersonalInformation;\n noRegister: boolean;\n statuses: any;\n continueLearning: boolean;\n successPractice: boolean;\n subscriptions: Subscription = new Subscription();\n progressBarWidth: any;\n socialLinks = SocialLinks;\n isPartialPayment: any;\n tariffId: string;\n paymentSignature: string;\n paymentData: string;\n isFull = false;\n canPay = false;\n partialSum: number;\n isNoPractice = false;\n isPracticeAllowed = false;\n tariff: Tariff;\n\n constructor(private penaltyService: PenaltyService,\n private storageService: StorageService,\n private translateService: TranslateService,\n private activatedRoute: ActivatedRoute,\n private spinner: NgxSpinnerService,\n private router: Router,\n private lectureService: LecturesService,\n private finalTestService: FinalTestService,\n private paymentService: LicenseCategoriesService,\n private regPersonalInformationService: RegistrationPersonalInformationService,\n private instructorsService: InstructorsService) {\n this.drivingValues = 0;\n this.lessonsScoreValue = 0;\n this.practice = true;\n this.finalTest = true;\n this.currentOpen = this.storageService.get('openComent')?.value;\n this.licenseCategory = this.storageService.get('license-category').value;\n this.courses.forEach((el: LectureView) => {\n if (el.testsCount === 0) {\n this.currentOpen = 0;\n }\n });\n\n }\n\n ngOnInit(): void {\n this.checkIsPartial();\n this.continueLearning = this.storageService.get('continue-learning') ?\n this.storageService.get('continue-learning').value : false;\n this.router.onSameUrlNavigation = 'reload';\n this.spinner.show();\n this.subscriptions.add(this.regPersonalInformationService.getRegistrationInformation()\n .subscribe((el: PersonalInformation) => {\n this.registerInfo = el;\n this.noRegister = this.registerInfo === null || (this.registerInfo && !([3,6,7].includes(this.registerInfo.courseRequestStatus)));\n if (this.registerInfo && [3,6,7].includes(this.registerInfo.courseRequestStatus)) {\n this.storageService.set('trialTest', false);\n this.subscriptions.add(this.finalTestService.checkFinalSuccess().subscribe((res: boolean) => {\n this.isFinalPassed = res;\n }));\n this.isPracticeAllowed = this.registerInfo?.courseRequestStatus === 7;\n this.getProgress();\n } else {\n this.storageService.set('trialTest', true);\n }\n }));\n this.subscriptions.add(this.lectureService.getLectures(this.licenseCategory.id).subscribe((res: LectureView[]) => {\n this.courses = res;\n\n if(this.canPay === false)\n this.checkForPay();\n\n this.courses.map(el => el.structure.sort((a: Structure, b: Structure) => a.chapterNumber - b.chapterNumber));\n this.accessToDriving = this.courses.indexOf(this.courses.find((el: LectureView) => el.progress.percentage < 90));\n this.copyCourses = this.courses.filter((i: LectureView) => {\n if (this.currentOpen >= 0) {\n this.openComment = this.currentOpen;\n } else {\n if ((this.courses.indexOf(i) > 0 && (this.courses[this.courses.indexOf(i) - 1].progress.percentage >= 90) &&\n (this.courses[this.courses.indexOf(i)].progress.percentage < 90)) ||\n (this.courses.indexOf(i) === (this.courses.length - 1) &&\n (this.courses[this.courses.indexOf(i) - 1]?.progress.percentage >= 90) &&\n this.courses.indexOf(i) !== 0) ||\n (this.courses[this.courses.indexOf(i) + 1]?.progress.percentage === 0 && this.courses.indexOf(i) === 0) ||\n this.courses.length === 1\n ) {\n this.openComment = this.courses.indexOf(i);\n return this.courses.indexOf(i);\n }\n }\n if (this.storageService.get('practiceWindow') === null) {\n this.storageService.set('practiceWindow', false);\n }\n const window = this.storageService.get('practiceWindow').value ?\n this.storageService.get('practiceWindow').value : false;\n this.practiceWindow = this.accessToDriving === 30 && window === false;\n });\n\n if (this.noRegister) {\n this.lessonsScoreValue = 0;\n } else {\n this.courses.forEach((el: LectureView) => this.lessonsScoreValue += el.progress.percentage < 90 ? el.progress.percentage : 100);\n this.lessonsScoreValue /= this.courses.length;\n this.lessonsScoreValue = Math.round(this.lessonsScoreValue);\n\n }\n setTimeout(() => {\n const el = document.querySelector('.active');\n if (el) {\n el.scrollIntoView();\n }\n }, 0);\n }, error => {\n // error during done subscribe\n }, () => {\n // After complete subscribe\n if (this.courses.length === 0) {\n this.practiceWindow = true;\n this.isNoPractice = true;\n }\n this.spinner.hide();\n }));\n }\n\n ngAfterViewInit(): void {\n this.currentOpen = this.storageService.get('openComent')?.value;\n }\n \n ngOnDestroy(): void {\n this.subscriptions.unsubscribe();\n }\n\n getProgress(): void {\n if (this.isPracticeAllowed) {\n this.subscriptions.add(this.instructorsService.getTripBookingsProgress().subscribe(el => {\n this.limitCount = el.tripsLimit;\n this.practiseArray = newArray(this.limitCount);\n this.statuses = el.tripStatuses;\n this.drivingValues = this.statuses.filter(elem => elem === 5).length;\n }, (error: HttpErrorResponse) => {\n this.practiseArray = newArray(10);\n }));\n }\n }\n\n allPractice(event): void {\n this.successPractice = event;\n }\n\n open(el): void {\n this.openComment = el;\n }\n\n savePosition(el): void {\n this.storageService.set('openComent', el);\n }\n\n close(): void {\n this.storageService.set('practiceWindow', true);\n this.practiceWindow = false;\n }\n\n reserve(): void {\n this.router.navigate(['/home/practice/practical-training']);\n this.storageService.set('practiceWindow', true);\n }\n\n closeWindowLearning(): void {\n this.continueLearning = false;\n this.storageService.set('continue-learning', false);\n }\n\n checkForPay(): void {\n if (this.courses[this.courses.length - 1]?.progress.percentage >= 90)\n {\n this.canPay = true;\n this.accessToFinalTest = [3,7].includes(this.registerInfo.courseRequestStatus) && this.tariff?.lecturesLimit === this.courses.length && !this.isFinalPassed;\n }\n else {\n this.canPay = false;\n }\n }\n\n private checkIsPartial(): void {\n this.subscriptions.add(this.paymentService.getNextPayment().subscribe(data => {\n this.tariff = data.tariff;\n if (data.tariff.type === 0)\n {\n this.isFull = true;\n }\n if (data.isPartialPayment && !data.isFullyPaid)\n {\n this.isPartialPayment = true;\n this.tariffId = data.tariff.id;\n this.partialSum = data.nextPartialPayment.sum;\n }\n else {\n this.isPartialPayment = false;\n }\n\n if(this.canPay === false)\n this.checkForPay();\n }));\n }\n\n pay(): void {\n const clientData = {\n clientType: 2, // web client\n // Set Tariff plan id from localStorage\n tariffId: this.tariffId,\n isPartialPayment: true,\n // Allow to receive payment data in base64 encode format [false: will return payment data in JSON format]\n isDataEncode: true,\n clientUrl: document.location.href\n };\n\n this.regPersonalInformationService.getPaymentData(clientData).subscribe((res) => {\n this.paymentSignature = res?.signature;\n this.paymentData = res?.paymentData;\n this.spinner.hide();\n\n (document.getElementById('paymentData') as HTMLInputElement).value = this.paymentData;\n (document.getElementById('paymentSignature') as HTMLInputElement).value = this.paymentSignature;\n this.submit();\n\n });\n }\n\n submit(): void {\n const form = document.getElementById('payForm') as HTMLFormElement;\n form.submit();\n }\n}\n","
\n
\n
\n \n
\n \n
\n
\n

{{'COURSE.PRACTICE_DIALOG.HAPPY_TITLE' | translate}}

\n

{{'COURSE.PRACTICE_DIALOG.TITLE' | translate}}

\n
\n
\n

{{'COURSE.PRACTICE_DIALOG.SUBTITLE' | translate}} {{limitCount}} {{'COURSE.PRACTICE_DIALOG.SUBTITLE_END' | translate}}

\n
\n \n
\n
\n
\n
\n
\n
\n \n \n
\n
\n
\n
\n
\n
{{'COURSE.TITLE' | translate}}
\n
\n
\n
\n \n \n
\n
\n
\n
\n

{{'COURSE.LECTURE' | translate}} {{course.number}}

\n
0 && courses[i-1].progress.percentage >= 90 && course.testsCount > 0 || i == 0)\"\n [ngStyle]=\"{'color': course.progress.percentage < 90 ? '#FE5858' : ''}\"\n class=\"persent\">\n

{{course.progress.percentage}}%

\n
\n
\n
\n
\n
\n

{{'COURSE.THEME' | translate}} {{theme.chapterNumber}}: {{theme.chapterName}} ({{'COURSE.PART' | translate}}. {{theme.part}})

\n
\n
\n
0 && (courses[i-1].progress.percentage >=90) && course.testsCount> 0)||i==0\"\n class=\"result\">\n
\n

{{'COURSE.QUESTION' | translate}}: {{course.testsCount}}

\n
\n
\n \n {{course.progress.rightAnswersCount}}\n
\n
\n \n {{course.progress.wrongAnswersCount}}\n
\n
\n
\n\n
\n
0 && (courses[i-1].progress.percentage < 90) || course.testsCount === 0)\"\n class=\"disabled\">
\n
0)) &&\n !(i > 0 && (courses[i-1].progress.percentage < 90) || course.testsCount === 0)\"\n [ngClass]=\"{'active-button':openComment === i || (courses.length === 3 && course.testsCount > 0)}\"\n class=\"button-place\">\n \n \n

{{'COURSE.LECTURE' | translate}}

\n
\n \n \n

{{'COURSE.TEST_BUTTON' | translate}}

\n
\n\n
\n
\n\n
\n
\n
\n \n
\n \n
\n
\n \n
\n
\n
\n
\n
\n
\n\n = 90 ? 1 : 0\"\n [practiseArray]=\"practiseArray\"\n [progressBarWidth]=\"progressBarWidth\"\n [startProgress]=\"(isPracticeAllowed)?1:0 \"\n [value]=\"lessonsScoreValue\"\n [tripCount]=\"limitCount\">\n \n\n
= limitCount || successPractice ) && lessonsScoreValue >= 90 && !isFinalPassed) && isFull\"\n class=\"information\">\n
\n
\n
\n
\n
\n

\n {{'COURSE.SUCCESS' | translate}}\n

\n \n

{{'COURSE.SERVICE_CENTRES.TITLE' | translate}}\n {{registerInfo.personalDetails.dateOfCourseFinish| date:'dd.MM.yyyy'}}

\n\n
\n
\n
\n
\n

{{'COURSE.SERVICE_CENTRES.SUBTITLE' | translate}}

\n
\n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n
\n
\n
\n
= 90 && !isFinalPassed\n else no_final_exam\"\n class=\" block final-exam\">\n \n
\n

{{'COURSE.FINAL_TEST.TITLE' | translate}}

\n

{{'COURSE.FINAL_TEST.SUBTITLE' | translate}}

\n \n
\n
\n \n
\n \n
\n

{{'COURSE.FINAL_TEST.TITLE' | translate}}

\n

{{'COURSE.FINAL_TEST.SUBTITLE' | translate}}

\n
\n
\n \n
\n \n
\n

{{'COURSE.FINAL_TEST.SUCCESS' | translate}}

\n
\n
\n
\n
\n
\n \n
\n

{{'COURSE.DRIVE_ACTIVE.TITLE' | translate}}

\n

{{'COURSE.DRIVE_ACTIVE.SUBTITLE' | translate}}

\n \n \n \n
\n
\n \n
0\n else request_practice\"\n class=\"block practic no-active \">\n \n
\n

{{'COURSE.DRIVE_NO_ACTIVE.TITLE' | translate}}

\n

{{'COURSE.DRIVE_NO_ACTIVE.SUBTITLE' | translate}}

\n
\n
\n
\n \n
0\"\n class=\"block practic \">\n \n
\n

{{'COURSE.REQUEST_FOR_DRIVE.TITLE' | translate}}

\n

{{'COURSE.REQUEST_FOR_DRIVE.SUBTITLE' | translate}}

\n \n \n \n
\n
\n
\n
\n \n
\n

Оплата частинами

\n

Оплачуйте свою частину, та продовжуйте навчання дальше!

\n
\n
\n
\n \n
\n

Оплата частинами

\n

{{partialSum}}

\n \n
\n
\n \n \n
\n
\n
\n
\n
\n","import { Injectable } from '@angular/core';\nimport { Config } from '../../../shared/property/constant';\nimport { HttpClient } from '@angular/common/http';\nimport { Observable } from 'rxjs';\nimport { FinalTestItem, TestItem } from '../../../shared/modules/test-item';\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class FinalTestService {\n private apiUrl = Config.apiUrl();\n constructor(private http: HttpClient) { }\n\n getFinal(): Observable {\n return this.http.get(`${this.apiUrl}trafficrulestests/final`);\n }\n postFinal(session): Observable {\n return this.http.post(`${this.apiUrl}trafficrulestests/session`, session);\n }\n postAnswer(answer): Observable {\n return this.http.post(`${this.apiUrl}trafficrulestests/answer`, answer);\n }\n checkFinalSuccess(): Observable {\n return this.http.get(`${this.apiUrl}trafficrulestests/final/ispassed`);\n }\n postSession(data): Observable {\n return this.http.put(`${this.apiUrl}trafficrulestests/session/${data}`, data);\n }\n\n}\n","import { Injectable } from '@angular/core';\nimport { Config } from '../../../shared/property/constant';\nimport { HttpClient } from '@angular/common/http';\nimport { Observable } from 'rxjs';\nimport { ILicenseCategory } from '../../../shared/interfaces/licenseCategory';\nimport { TestItem } from '../../../shared/modules/test-item';\nimport { LectureView } from '../../../shared/interfaces/lecture-view';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class LecturesService {\n private apiUrl = Config.apiUrl();\n\n constructor(private http: HttpClient) {\n }\n\n getLectures(id: string): Observable {\n return this.http.get(`${this.apiUrl}lectures`);\n }\n getLicenseCategory(): Observable{\n return this.http.get(`${this.apiUrl}licensecategories`);\n }\n getLecturesById(id: string): Observable {\n return this.http.get(`${this.apiUrl}lectures/${id}`);\n }\n getLecturesTestById(id: string): Observable {\n return this.http.get(`${this.apiUrl}trafficrulestests/lectureid/${id}`);\n }\n saveLectureProgress(data): Observable{\n return this.http.post(`${this.apiUrl}lectures/progress`, data);\n }\n}\n","import { Component, Input, OnDestroy, OnInit } from '@angular/core';\nimport { SuccessRegistrationComponent } from '../../../shared/dialogs/success-registration/success-registration.component';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { MatDialog } from '@angular/material/dialog';\nimport { StorageService } from '../../../core/services/storage.service';\nimport { UploadImg } from '../../../shared/classes/upload-img';\nimport { NgxSpinnerService } from 'ngx-spinner';\nimport { RegistrationPersonalInformationService } from '../services/registration-personal-information.service';\nimport { Config } from '../../../shared/property/constant';\nimport { documentsTypeEnum } from '../../../shared/enums/documentsType.enum';\nimport { ChangePasswordTypeComponent } from '../../../shared/dialogs/change-password-type/change-password-type.component';\nimport { PersonalInformation } from '../../../shared/interfaces/personalInformation';\nimport { Subscription } from '~/node_modules/rxjs';\nimport { PersonalDocuments } from '~/src/app/shared/interfaces/personalDocuments';\n\n@Component({\n selector: 'app-documents',\n templateUrl: './documents.component.html',\n styleUrls: ['./documents.component.scss',\n '/src/app/modules/driving-school-registration/registration-content.scss']\n})\nexport class DocumentsComponent extends UploadImg implements OnInit, OnDestroy {\n @Input() editStatusDocuments: boolean;\n step = 1;\n passwordStep: number;\n documentStep = 1;\n documents = {documents: []};\n copyDocuments = {documents: []};\n storagePath = Config.storageUrl();\n error: boolean;\n categoryEnum = 0;\n passwordStepData: boolean;\n idNumberStep: boolean;\n errorUpload: boolean;\n isIdInvalid: boolean;\n isIndividualTaxNumberInvalid: boolean;\n isMedicalReferenceInvalid: boolean;\n subscriptions: Subscription = new Subscription();\n purchaseType: number;\n\n constructor(private router: Router,\n private matDialog: MatDialog,\n public spinner: NgxSpinnerService,\n public storageService: StorageService,\n private regPersonalInformationService: RegistrationPersonalInformationService,\n private activeRouter: ActivatedRoute) {\n\n super(spinner, storageService);\n this.editStatusDocuments = this.activeRouter.snapshot.routeConfig.path === 'edit';\n this.passwordStep = this.storageService.get('passport-step') ? this.storageService.get('passport-step').value : 1;\n }\n\n ngOnInit(): void {\n this.spinner.show();\n if (this.storageService.get('dock') && this.storageService.get('dock').value !== 'no-documents') {\n this.documents = this.storageService.get('dock').value;\n }\n this.categoryEnum = this.storageService.get('registCategory') ?\n this.storageService.get('registCategory').value.catEnum : 0;\n this.subscriptions.add(this.regPersonalInformationService.getRegistrationInformation().subscribe((el: PersonalInformation) => {\n this.purchaseType = el.purchaseType;\n if (el.personalDocuments.length > 0) {\n el.personalDocuments.find((ele: PersonalDocuments) => {\n if (ele.type === 2) {\n this.storageService.set('passport-step', 2);\n }\n });\n this.passwordStep = this.storageService.get('passport-step') ? this.storageService.get('passport-step').value : 1;\n this.documents.documents = el.personalDocuments;\n if (this.editStatusDocuments) {\n this.isIdInvalid = el.courseRequestRejection.isIdInvalid;\n this.isIndividualTaxNumberInvalid = el.courseRequestRejection.isIndividualTaxNumberInvalid;\n this.isMedicalReferenceInvalid = el.courseRequestRejection.isMedicalReferenceInvalid;\n this.checkStep();\n if (this.storageService.get('editDocuments') && this.storageService.get('editDocuments').value.length > 0) {\n this.documents.documents = this.storageService.get('editDocuments').value;\n } else {\n if (el.courseRequestRejection.isIdInvalid) {\n this.documents.documents = el.personalDocuments.filter(res => res.imagePath.length > 0);\n this.documents.documents = this.documents.documents.filter(ele => (ele.type !== 1 && ele.type !== 2));\n }\n if (el.courseRequestRejection.isIndividualTaxNumberInvalid) {\n this.documents.documents.filter(ele => (ele.type === 0)).map(elem => elem.imagePath = '');\n }\n if (el.courseRequestRejection.isMedicalReferenceInvalid) {\n this.documents.documents.filter(ele => (ele.type === 3)).map(elem => elem.imagePath = '');\n }\n }\n this.storageService.set('editDocuments', this.documents.documents);\n }\n this.copyDocuments = this.documents;\n this.checkValidDocuments();\n }\n this.spinner.hide();\n }));\n }\n\n ngOnDestroy(): void {\n this.subscriptions.unsubscribe();\n }\n\n checkStep(): void {\n if (this.isIdInvalid) {\n this.step = 1;\n } else if (!this.isIdInvalid && this.isIndividualTaxNumberInvalid) {\n this.step = 2;\n } else {\n this.step = 3;\n }\n }\n\n successRegist(): void {\n if ((this.step === 4 && this.documents.documents.length === 7) ||\n (this.step === 1 && this.purchaseType === 3 && this.documents.documents.length >= 3) ||\n (this.step === 3 && this.categoryEnum !== 1) ||\n (this.isIdInvalid && !this.isIndividualTaxNumberInvalid && !this.isMedicalReferenceInvalid) ||\n (this.isIndividualTaxNumberInvalid && !this.isMedicalReferenceInvalid) ||\n (this.isIdInvalid && !this.isIndividualTaxNumberInvalid && this.isMedicalReferenceInvalid)) {\n const dialogRef = this.matDialog.open(SuccessRegistrationComponent);\n dialogRef.afterClosed().subscribe(result => {\n if (result) {\n this.matDialog.closeAll();\n this.storageService.set('finish-registration', true);\n console.log('editStatusDocuments ', this.editStatusDocuments);\n if (this.editStatusDocuments) {\n this.subscriptions.add(this.regPersonalInformationService.editDocuments(this.documents).subscribe(() => {\n this.router.navigate([`/home/dashboard`]);\n this.storageService.remove('editDocuments');\n this.storageService.remove('registrationStep');\n }));\n } else {\n this.subscriptions.add(this.regPersonalInformationService.addDocument(this.documents).subscribe(() => {\n this.router.navigate([`/home/dashboard`]);\n }));\n }\n this.storageService.remove('personal-information');\n this.storageService.remove('dock');\n this.storageService.remove('editDocuments');\n this.storageService.remove('editStatusDocuments');\n this.storageService.remove('registrationStep');\n this.router.navigate([`/home/dashboard`]);\n } else {\n this.matDialog.closeAll();\n }\n return result;\n });\n }\n else {\n this.error = true;\n }\n }\n\n uploadResponse(file, files, queryType, imgType): void {\n if (this.editStatusDocuments && this.documentStep >= 7) {\n if (this.documentStep === 7) {\n this.documents.documents.map(el => {\n if (el.type === documentsTypeEnum.IndividualTaxNumber && el.page === 0) {\n el.imagePath = file;\n }\n });\n }\n if (this.documentStep === 8) {\n this.documents.documents.map(el => {\n if (el.type === documentsTypeEnum.MedicalReference && el.page === 0) {\n el.imagePath = file;\n }\n });\n }\n if (this.documentStep === 9) {\n this.documents.documents.map(el => {\n if (el.type === documentsTypeEnum.MedicalReference && el.page === 1) {\n el.imagePath = file;\n }\n });\n }\n this.storageService.set('editDocuments', this.documents.documents);\n } else {\n if (file !== '') {\n const documentPage = {\n imagePath: '',\n page: 0,\n type: 0,\n };\n documentPage.imagePath = file;\n if (this.documentStep > 0 && this.documentStep < 4) {\n documentPage.page = this.documentStep - 1;\n documentPage.type = documentsTypeEnum.IdCard;\n }\n if (this.documentStep > 3 && this.documentStep < 7) {\n documentPage.page = this.documentStep - 4;\n documentPage.type = documentsTypeEnum.Passport;\n }\n if (this.documentStep === 7) {\n documentPage.page = 0;\n documentPage.type = documentsTypeEnum.IndividualTaxNumber;\n }\n if (this.documentStep === 8 || this.documentStep === 9) {\n documentPage.page = this.documentStep - 8;\n documentPage.type = documentsTypeEnum.MedicalReference;\n }\n if (this.documentStep === 10 || this.documentStep === 11) {\n documentPage.page = this.documentStep - 9;\n documentPage.type = documentsTypeEnum.CategoryBDrivingLicense;\n }\n this.documents.documents.push(documentPage);\n if (this.editStatusDocuments && this.documentStep < 7 && this.isIdInvalid) {\n this.storageService.set('editDocuments', this.documents.documents);\n }\n this.storageService.set('dock', this.documents);\n } else {\n this.errorUpload = true;\n }\n }\n this.checkValidDocuments();\n }\n\n searchImageUrl(page, type): string | false {\n const elem = this.documents.documents.find(el => (el.page === page && el.type === type));\n return (elem !== undefined) ? elem.imagePath : false;\n }\n\n nextStep(): void {\n this.error = false;\n console.log('step: ', this.step);\n console.log('isIdInvalid: ', this.isIdInvalid);\n console.log('isIndividualTaxNumberInvalid: ', this.isIndividualTaxNumberInvalid);\n console.log('isMedicalReferenceInvalid: ', this.isMedicalReferenceInvalid);\n console.log('documents.length: ', this.documents.documents.length);\n if ((this.step === 1 && (((this.passwordStep === 1 || this.passwordStep === 2) && this.documents.documents.length >= 3) &&\n !(this.isIdInvalid && !this.isIndividualTaxNumberInvalid && !this.isMedicalReferenceInvalid) &&\n !(this.isIdInvalid && !this.isIndividualTaxNumberInvalid && this.isMedicalReferenceInvalid))) ||\n (this.step === 2 && this.documents.documents.length >= 4 && !(this.isIndividualTaxNumberInvalid && !this.isMedicalReferenceInvalid))\n || (this.step === 3 && this.documents.documents.length >= 6 &&\n this.categoryEnum === 1)\n ) {\n console.log('if: enter');\n if (this.purchaseType === 3)\n {\n console.log('if: success');\n this.successRegist();\n }\n else {\n console.log('if: next step');\n this.step++;\n }\n } else if (this.step !== 3 && this.isIdInvalid && !this.isIndividualTaxNumberInvalid && this.isMedicalReferenceInvalid) {\n this.step = 3;\n } else if ((this.step === 3 && this.documents.documents.length === 6 && this.categoryEnum !== 1) ||\n (this.isIdInvalid && !this.isIndividualTaxNumberInvalid && !this.isMedicalReferenceInvalid) ||\n (this.isIndividualTaxNumberInvalid && !this.isMedicalReferenceInvalid)\n ) {\n console.log('end');\n this.successRegist();\n } else {\n this.error = true;\n }\n this.chekFormPassword();\n this.checkIdNumber();\n if (this.step === 2) {\n this.passwordStepData = true;\n }\n if (this.step === 3) {\n this.idNumberStep = true;\n }\n }\n\n checkValidDocuments(): boolean {\n let statusDocuments;\n const menuError = {\n personalInformation: this.storageService.get('correctInformation') ?\n this.storageService.get('correctInformation').value.personalInformation : false,\n isPurchased: this.storageService.get('correctInformation') ? this.storageService.get('correctInformation').value.isPurchased : false,\n documents: false\n };\n if (this.purchaseType !== 3) {\n statusDocuments = ((this.documents.documents.length === 6 && !this.editStatusDocuments) ||\n (this.editStatusDocuments && this.chekFormPassword() && this.checkIdNumber() && this.checkMedical()));\n }\n else {\n statusDocuments = ((this.documents.documents.length >= 3 && this.purchaseType === 3 && !this.editStatusDocuments) ||\n (this.editStatusDocuments && this.chekFormPassword()));\n }\n\n menuError.documents = statusDocuments;\n this.storageService.set('correctInformation', menuError);\n return statusDocuments;\n }\n\n\n chekFormPassword(): boolean {\n return !!((this.searchImageUrl(0, 1) &&\n this.searchImageUrl(1, 1) &&\n this.searchImageUrl(2, 1)) ||\n this.searchImageUrl(0, 2) &&\n this.searchImageUrl(1, 2) &&\n this.searchImageUrl(2, 2));\n }\n\n checkIdNumber(): boolean {\n return !!(this.searchImageUrl(0, 0));\n }\n\n checkMedical(): boolean {\n return !!(this.searchImageUrl(0, 3)) && !!(this.searchImageUrl(1, 3));\n }\n\n passwordData(step, type): void {\n if (this.documents.documents.find(elem => elem.type === type)) {\n const dialogRef = this.matDialog.open(ChangePasswordTypeComponent);\n dialogRef.afterClosed().subscribe(result => {\n if (result) {\n this.passwordStep = step;\n this.matDialog.closeAll();\n this.documents.documents.map(elem => elem.type === type ? this.deleteDock(elem.imagePath) : '');\n this.storageService.set('passport-step', step);\n } else {\n this.matDialog.closeAll();\n }\n });\n } else {\n this.passwordStep = step;\n this.storageService.set('passport-step', step);\n }\n this.error = false;\n }\n\n successRegister(): boolean {\n if (this.purchaseType !== 3) {\n return (!this.chekFormPassword() || !this.checkMedical() || !this.checkIdNumber());\n }\n else{\n return !this.chekFormPassword();\n }\n }\n\n deleteDock(currentPath): void {\n if (this.editStatusDocuments) {\n const findPassword = this.documents.documents.find(elem => elem.imagePath === currentPath).type;\n if (findPassword === 1 || findPassword === 2) {\n const delPath = {\n path: currentPath\n };\n this.subscriptions.add(this.regPersonalInformationService.deleteDock(delPath).subscribe(() => {\n this.documents.documents.splice(this.documents.documents.indexOf(this.documents.documents\n .find(elem => elem.imagePath === currentPath)), 1);\n this.storageService.set('editDocuments', this.documents.documents);\n }));\n } else {\n this.documents.documents.map(el => {\n if (el.imagePath === currentPath) {\n el.imagePath = '';\n }\n this.storageService.set('editDocuments', this.documents.documents);\n this.checkValidDocuments();\n });\n }\n } else {\n const delPath = {\n path: currentPath\n };\n this.subscriptions.add(this.regPersonalInformationService.deleteDock(delPath).subscribe(() => {\n this.documents.documents.splice(this.documents.documents.indexOf(this.documents.documents\n .find(elem => elem.imagePath === currentPath)), 1);\n this.storageService.set('dock', this.documents);\n }));\n }\n }\n\n reload(): void {\n window.location.reload();\n }\n}\n","
\n
\n

{{'DOCUMENTS.TITLE' | translate}}

\n \n
\n
\n

{{'DOCUMENTS.TITLE' | translate}}

\n
\n \n \n\n \n
\n
\n
\n

{{'DOCUMENTS.UPLOAD_DATA' | translate}}

\n
\n
\n

{{'DOCUMENTS.ID_CARD' | translate}}

\n
\n
\n

{{'DOCUMENTS.UKRAINE_PASSWORD' | translate}}

\n
\n
\n

{{'DOCUMENTS.NO_ALL_DATA' | translate}}

\n
\n
\n
\n \n \n
\n \n
\n \n \n
\n
\n

{{'DOCUMENTS.FRONT_SIDE' | translate}}

\n
\n
\n
\n \n \n
\n \n
\n \n \n
\n
\n

{{'DOCUMENTS.REVERSE_SIDE' | translate}}

\n
\n
\n\n
\n \n\n \n
\n \n
\n\n \n\n \n
\n
\n

{{'DOCUMENTS.ID_ADDITION' | translate}}

\n
\n
\n

{{'DOCUMENTS.NO_ALL_DATA' | translate}}

\n
\n
\n
\n \n \n
\n \n
\n\n \n\n \n
\n
\n

{{'DOCUMENTS.FIRST_PAGE' | translate}}

\n
\n
\n
\n \n \n
\n \n
\n\n \n\n \n
\n
\n

{{'DOCUMENTS.SECOND_PAGE' | translate}}

\n
\n
\n
\n \n \n
\n \n
\n\n \n\n \n
\n
\n

{{'DOCUMENTS.REGISTRATION' | translate}}

\n
\n
\n
\n
\n
\n {{'DOCUMENTS.READY_APPLICATION' | translate}}\n
\n \n
{{'DOCUMENTS.READY_APPLICATION' | translate}}
\n
\n \n \n \n \n
\n
\n
\n
\n

{{'DOCUMENTS.NO_I_NUMBER' | translate}}

\n
\n
\n
\n \n \n
\n \n
\n\n \n\n \n
\n
\n
\n
\n
\n
\n
{{'DOCUMENTS.READY_APPLICATION' | translate}}
\n \n \n \n \n
\n
\n
\n
\n
\n

\n {{'DOCUMENTS.SCAN' | translate}} {{'DOCUMENTS.FORM' | translate}} 0-83 {{'DOCUMENTS.FOR_DRIVING' | translate}}\n

\n
\n

\n \n {{'DOCUMENTS.NO_MEDICAL' | translate}}\n \n \n {{'DOCUMENTS.NO_ALL_DATA' | translate}}\n \n

\n
\n
\n
\n \n \n
\n \n
\n\n \n\n \n
\n
\n

{{'DOCUMENTS.FRONT_SIDE' | translate}}

\n
\n
\n
\n \n \n
\n \n
\n\n \n\n \n
\n
\n

{{'DOCUMENTS.REVERSE_SIDE' | translate}}

\n
\n
\n
\n
\n
{{'DOCUMENTS.READY_APPLICATION' | translate}}
\n \n \n \n \n
\n
\n
\n","import { NgModule } from '@angular/core';\nimport { Routes, RouterModule } from '@angular/router';\nimport { DrivingSchoolRegistrationComponent } from './driving-school-registration.component';\nimport { FinishRegistrationGuard } from '../../core/guards/finish-registration.guard';\nimport { StudentRegistrationGuard } from '../../core/guards/student-registration.guard';\n\nconst routes: Routes = [\n {\n path: '',\n component: DrivingSchoolRegistrationComponent,\n canActivate: [StudentRegistrationGuard],\n canDeactivate: [FinishRegistrationGuard]\n }, {\n path: 'edit',\n component: DrivingSchoolRegistrationComponent,\n canDeactivate: [FinishRegistrationGuard]\n }\n];\n\n@NgModule({\n imports: [RouterModule.forChild(routes)],\n exports: [RouterModule]\n})\nexport class DrivingSchoolRegistrationRoutingModule { }\n","import { Component, OnDestroy, OnInit } from '@angular/core';\nimport { MatDialog } from '@angular/material/dialog';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { StorageService } from '../../core/services/storage.service';\nimport { RegistrationPersonalInformationService } from './services/registration-personal-information.service';\nimport { PersonalInformation } from '../../shared/interfaces/personalInformation';\nimport { Subscription } from '~/node_modules/rxjs';\n\n@Component({\n selector: 'app-driving-school-registration',\n templateUrl: './driving-school-registration.component.html',\n styleUrls: ['./driving-school-registration.component.scss']\n})\nexport class DrivingSchoolRegistrationComponent implements OnInit, OnDestroy {\n step: number;\n dockStep: number;\n editStatusDocuments: boolean;\n privacy: boolean;\n subscriptions: Subscription = new Subscription();\n\n constructor(private router: Router,\n private matDialog: MatDialog,\n private storageService: StorageService,\n private regPersonalInformationService: RegistrationPersonalInformationService,\n private activeRouter: ActivatedRoute) {\n try {\n this.privacy = this.storageService.get('privacy') ? this.storageService.get('privacy').value : false;\n }\n catch (e) {\n this.privacy = false;\n }\n }\n\n ngOnInit(): void {\n this.editStatusDocuments = this.activeRouter.snapshot.routeConfig.path === 'edit';\n this.storageService.set('finish-registration', false);\n this.storageService.set('editStatusDocuments', this.editStatusDocuments);\n const menuError = {\n personalInformation: false,\n isPurchased: false,\n documents: false\n };\n this.subscriptions.add(this.regPersonalInformationService.getRegistrationInformation().subscribe((el: PersonalInformation) => {\n if (el !== null) {\n const docs = this.storageService.get('documnets');\n if (docs && docs.value)\n {\n this.storageService.set('registrationStep', 3);\n menuError.personalInformation = true;\n menuError.isPurchased = true;\n return;\n }\n if (this.storageService.get('registCategory')?.isHadLicense)\n {\n this.storageService.set('registrationStep', 2);\n return;\n }\n else if (!el.isPurchased) {\n try {\n if (this.storageService.get('personalInfo').value &&\n this.storageService.get('personalInfo').value.purchaseType !== null) {\n this.storageService.set('registrationStep', 3);\n menuError.personalInformation = true;\n menuError.isPurchased = true;\n } else {\n this.storageService.set('registrationStep', 2);\n menuError.personalInformation = true;\n menuError.isPurchased = false;\n }\n }\n catch (e) {\n this.storageService.set('registrationStep', 2);\n menuError.personalInformation = true;\n menuError.isPurchased = false;\n }\n } else {\n this.storageService.set('registrationStep', 3);\n menuError.personalInformation = true;\n menuError.isPurchased = true;\n }\n } else {\n this.storageService.set('registrationStep', 1);\n menuError.personalInformation = false;\n menuError.isPurchased = false;\n }\n if (el) {\n if (el.courseRequestRejection) {\n menuError.isPurchased = true;\n if (el.courseRequestRejection.isPersonalInfoInvalid) {\n menuError.personalInformation = false;\n this.storageService.set('registrationStep', 1);\n } else {\n menuError.personalInformation = true;\n this.storageService.set('registrationStep', 3);\n }\n menuError.documents = !(el.courseRequestRejection.isCategoryBDrivingLicenseInvalid || el.courseRequestRejection.isIdInvalid ||\n el.courseRequestRejection.isIndividualTaxNumberInvalid || el.courseRequestRejection.isMedicalReferenceInvalid);\n }\n }\n this.storageService.set('correctInformation', menuError);\n }, () => {\n this.storageService.set('registrationStep', 1);\n }, () => {\n },\n ));\n }\n\n ngOnDestroy(): void {\n this.subscriptions.unsubscribe();\n }\n\n confirmPrivacy(event): void {\n this.privacy = event;\n }\n\n registrationStep(): number {\n try {\n const temp = this.storageService.get('registrationStep').value;\n const docs = this.storageService.get('documents');\n if (docs && docs.value)\n {\n return 3;\n }\n if (temp === 0) {\n return 1;\n }\n else {\n return temp;\n }\n }\n catch (e) {\n console.log(e);\n return 1;\n }\n }\n\n exit(): void {\n this.router.navigate([`home/dashboard`]).then(() => {\n this.storageService.set('personal-information', {});\n });\n }\n}\n","
0\">\n \n \n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n
\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { DrivingSchoolRegistrationRoutingModule } from './driving-school-registration-routing.module';\nimport { MenuRegistrationComponent } from './menu-registration/menu-registration.component';\nimport { PersonalInformationComponent } from './personal-information/personal-information.component';\nimport { MatTabsModule } from '@angular/material/tabs';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { PaymentComponent } from './payment/payment.component';\nimport { DocumentsComponent } from './documents/documents.component';\nimport { NgxMaskModule } from 'ngx-mask';\nimport { CalendarModule } from '@syncfusion/ej2-angular-calendars';\nimport { SharedModule } from '../../shared/shared.module';\nimport { MAT_DATE_LOCALE } from '@angular/material/core';\n\n\n\n@NgModule({\n declarations: [ MenuRegistrationComponent, PersonalInformationComponent, PaymentComponent, DocumentsComponent],\n exports: [\n MenuRegistrationComponent,\n PersonalInformationComponent,\n PaymentComponent,\n DocumentsComponent\n ],\n imports: [\n CommonModule,\n DrivingSchoolRegistrationRoutingModule,\n MatTabsModule,\n ReactiveFormsModule,\n NgxMaskModule,\n CalendarModule,\n FormsModule,\n SharedModule\n ],\n providers: [\n { provide: MAT_DATE_LOCALE, useValue: 'fr-FR' }\n ]\n})\nexport class DrivingSchoolRegistrationModule { }\n","import { Component, Input, OnInit } from '@angular/core';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { StorageService } from '../../../core/services/storage.service';\n\n@Component({\n selector: 'app-menu-registration',\n templateUrl: './menu-registration.component.html',\n styleUrls: ['./menu-registration.component.scss']\n})\nexport class MenuRegistrationComponent implements OnInit {\n @Input() editStatusDocuments: boolean;\n statusMenu: Array;\n registrationMenu: Array<{ name: string }>;\n categoryEnum: number;\n purchaseType: number;\n personalInfo: boolean;\n\n constructor(private activatedRoute: ActivatedRoute,\n private router: Router,\n private storageService: StorageService) {\n this.registrationMenu = [\n {\n name: 'DRIVING_SCHOOL_REGISTRATION.MENU.PERSONAL_INFORMATION'\n },\n {\n name: 'DRIVING_SCHOOL_REGISTRATION.MENU.PAYMENT'\n },\n {\n name: 'DRIVING_SCHOOL_REGISTRATION.MENU.UPLOAD'\n }\n ];\n }\n\n ngOnInit(): void {\n this.categoryEnum = this.storageService.get('registCategory') ? this.storageService.get('registCategory').value.catEnum : -1;\n this.purchaseType = this.storageService.get('personalInfo') ?\n (this.storageService.get('personalInfo').value !== null ? this.storageService.get('personalInfo').value.purchaseType : null) : -1;\n this.personalInfo = this.storageService.get('personalInfo') ?\n (this.storageService.get('personalInfo').value !== null ? this.storageService.get('personalInfo').value.isPurchased : false) : false;\n }\n\n\n getValue(i): boolean {\n\n const menuValue = this.storageService.get('correctInformation') ?\n this.storageService.get('correctInformation').value : '';\n this.statusMenu = Object.values(menuValue);\n return this.statusMenu[i];\n }\n\n registrationStep(): number {\n const temp = this.storageService.get('registrationStep').value;\n if (this.storageService.get('documents')) {\n if (this.storageService.get('documents').value) {\n return 3;\n }\n }\n return temp;\n }\n}\n","
\n \n
\n
\n

{{'DRIVING_SCHOOL_REGISTRATION.MENU.TITLE' | translate}}

\n
\n
\n i + 1 )\"\n src=\"../../../assets/icons/ok-circle-green.svg\">\n \n

{{i + 1}}

\n

{{ item.name| translate}}

\n
\n
\n
\n
\n

Категорія B

\n

\n \n Повноцінне навчання в онлайн автошколі\n \n \n Лише лекційний курс\n \n \n Курс лекцій та практики\n \n

\n
\n
\n
\n","import { AfterViewInit, Component, isDevMode, OnInit } from '@angular/core';\nimport { StorageService } from '../../../core/services/storage.service';\nimport { RegistrationPersonalInformationService } from '../services/registration-personal-information.service';\nimport { NgxSpinnerService } from '~/node_modules/ngx-spinner';\nimport { environment } from '~/src/environments/environment.prod';\nimport { Router } from '@angular/router';\nimport { Tariff } from '../../../shared/interfaces/licenseCategory';\nimport { LicenseCategoriesService } from '../../training-materials/services/license-categories.service';\n\n\n@Component({\n selector: 'app-payment',\n templateUrl: './payment.component.html',\n styleUrls: ['./payment.component.scss',\n '/src/app/modules/driving-school-registration/registration-content.scss']\n})\nexport class PaymentComponent implements OnInit, AfterViewInit {\n categoryId: string;\n orderId: string;\n isPurchased: boolean;\n isPartial = false;\n descriptions = [];\n\n // todo: move descriptions to backend side.\n partialDescriptions = [\n {tariffType:0, descriptions:[\"Доступ до 1-15 навчальних лекцій.\", \"Доступ до 15-30 навчальних лекцій та 2 практичних уроків з водієм. Можливість скласти державний іспит не раніше ніж через 8 тижнів після внесення другого платежу\", \"Доступ до 30 лекцій та ще 8 практичних занять з водієм, а також фінальний іспит.\"]},\n {tariffType:1, descriptions:[\"Доступ до 1-15 навчальних лекцій.\", \"Доступ до 15-30 навчальних лекцій.\"]},\n {tariffType:2, descriptions:[\"Доступ до 5 практичних уроків з водієм.\",\"Доступ ще до 5 практичних занять з водієм.\"]}\n ]\n\n public tariff: Tariff;\n public user;\n public paymentData = '';\n public paymentSignature = '';\n private clientData;\n\n constructor(private storageService: StorageService,\n private regPersonalInformationService: RegistrationPersonalInformationService,\n private router: Router,\n private spinner: NgxSpinnerService,\n private paymentService: LicenseCategoriesService) {\n }\n ngOnInit(): void {\n const storageValue = this.storageService.get('registCategory').value;\n this.isPartial = storageValue.IsPartialPayment;\n\n if (this.isPartial){\n this.getTariffForPartialPayment(storageValue.tariffId);\n }\n\n this.clientData = {\n clientType: 2, // web client\n // Set Tariff plan id from localStorage\n tariffId: storageValue.tariffId,\n isPartialPayment: storageValue.IsPartialPayment,\n // Allow to receive payment data in base64 encode format [false: will return payment data in JSON format]\n isDataEncode: true\n };\n\n if (this.clientData.tariffId === '' || this.clientData.tariffId == null)\n {\n // @ts-ignore\n }\n\n\n this.spinner.show();\n\n // Check payment status\n this.checkPayment(this.clientData);\n }\n\n getTariffForPartialPayment(tariffId): void{\n this.paymentService.getLicense().subscribe(data => {\n console.log(data);\n this.tariff = data.find(category => category.name === 'B').\n tariffs.find(tariff => tariff.id === tariffId);\n this.descriptions = this.partialDescriptions.find(t =>t.tariffType === this.tariff.type).descriptions;\n }, error => {\n return null;\n }, () => {\n\n });\n return null;\n }\n\n getPaymentData(data, isForm = false): void {\n this.regPersonalInformationService.getPaymentData(data).subscribe((res) => {\n this.paymentSignature = res?.signature;\n this.paymentData = res?.paymentData;\n this.spinner.hide();\n if (isForm)\n {\n (document.getElementById('paymentData') as HTMLInputElement).value = this.paymentData;\n (document.getElementById('paymentSignature') as HTMLInputElement).value = this.paymentSignature;\n this.submit();\n }\n });\n }\n checkPayment(clientData, isForm = false): void {\n this.regPersonalInformationService.checkPayment().subscribe((res) => {\n if (res === true){\n this.next();\n }\n this.getPaymentData(clientData, isForm);\n }, ((error) => {\n this.getPaymentData(clientData, isForm);\n }));\n }\n\n preSubmit(): void {\n const radioButton = document.getElementById('radio-2') as HTMLInputElement;\n if (radioButton) {\n if (radioButton.checked) {\n this.clientData.isPartialPayment = false;\n this.checkPayment(this.clientData, true);\n } else {\n this.submit();\n }\n }\n else {\n this.submit();\n }\n }\n\n submit(): void {\n const form = document.getElementById('payForm') as HTMLFormElement;\n form.submit();\n }\n\n ngAfterViewInit(): void {\n }\n\n next(): void {\n this.storageService.set('registrationStep', 3);\n }\n\n ChangeColor(rad1: HTMLInputElement, block1: HTMLDivElement, block2: HTMLDivElement): void {\n if (rad1.checked)\n {\n block1.style.backgroundColor = '#23C1B8';\n block1.style.color = 'white';\n block2.style.backgroundColor = 'white';\n block2.style.color = 'black';\n }\n else {\n block1.style.backgroundColor = 'white';\n block1.style.color = 'black';\n }\n }\n}\n","
\n

{{'DRIVING_SCHOOL_REGISTRATION.PAYMENT.TITLE' | translate}}

\n
\n
\n

{{'DRIVING_SCHOOL_REGISTRATION.PAYMENT.DO_PAY' | translate}}

\n

{{'DRIVING_SCHOOL_REGISTRATION.PAYMENT.AFTER_PAY' | translate}}

\n

{{'DRIVING_SCHOOL_REGISTRATION.PAYMENT.OPEN_PAY' | translate}}

\n

{{'DRIVING_SCHOOL_REGISTRATION.PAYMENT.CONTRACT' | translate}}

\n
\n
\n
\n
\n
\n
\n \n \n
\n {{tariff.price}} грн\n
\n
\n\n
\n
\n
\n \n \n
\n {{tariff.partialPayments[0].sum}} грн\n
\n
\n
\n
\n\n
\n
\n
    \n
  • \n {{i + 1}} платіж = {{tariff.partialPayments[i].sum}} грн
    \n {{description}}\n
  • \n
\n
\n
\n\n
\n
\n \n \n \n
\n
\n\n
\n
\n\n","import { Component, Input, OnDestroy, OnInit } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { StorageService } from '../../../core/services/storage.service';\nimport { NgxSpinnerService } from 'ngx-spinner';\nimport { loadCldr } from '@syncfusion/ej2-base';\nimport { RegistrationPersonalInformationService } from '../services/registration-personal-information.service';\nimport { DateAdapter } from '@angular/material/core';\nimport { SuccessRegistrationComponent } from '../../../shared/dialogs/success-registration/success-registration.component';\nimport { MatDialog } from '@angular/material/dialog';\nimport { HttpErrorResponse } from '@angular/common/http';\nimport { throwError } from 'rxjs';\nimport { Subscription } from '~/node_modules/rxjs';\nimport { environment } from '../../../../environments/environment';\n\ndeclare var require: any;\n\nloadCldr(\n require('cldr-data/supplemental/numberingSystems.json'),\n require('cldr-data/main/de/ca-gregorian.json'),\n require('cldr-data/main/de/numbers.json'),\n require('cldr-data/main/de/timeZoneNames.json')\n);\n\n@Component({\n selector: 'app-personal-information',\n templateUrl: './personal-information.component.html',\n styleUrls: ['./personal-information.component.scss',\n '/src/app/modules/driving-school-registration/registration-content.scss']\n})\nexport class PersonalInformationComponent implements OnInit, OnDestroy {\n @Input() editStatusDocuments: boolean;\n step = 1;\n phoneNumber: string;\n personalInfoForm: FormGroup;\n verificationCode: FormGroup;\n timerTimeMinutes: number;\n timerTimeSeconds: number;\n error: boolean;\n howOld: number;\n codeCount = 0;\n codeActive: boolean;\n maxDate: Date;\n verCodeError: boolean;\n phoneStep: boolean;\n regStep: number;\n errorLanguage: Array;\n timer: any;\n phoneError: boolean;\n errorPhone: boolean;\n phoneAlreadyIs: boolean;\n todayDate = new Date();\n phoneCheck: number;\n minDate = new Date(this.todayDate.getFullYear() - 100, this.todayDate.getMonth(), this.todayDate.getDate());\n pattern = /[а-щА-ЩЬьЮюЯяЇїІіЄєҐґ0-9.!@?#\"$%&:;() *+,/;-=^_{|}<> ,.\\'-]/;\n subscriptions: Subscription = new Subscription();\n\n constructor(private fb: FormBuilder,\n private router: Router,\n private storageService: StorageService,\n private spinner: NgxSpinnerService,\n private dateAdapter: DateAdapter,\n private regPersonalInformationService: RegistrationPersonalInformationService,\n private activeRouter: ActivatedRoute,\n private matDialog: MatDialog) {\n this.dateAdapter.setLocale('uk');\n this.maxDate = new Date();\n this.errorLanguage = [true, true, true];\n\n }\n\n async ngOnInit(): Promise {\n if (this.storageService.get('codeCount')) {\n this.codeCount = this.storageService.get('codeCount').value;\n\n } else {\n this.storageService.set('codeCount', 0);\n }\n this.regStep = this.storageService.get('personal-informationStep') ?\n this.storageService.get('personal-informationStep').value : 0;\n this.storageService.set('registrationStep', 1);\n this.spinner.show();\n this.personalInfoForm = await this.fb.group({\n firstName: ['', [Validators.required,\n Validators.pattern('^[\\\\s]*[а-щА-ЩЬьЮюЯяЇїІіЄєҐґ ]((?:[-\\\\s])?(?!.*[-]{2})?[а-щА-ЩЬьЮюЯяЇїІіЄєҐґ\\'\\`]+)*[\\\\s]*$')]],\n lastName: ['', [Validators.required,\n Validators.pattern('^[\\\\s]*[а-щА-ЩЬьЮюЯяЇїІіЄєҐґ ]((?:[-\\\\s])?(?!.*[-]{2})?[а-щА-ЩЬьЮюЯяЇїІіЄєҐґ\\'\\`]+)*[\\\\s]*$')]],\n middleName: ['', [Validators.required,\n Validators.pattern('^[\\\\s]*[а-щА-ЩЬьЮюЯяЇїІіЄєҐґ ]((?:[-\\\\s])?(?!.*[-]{2})?[а-щА-ЩЬьЮюЯяЇїІіЄєҐґ\\'\\`]+)*[\\\\s]*$')]],\n phoneNumber: ['', [Validators.required, ,\n Validators.pattern('^[\\\\s]*(\\\\+38)?(\\\\d{3})\\\\-?(\\\\d{3})\\\\-?(\\\\d{2})\\\\-?(\\\\d{2})')]],\n verificationCode: this.fb.group({\n phoneCodesOne: ['', [Validators.required]],\n phoneCodesTwo: ['', [Validators.required]],\n phoneCodesThree: ['', [Validators.required]],\n phoneCodesFour: ['', [Validators.required]],\n }),\n dateOfBirth: ['', [Validators.required]],\n });\n\n const persInfo = await this.storageService.get('personal-information') ?\n await this.storageService.get('personal-information').value : null;\n if (persInfo !== null && persInfo !== undefined) {\n this.personalInfoForm.patchValue(persInfo);\n if (this.personalInfoForm.controls.dateOfBirth.valid) {\n const now = new Date();\n const today = new Date(now.getFullYear(), now.getMonth(), now.getDate());\n const dayOfBirth = new Date(this.personalInfoForm.getRawValue().dateOfBirth);\n const dayOfBirthNow = new Date(today.getFullYear(), dayOfBirth.getMonth(), dayOfBirth.getDate());\n this.howOld = Math.abs(today.getFullYear() - dayOfBirth.getFullYear());\n if (today < dayOfBirthNow) {\n this.howOld--;\n }\n }\n }\n this.spinner.hide();\n }\n\n ngOnDestroy(): void {\n this.subscriptions.unsubscribe();\n }\n\n nextStep(): void {\n this.error = false;\n this.step++;\n if (this.regStep < this.step) {\n this.regStep = this.step;\n this.storageService.set('personal-informationStep', this.regStep);\n }\n this.storageService.set('personal-information', this.personalInfoForm.value);\n }\n\n verificationPhone(): void {\n const phoneConfirm = {\n phoneNumber: this.personalInfoForm.value.phoneNumber\n };\n this.subscriptions.add(this.regPersonalInformationService.phoneConfirmation(phoneConfirm).subscribe(() => {\n }));\n }\n\n checkForm(item?): void {\n if (item === 'checkNumber') {\n this.spinner.show();\n this.phoneCheck++;\n const phoneConfirm = {\n phoneNumber: this.personalInfoForm.value.phoneNumber\n };\n this.subscriptions.add(this.regPersonalInformationService.phoneConfirmation(phoneConfirm).subscribe(() => {\n }, (err: HttpErrorResponse) => {\n this.errorPhone = !!(err.error.errorCodes.includes(400562));\n this.error = true;\n this.phoneError = !!(err.error.errorCodes.includes(400566));\n this.phoneAlreadyIs = !!(err.error.errorCodes.includes(400539));\n if (this.phoneError) {\n this.nextStep();\n }\n return throwError(err.message);\n }, () => {\n this.spinner.hide();\n this.nextStep();\n this.setTimer();\n this.errorPhone = false;\n this.phoneAlreadyIs = false;\n }));\n } else if (item === 'personal-information') {\n if (this.checkName() || this.personalInfoForm.controls.firstName.invalid || this.personalInfoForm.controls.middleName.invalid ||\n this.personalInfoForm.controls.lastName.invalid) {\n this.error = true;\n } else {\n this.error = false;\n this.nextStep();\n }\n } else {\n if (this.checkName() ||\n ((this.howOld < 18 || this.personalInfoForm.controls.dateOfBirth.invalid) && this.step === 2) ||\n (this.personalInfoForm.controls.phoneNumber.invalid && this.step === 3)) {\n this.error = true;\n } else {\n this.nextStep();\n }\n\n }\n if (this.step === 4) {\n this.setTimer();\n this.error = false;\n this.phoneStep = true;\n }\n\n if (this.step === 5) {\n this.goToPayment();\n }\n }\n\n goToPayment(): void {\n if (this.personalInfoForm.valid) {\n const varificationCodeArray = [];\n varificationCodeArray.push(this.personalInfoForm.value.verificationCode.phoneCodesOne);\n varificationCodeArray.push(this.personalInfoForm.value.verificationCode.phoneCodesTwo);\n varificationCodeArray.push(this.personalInfoForm.value.verificationCode.phoneCodesThree);\n varificationCodeArray.push(this.personalInfoForm.value.verificationCode.phoneCodesFour);\n const reqParams = {...this.personalInfoForm.value};\n reqParams.verificationCode = varificationCodeArray.join('');\n this.spinner.show();\n this.subscriptions.add(this.regPersonalInformationService.addPersonalInformation(reqParams)\n .subscribe(\n () => {\n }, () => {\n this.step = 4;\n this.verCodeError = true;\n },\n () => {\n this.spinner.hide();\n this.storageService.set('registrationStep', 2);\n }));\n }\n if (this.verCodeError === true) {\n this.error = true;\n this.step = 4;\n }\n }\n\n change(): void {\n this.step = 4;\n this.phoneStep = true;\n this.storageService.set('personal-information', this.personalInfoForm.value);\n }\n\n getCodeBoxElement(index): any {\n return document.getElementById('codeBox' + index);\n }\n\n onKeyUpEvent(index, event): any {\n const eventCode = event.which || event.keyCode;\n if (this.getCodeBoxElement(index).value.length === 1) {\n if (index !== 4) {\n this.getCodeBoxElement(index + 1).focus();\n } else {\n this.getCodeBoxElement(index).blur();\n }\n } else if (this.getCodeBoxElement(index).value.length > 1) {\n this.getCodeBoxElement(index).value %= 10;\n }\n if ((eventCode === 4 || eventCode === 37) && index !== 1) {\n this.getCodeBoxElement(index - 1).focus();\n }\n }\n\n onKeyDown(index, event): void {\n const eventCode = event.which || event.keyCode;\n if (eventCode === 8 && this.getCodeBoxElement(index).value.length === 0) {\n this.getCodeBoxElement(index - 1).value = null;\n this.getCodeBoxElement(index - 1).focus();\n }\n }\n\n onFocusEvent(index): any {\n for (let item = 1; item < index; item++) {\n const currentElement = this.getCodeBoxElement(item);\n if (!currentElement.value) {\n currentElement.focus();\n break;\n }\n }\n }\n\n checkDate(): boolean {\n if (this.step === 2) {\n const now = new Date();\n const today = new Date(now.getFullYear(), now.getMonth(), now.getDate());\n const dayOfBirth = new Date(this.personalInfoForm.getRawValue().dateOfBirth);\n const dayOfBirthNow = new Date(today.getFullYear(), dayOfBirth.getMonth(), dayOfBirth.getDate());\n this.howOld = Math.abs(today.getFullYear() - dayOfBirth.getFullYear());\n if (today < dayOfBirthNow) {\n this.howOld--;\n }\n return ((this.howOld < 18 || this.personalInfoForm.controls.dateOfBirth.invalid) &&\n this.personalInfoForm.controls.dateOfBirth.touched);\n }\n }\n\n lengthCode(index, event): void {\n if (this.getCodeBoxElement(index).value.length > 1) {\n this.getCodeBoxElement(index).value = event.data;\n }\n }\n\n checkName(): boolean {\n if (this.personalInfoForm.controls.firstName.valid &&\n this.personalInfoForm.controls.lastName.valid &&\n this.personalInfoForm.controls.middleName.valid &&\n this.step === 1) {\n this.error = false;\n }\n return (this.personalInfoForm.controls.firstName.invalid &&\n this.personalInfoForm.controls.firstName.touched) ||\n (this.personalInfoForm.controls.lastName.invalid &&\n this.personalInfoForm.controls.lastName.touched) ||\n (this.personalInfoForm.controls.middleName.invalid &&\n this.personalInfoForm.controls.middleName.touched);\n }\n\n checkNameTouch(): boolean {\n return (!this.personalInfoForm.controls.firstName.touched ||\n !this.personalInfoForm.controls.lastName.touched ||\n !this.personalInfoForm.controls.middleName.touched);\n }\n\n setTimer(value?): void {\n this.codeCount = this.storageService.get('codeCount').value + 1;\n this.storageService.set('codeCount', this.codeCount);\n this.timerTimeMinutes = 1;\n this.timerTimeSeconds = 0;\n this.codeActive = false;\n if (this.codeCount < 4) {\n if (value === 'retry') {\n this.verificationPhone();\n }\n this.timer = setInterval(() => {\n if (this.timerTimeMinutes >= 0) {\n this.timerTimeSeconds--;\n if (this.timerTimeSeconds === -1) {\n this.timerTimeSeconds = 59;\n this.timerTimeMinutes--;\n }\n }\n if (this.timerTimeMinutes === -1) {\n clearInterval(this.timer);\n this.timerTimeMinutes = 0;\n this.timerTimeSeconds = 0;\n this.codeActive = true;\n }\n }, 1000);\n } else {\n this.codeActive = true;\n }\n }\n\n clearInterval(): void {\n this.step = 3;\n this.phoneCheck = 0;\n clearInterval(this.timer);\n }\n\n checkLanguage(key, value: string): void {\n const err = value.split('').map(letter => {\n return this.pattern.test(letter);\n });\n this.errorLanguage[key] = !err.includes(false);\n }\n\n editData(): void {\n const data = {\n firstName: this.personalInfoForm.value.firstName,\n lastName: this.personalInfoForm.value.lastName,\n middleName: this.personalInfoForm.value.middleName,\n dateOfBirth: this.personalInfoForm.value.dateOfBirth\n };\n this.subscriptions.add(this.regPersonalInformationService.editData(data).subscribe(() => {\n const menuError = {\n personalInformation: true,\n isPurchased: this.storageService.get('correctInformation').value.isPurchased,\n documents: this.storageService.get('correctInformation').value.documents\n };\n if (!menuError.documents) {\n this.storageService.set('registrationStep', 3);\n this.storageService.set('correctInformation', menuError);\n } else {\n const dialogRef = this.matDialog.open(SuccessRegistrationComponent);\n dialogRef.afterClosed().subscribe(result => {\n if (result) {\n this.matDialog.closeAll();\n this.storageService.set('finish-registration', true);\n this.router.navigate([`home/dashboard`]).then(() => {\n this.storageService.set('personal-information', {});\n });\n } else {\n this.matDialog.closeAll();\n }\n return result;\n });\n }\n }));\n }\n\n deleteGap(key, value): void {\n const src = value.replace(/^[\\s\\uFEFF\\xA0]+|[\\s\\uFEFF\\xA0]+$/g, '');\n switch (key) {\n case 0:\n this.personalInfoForm.patchValue({ firstName: src });\n break;\n case 1:\n this.personalInfoForm.patchValue({ lastName: src });\n break;\n case 2:\n this.personalInfoForm.patchValue({ middleName: src });\n break;\n }\n }\n}\n","
\n

{{'DRIVING_SCHOOL_REGISTRATION.PERSONAL_INFORMATION.TITLE' | translate}}

\n
\n\n \n\n \n\n \n
\n
\n
\n
\n

\n {{'DRIVING_SCHOOL_REGISTRATION.PERSONAL_INFORMATION.SUBTITLE' | translate}}\n

\n
\n

\n {{'DRIVING_SCHOOL_REGISTRATION.PERSONAL_INFORMATION.ERROR' | translate}}\n

\n

\n {{'DRIVING_SCHOOL_REGISTRATION.PERSONAL_INFORMATION.LANGUAGE_ERROR' | translate}}\n

\n
\n \n
\n
\n \n
\n
\n \n
\n
\n
\n
\n \n
\n
\n
\n
\n

{{'DRIVING_SCHOOL_REGISTRATION.PERSONAL_INFORMATION.DAY_DATA' | translate}}

\n
\n

\n {{'DRIVING_SCHOOL_REGISTRATION.PERSONAL_INFORMATION.ERROR' | translate}}\n

\n

\n {{'DRIVING_SCHOOL_REGISTRATION.PERSONAL_INFORMATION.DAY_DATA_ERROR' | translate}}\n

\n
\n \n\n \n\n \n \n \n \n
\n
\n
\n
\n \n
\n
\n
\n
\n

\n {{'DRIVING_SCHOOL_REGISTRATION.PERSONAL_INFORMATION.PHONE_VERIFICATION' | translate}}\n

\n
\n \n

\n {{'DRIVING_SCHOOL_REGISTRATION.PERSONAL_INFORMATION.PHONE_ERROR' | translate}}\n

\n \n

\n {{'DRIVING_SCHOOL_REGISTRATION.PERSONAL_INFORMATION.PHONE_EXIST_ERROR' | translate}}\n

\n \n

\n {{'DRIVING_SCHOOL_REGISTRATION.PERSONAL_INFORMATION.ERROR' | translate}}\n

\n
\n
\n
\n
\n \n
\n
\n
\n\n
\n \n
\n
\n
\n
\n

{{'DRIVING_SCHOOL_REGISTRATION.PERSONAL_INFORMATION.VERIFICATION_CODE' | translate}}

\n

+38{{this.personalInfoForm.getRawValue().phoneNumber|mask:\"0000000000\"}}

\n

\n {{'DRIVING_SCHOOL_REGISTRATION.PERSONAL_INFORMATION.ERROR_CODE' | translate}}\n

\n
\n
\n\n 0?'#23C1B8':''}\"\n />\n 0?'#23C1B8':''}\"\n />\n 0?'#23C1B8':''}\"\n />\n 0?'#23C1B8':''}\"\n />\n\n
\n
\n
\n
0 || timerTimeMinutes === 1\">\n \n \n 0{{timerTimeMinutes}} : 0{{timerTimeSeconds}} \n
\n
\n
\n
\n

{{'DRIVING_SCHOOL_REGISTRATION.PERSONAL_INFORMATION.RETRY_VERIFICATION_CODE' | translate}}

\n
\n \n

{{'DRIVING_SCHOOL_REGISTRATION.PERSONAL_INFORMATION.RETRY_VERIFICATION_CODE' | translate}}

\n
\n
\n \n

3\">{{'DRIVING_SCHOOL_REGISTRATION.PERSONAL_INFORMATION.RETRY_VERIFICATION_CODE_ERROR' | translate}}

\n
\n
\n
\n \n \n
\n
\n \n\n","import { Injectable } from '@angular/core';\nimport { Config } from '../../../shared/property/constant';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { Observable } from 'rxjs';\nimport { PersonalInformation } from '../../../shared/interfaces/personalInformation';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class RegistrationPersonalInformationService {\n private url = Config.apiUrl();\n private apiV2Url = Config.apiV2Url();\n\n constructor(private http: HttpClient) {\n }\n\n addPersonalInformation(data): Observable {\n return this.http.post(`${this.url}studentpersonaldetails`, data);\n }\n\n addDocument(data): Observable {\n return this.http.post(`${this.url}studentpersonaldetails/documents`, data);\n }\n editDocuments(data): Observable {\n return this.http.put(`${this.url}studentpersonaldetails/rejected/documents`, data);\n }\n updateDocuments(data): Observable {\n return this.http.put(`${this.url}studentpersonaldetails/documents`, data);\n }\n phoneConfirmation(data): Observable {\n return this.http.post(`${this.url}accountsettings/phone/verification/code`, data);\n }\n getRegistrationInformation(): Observable {\n return this.http.get(`${this.url}studentpersonaldetails`);\n }\n deleteDock(path): Observable {\n const options = {\n headers: new HttpHeaders({\n 'Content-Type': 'application/json,application/x-www-form-urlencoded,multipart/form-data,text/plain',\n 'Cache-Control': 'no-cache, no-store, must-revalidate, post-check=0, pre-check=0',\n 'Pragma': 'no-cache',\n 'Expires': '0',\n 'Access-Control-Allow-Origin': '*',\n 'Accept': '*/*',\n 'Accept-Language': 'en-AU,en-US;q=0.9,en;q=0.8,ru;q=0.7,uk;q=0.6',\n 'Accept-Encoding': 'gzip, deflate, br',\n 'Sec-Fetch-Site': 'cross-site'\n }),\n body: path,\n };\n return this.http.delete(`${this.url}studentpersonaldetails/documents`, options);\n }\n editData(data): Observable{\n return this.http.put(`${this.url}studentpersonaldetails/rejected`, data);\n }\n getLiqPayPrice(): Observable{\n return this.http.get(`${this.url}licensecategories`);\n }\n checkPayment(): Observable {\n return this.http.get(`${this.apiV2Url}payments/checkpayments`);\n }\n getPaymentDataSimplified(data): Observable{\n return this.http.post(`${this.apiV2Url}payments/getPaymentDataSimplified`, data);\n }\n getPaymentData(data): Observable{\n return this.http.post(`${this.apiV2Url}payments/getpaymentdata`, data);\n }\n makePayment(data): Observable{\n return this.http.post(`${this.apiV2Url}payments/getpaymentdata`, data);\n }\n getIntrodactionVideo(): Observable{\n return this.http.get(`${this.url}lookup/static-media`);\n }\n createSignature(data): Observable{\n return this.http.get(`${this.url}lookup/liqPay/signature?data=${data}`);\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Config } from '../../../shared/property/constant';\nimport { HttpClient } from '@angular/common/http';\nimport { Observable } from 'rxjs';\nimport { TrainingMaterialComponents } from '~/src/app/shared/interfaces/training-material-components';\nimport { SearchCategories } from '~/src/app/shared/modules/searchCategories';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class SearchService {\n private url = Config.apiUrl();\n\n constructor(private http: HttpClient) {\n }\n\n getSearch(searchText): Observable {\n return this.http.get(this.url + `search?search=${searchText}`);\n }\n\n searchByTrafficLowsId(chapterId, searchText): Observable {\n return this.http.get(this.url + `search/trafficrules/chapterid/${chapterId}?search=${searchText}`);\n }\n searchByRoadMarkingsId(categoryId, searchText): Observable {\n return this.http.get(this.url + `search/roadmarkings/categoryid/${categoryId}?search=${searchText}`);\n }\n\n searchBySignsId(categoryId, searchText): Observable {\n return this.http.get(this.url + `search/signs/categoryid/${categoryId}?search=${searchText}`);\n }\n\n searchByPenalties(searchText): Observable {\n return this.http.get(this.url + `search/penalties?search=${searchText}`);\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Config } from '../../../shared/property/constant';\nimport { HttpClient } from '@angular/common/http';\nimport { Observable } from 'rxjs';\nimport { Cities } from '../../../shared/interfaces/cities';\nimport { Instructor } from '~/src/app/shared/interfaces/instructor';\nimport { TripBookingProgress } from '~/src/app/shared/interfaces/tripBookingProgress';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class InstructorsService {\n private url = Config.apiUrl();\n\n constructor(private http: HttpClient) {\n }\n\n getCities(): Observable {\n return this.http.get(this.url + 'locations/cities');\n }\n\n getAllInstructors(): Observable {\n return this.http.get(this.url + 'instructors');\n }\n\n getInstructors(districtIds, lessonDates, lessonHours, transmissionType): Observable {\n let instructors = this.url + `instructors`;\n instructors += this.instructorUrl(districtIds, lessonDates, lessonHours, transmissionType);\n return this.http.get(instructors);\n }\n getAllInstructorSchedules(id): Observable {\n return this.http.get(this.url + 'instructors/' + id + '/schedules');\n }\n getInstructorSchedules(id, districtIds, lessonDates, lessonHours, transmissionType): Observable {\n let instructorSchedule = this.url + 'instructors/' + id + '/schedules';\n instructorSchedule += this.instructorUrl(districtIds, lessonDates, lessonHours, transmissionType);\n return this.http.get(instructorSchedule);\n }\n\n instructorUrl(districtIds, lessonDates, lessonHours, transmissionType): string {\n let url = '';\n if (transmissionType >= 0) {\n url += `?transmissionType=${transmissionType}`;\n }\n if (districtIds.length > 0) {\n districtIds.map(district => {\n url += transmissionType >= 0 || (transmissionType === -1 && districtIds[0] !== district) ? '&' : '?';\n url += `districtIds=${district}`;\n });\n }\n if (lessonDates.length > 0) {\n lessonDates.map(date => {\n url += transmissionType >= 0 || districtIds.length > 0 ||\n ((transmissionType < 0 && districtIds.length === 0) && lessonDates[0] !== date) ? '&' : '?';\n url += `lessonDates=${date}`;\n });\n }\n if (lessonHours.length > 0) {\n lessonHours.map(hours => {\n url += transmissionType >= 0 || districtIds.length > 0 || lessonDates.length > 0 ||\n ((transmissionType < 0 && districtIds.length === 0 && lessonDates.length === 0) && lessonHours[0] !== hours) ? '&' : '?';\n url += `lessonHours=${hours}`;\n });\n }\n return url;\n }\n\n postTripBooking(reqData): Observable {\n return this.http.post(this.url + 'tripbookings', reqData);\n }\n\n getTripBookings(): Observable {\n return this.http.get(this.url + 'tripbookings');\n }\n\n rejectLesson(id): Observable {\n return this.http.put(this.url + `tripbookings/${id}/cancel`, id);\n }\n getTripBookingsProgress(): Observable {\n return this.http.get(this.url + 'tripbookings/progress');\n }\n\n}\n","import { Injectable } from '@angular/core';\nimport { Config } from '../../../../shared/property/constant';\nimport { HttpClient } from '@angular/common/http';\nimport { Observable } from 'rxjs';\nimport { Cities } from '../../../../shared/interfaces/cities';\nimport { UserInfirmation } from '../../../../shared/interfaces/user-infirmation';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class CityService {\n private url = Config.apiUrl();\n\n constructor(private http: HttpClient) { }\n\n getCities(): Observable {\n return this.http.get(this.url + 'locations/cities');\n }\n\n postLocation(data): Observable {\n return this.http.post(this.url + 'locations', data);\n }\n}\n","import { Component, OnDestroy, OnInit } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { TrafficRulesService } from '../../../../training-materials/services/traffic-rules.service';\nimport { TestsOnThemesService } from '../../../services/tests-on-themes.service';\nimport { NgxSpinnerService } from 'ngx-spinner';\nimport { SelectedTest } from '../../../../../shared/interfaces/selected-test';\nimport { Router } from '@angular/router';\nimport { StorageService } from '../../../../../core/services/storage.service';\nimport { TrainingMaterialCategories } from '../../../../../shared/interfaces/training-material-categories';\nimport { Subscription } from '~/node_modules/rxjs';\n\n@Component({\n selector: 'app-selected-tests',\n templateUrl: './selected-tests.component.html',\n styleUrls: ['./selected-tests.component.scss']\n})\nexport class SelectedTestsComponent implements OnInit, OnDestroy {\n categories: Observable;\n activeCategory: TrainingMaterialCategories;\n favourites = 0;\n subscriptions: Subscription = new Subscription();\n\n constructor(private trafficRulesService: TrafficRulesService,\n private testsOnThemes: TestsOnThemesService,\n private spinner: NgxSpinnerService,\n private router: Router,\n private storageService: StorageService\n ) {\n }\n\n initTranslate(): void {\n this.storageService.get('lang');\n }\n\n ngOnInit(): void {\n this.spinner.show();\n this.getFavourites();\n }\n\n getFavourites(): void {\n this.categories = this.testsOnThemes.getFavouritesTest();\n this.subscriptions.add(this.categories.subscribe((res: SelectedTest[]) => {\n this.favourites = res.length;\n }, ()=>{\n\n }, ()=>{\n this.spinner.hide();\n }));\n }\n\n ngOnDestroy(): void {\n this.subscriptions.unsubscribe();\n }\n\n\n deleteFavouriteQuestion(question): void {\n this.spinner.show();\n this.subscriptions.add(this.testsOnThemes.deleteQuestionFromFavourite(question).subscribe(() => {\n this.getFavourites();\n }));\n }\n}\n","
0; else noSelect\">\n
\n

{{'TESTS.SELECTED' | translate}}

\n

{{'TESTS.START-TEST' | translate}}

\n
\n \n
\n\n
\n \n

{{'TESTS.NO_FAVOURITES_TITLE' | translate}}

\n

{{'TESTS.NO_FAVOURITES_SUBTITLE' | translate}}

\n
\n
\n","import { Component, OnDestroy, OnInit } from '@angular/core';\nimport { TestsOnThemesService } from '../../../services/tests-on-themes.service';\nimport { TestItem } from '../../../../../shared/modules/test-item';\nimport { NgxSpinnerService } from 'ngx-spinner';\nimport { Router } from '@angular/router';\nimport { Subscription } from '~/node_modules/rxjs';\n\n@Component({\n selector: 'app-selected-ticket',\n templateUrl: './selected-ticket.component.html',\n styleUrls: ['./selected-ticket.component.scss']\n})\nexport class SelectedTicketComponent implements OnInit, OnDestroy {\n\n\n categories: TestItem[];\n subscriptions: Subscription = new Subscription();\n\n\n constructor(private testsOnThemes: TestsOnThemesService,\n private spinner: NgxSpinnerService,\n private router: Router) {\n }\n\n ngOnInit(): void {\n this.spinner.show();\n this.subscriptions.add(this.testsOnThemes.getFavouritesTest().subscribe((resp: TestItem[]) => {\n this.categories = resp;\n }, ()=>{\n\n }, ()=>{\n this.spinner.hide();\n }));\n }\n\n ngOnDestroy(): void {\n this.subscriptions.unsubscribe();\n }\n\n\n goToPreviousUrl(): void {\n this.router.navigate(['home/tests/test/selected-category']);\n }\n}\n","\n","import { Component, OnInit } from '@angular/core';\nimport { ActivatedRoute, Router } from '@angular/router';\n\n@Component({\n selector: 'app-test',\n templateUrl: './test-content.component.html',\n styleUrls: ['./test-content.component.scss']\n})\nexport class TestContentComponent implements OnInit {\n\n menuContent = [\n {\n link: '/home/tests/test/tests-on-themes',\n menuSelected: 'tests-on-themes',\n color: '#FFD576',\n name: 'TESTS.TESTS-ON-THEMES',\n icon: '../../../assets/icons/tests-on-themes.svg'\n }, {\n link: '/home/tests/test/ticket-tests',\n menuSelected: 'ticket',\n color: '#C3E6FF',\n name: 'TESTS.TICKET-TESTS',\n icon: '../../../assets/icons/ticket-tests.svg'\n }, {\n link: '/home/tests/test/selected-category',\n menuSelected: 'select',\n color: '#AEECDD',\n name: 'TESTS.SELECTED',\n icon: '../../../assets/icons/selected.svg'\n }, {\n link: '/home/tests/random-questions',\n menuSelected: 'random',\n color: '#E0D9F2',\n name: 'TESTS.RANDOM',\n icon: '../../../assets/icons/random-question.svg'\n }\n ];\n constructor(private activatedRoute: ActivatedRoute,\n private router: Router) {\n }\n\n get menuSelected(): string {\n return this.router.url;\n }\n\n ngOnInit(): void {\n }\n\n navigate(link): void {\n this.router.navigate([link]);\n }\n}\n","
\n \n

{{'TESTS.TITLE' | translate}}

\n
\n
\n
\n \n
\n
\n
\n
\n
\n
\n

{{'TESTS.TITLE' | translate}}

\n
\n
\n
\n \n
\n
\n

{{'TESTS.FOOTER' | translate}}

\n
\n
\n
\n
\n","import { Component, OnDestroy, OnInit } from '@angular/core';\nimport { TestsOnThemesService } from '../../../services/tests-on-themes.service';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { StorageService } from '../../../../../core/services/storage.service';\nimport { ILicenseCategory } from '../../../../../shared/interfaces/licenseCategory';\nimport { NgxSpinnerService } from 'ngx-spinner';\nimport { TestItem } from '../../../../../shared/modules/test-item';\nimport { Subscription } from '~/node_modules/rxjs';\n\n@Component({\n selector: 'app-test',\n templateUrl: './test.component.html',\n styleUrls: ['./test.component.scss',\n '/src/app/test-themes.scss']\n})\nexport class TestComponent implements OnInit, OnDestroy {\n\n testsById: TestItem[] = [];\n licenseCategory: ILicenseCategory;\n subscriptions: Subscription = new Subscription();\n\n constructor(private testsOnThemesService: TestsOnThemesService,\n private activatedRoute: ActivatedRoute,\n private storageService: StorageService,\n private router: Router,\n private spinner: NgxSpinnerService) {\n }\n\n ngOnInit(): void {\n this.licenseCategory = this.storageService.get('license-category').value;\n this.getTestById();\n }\n\n ngOnDestroy(): void {\n this.subscriptions.unsubscribe();\n }\n\n getTestById(): void {\n this.spinner.show();\n this.subscriptions.add(this.testsOnThemesService.getTestsOnThemesById(this.licenseCategory.id,\n this.activatedRoute.snapshot.params.id).subscribe((test: TestItem[]) => {\n this.testsById = test;\n }, ()=>{\n\n }, ()=>{\n this.spinner.hide();\n }));\n }\n\n goToPreviousUrl(): void {\n this.router.navigate(['/home/tests/test/tests-on-themes']);\n }\n}\n","\n \n

{{'TESTS.BACK-TO-THEMES' | translate}}

\n
\n
\n \n \n
\n","import { Component, OnDestroy, OnInit } from '@angular/core';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { TestsOnThemesService } from '../../../services/tests-on-themes.service';\nimport { Observable } from 'rxjs';\nimport { TrafficRulesService } from '../../../../training-materials/services/traffic-rules.service';\nimport { StorageService } from '../../../../../core/services/storage.service';\nimport { ILicenseCategory } from '../../../../../shared/interfaces/licenseCategory';\nimport { NgxSpinnerService } from 'ngx-spinner';\nimport { Tests } from '../../../../../shared/interfaces/tests-on-themes';\nimport { Subscription } from '~/node_modules/rxjs';\n\n@Component({\n selector: 'app-tests-on-themes',\n templateUrl: './tests-on-themes.component.html',\n styleUrls: ['./tests-on-themes.component.scss']\n})\nexport class TestsOnThemesComponent implements OnInit, OnDestroy {\n\n categories: Observable;\n licenseCategory: ILicenseCategory;\n subscriptions: Subscription = new Subscription();\n\n constructor(private trafficRulesService: TrafficRulesService,\n private testsOnThemes: TestsOnThemesService,\n private activatedRoute: ActivatedRoute,\n private router: Router,\n private storageService: StorageService,\n private spinner: NgxSpinnerService) {\n }\n\n ngOnInit(): void {\n this.router.onSameUrlNavigation = 'reload';\n this.storageService.set('trialTest', false);\n this.spinner.show();\n this.licenseCategory = this.storageService.get('license-category').value;\n this.categories = this.testsOnThemes.getTestsOnThemes(this.licenseCategory.id);\n this.subscriptions.add(this.categories.subscribe(() => {\n }, ()=>{\n\n }, ()=>{\n this.spinner.hide();\n }));\n\n this.storageService.set('test-category', 'tests-on-themes');\n }\n\n ngOnDestroy(): void {\n this.subscriptions.unsubscribe();\n }\n\n}\n","
\n
\n

{{'TESTS.TESTS-ON-THEMES' | translate}}

\n
\n
\n
\n \n
\n
\n
\n
\n","import { Component, Input, OnChanges, OnInit } from '@angular/core';\nimport { TestItem } from '../../../../shared/modules/test-item';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { StorageService } from '../../../../core/services/storage.service';\nimport { TranslateService } from '@ngx-translate/core';\nimport { FinalTestService } from '@module/course/services/final-test.service';\n\n@Component({\n selector: 'app-ticket-content',\n templateUrl: './ticket-content.component.html',\n styleUrls: ['./ticket-content.component.scss']\n})\nexport class TicketContentComponent implements OnInit, OnChanges {\n\n @Input() testItems: TestItem[] = [];\n @Input() testKind: string;\n @Input() finalTestId: string;\n @Input() link: string;\n @Input() finalTest: boolean;\n @Input() TestFromLecture: string;\n @Input() nextLecture: any;\n @Input() testStatus: string;\n startTest = false;\n selectedTestIndex = 0;\n testInfo: object;\n isTestFinished = false;\n scrollElement = false;\n timerTimeMinutes = 20;\n timerTimeSeconds = 0;\n step = 0;\n session = {\n testType: 0,\n trafficRulesTestsTicketId: ''\n };\n falseAnswer = 0;\n sessionId: string;\n disableBut: boolean;\n\n constructor(private activatedRoute: ActivatedRoute,\n private storageService: StorageService,\n private translateService: TranslateService,\n private router: Router,\n private finalTestService: FinalTestService) {\n this.storageService.set('false-answer-count', 0);\n }\n\n get finalTestError(): boolean {\n this.falseAnswer = this.storageService.get('false-answer-count') ?\n this.storageService.get('false-answer-count').value : this.falseAnswer;\n if (this.falseAnswer === 3 && this.finalTest) {\n this.storageService.set('treeError', true);\n const correctAnswers = [];\n this.testItems.forEach((el: TestItem) => {\n if (el.isCorrectAnswer) {\n correctAnswers.push(el);\n }\n });\n this.testInfo = {\n correctAnswers,\n allTestsLength: this.testItems.length\n };\n this.isTestFinished = true;\n return true;\n } else {\n return false;\n }\n }\n\n ngOnChanges(changes): void {\n if (changes && changes.finalTestId && changes.finalTestId.currentValue) {\n this.startSession();\n }\n }\n\n ngOnInit(): void {\n\n this.storageService.set('treeError', false);\n this.storageService.set('wasteTime', false);\n this.storageService.set('finish-test', this.isTestFinished);\n }\n\n startFinishTest(): void {\n this.step = 1;\n if (this.finalTest) {\n setInterval(() => {\n this.storageService.set('wasteTime', false);\n if (this.timerTimeMinutes >= 0) {\n this.timerTimeSeconds--;\n if (this.timerTimeSeconds === -1) {\n this.timerTimeSeconds = 59;\n this.timerTimeMinutes--;\n }\n }\n if (this.timerTimeMinutes === -1) {\n this.storageService.set('wasteTime', true);\n this.timerTimeMinutes = 0;\n this.timerTimeSeconds = 0;\n const correctAnswers = [];\n this.testItems.forEach((el: TestItem) => {\n if (el.isCorrectAnswer) {\n correctAnswers.push(el);\n }\n });\n this.testInfo = {\n correctAnswers,\n allTestsLength: this.testItems.length\n };\n this.isTestFinished = true;\n this.storageService.set('finish-test', this.isTestFinished);\n }\n }, 1000);\n }\n }\n\n startSession(): void {\n if (this.finalTest && this.finalTestId && !this.session.trafficRulesTestsTicketId) {\n this.session.trafficRulesTestsTicketId = this.finalTestId;\n this.finalTestService.postFinal(this.session).subscribe((el) => {\n this.sessionId = el;\n });\n }\n }\n\n changeTestIndex(index): void {\n if (!this.disableBut) {\n this.selectedTestIndex = index;\n this.scrollToQuestion();\n\n }\n }\n\n checkIfTestPassed(): number {\n return this.testItems.findIndex((el: TestItem) => typeof el.isCorrectAnswer === 'undefined');\n }\n\n scrollToQuestion(): void {\n setTimeout(() => {\n const el = document.querySelector('.block');\n if (el) {\n el.scrollIntoView();\n }\n }, 0);\n }\n\n nextQuestion(): void {\n this.scrollElement = true;\n if (this.testItems.length - 1 !== this.selectedTestIndex) {\n this.selectedTestIndex++;\n } else {\n const correctAnswers = [];\n this.testItems.forEach((el: TestItem) => {\n if (el.isCorrectAnswer) {\n correctAnswers.push(el);\n }\n });\n this.testInfo = {\n correctAnswers,\n allTestsLength: this.testItems.length\n };\n this.isTestFinished = true;\n this.storageService.set('finish-test', this.isTestFinished);\n }\n this.scrollToQuestion();\n }\n\n previousQuestion(): void {\n if (!!this.selectedTestIndex) {\n this.selectedTestIndex--;\n }\n this.scrollToQuestion();\n }\n\n close(): void {\n this.storageService.set('finish-test', true);\n this.router.navigate(['/home/course/courses']);\n }\n\n disableButton(event): void {\n this.disableBut = event;\n }\n}\n","
\n
\n
\n \n
\n
\n \n 20:00\n
\n
\n

Підсумковий тест

\n
\n
\n \n

Для доступу до державного іспиту в сервісному центрі МВС вам необхідно пройти підсумковий тест у додатку

\n
\n
\n \n

20 хвилин та не більше двох помилок!

\n
\n
\n \n

У випадку не успішного результату у вас є можливість повторно пройти тестування

\n
\n \n
\n
\n
\n\n
\n
\n
\n
\n \n 0{{timerTimeMinutes}} : 0{{timerTimeSeconds}} \n
\n
\n
\n
\n
\n
\n

{{i + 1}}

\n
\n
\n
\n
\n
\n
\n

{{'TESTS.QUESTION-NUMBER' | translate}} {{selectedTestIndex + 1}}

\n
\n
\n \n \n
\n
\n
\n
\n \n \n
\n
\n
\n\n\n\n","import { Component, OnInit } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { TrafficRulesService } from '../../../training-materials/services/traffic-rules.service';\nimport { TestsOnThemesService } from '../../services/tests-on-themes.service';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { ILicenseCategory } from '../../../../shared/interfaces/licenseCategory';\nimport { StorageService } from '../../../../core/services/storage.service';\nimport { NgxSpinnerService } from 'ngx-spinner';\nimport { Tests } from '../../../../shared/interfaces/tests-on-themes';\n\n@Component({\n selector: 'app-ticket-tests',\n templateUrl: './ticket-tests.component.html',\n styleUrls: ['./ticket-tests.component.scss']\n})\nexport class TicketTestsComponent implements OnInit {\n\n categories: Observable;\n licenseCategory: ILicenseCategory;\n\n constructor(private trafficRulesService: TrafficRulesService,\n private testsOnThemes: TestsOnThemesService,\n private activatedRoute: ActivatedRoute,\n private router: Router,\n private storageService: StorageService,\n private spinner: NgxSpinnerService) {\n }\n\n async ngOnInit(): Promise {\n this.spinner.show();\n this.licenseCategory = await this.storageService.get('license-category').value;\n this.categories = await this.trafficRulesService.getTrafficRuleBTicketsyId(this.licenseCategory.id);\n this.storageService.set('test-category', 'ticket-tests');\n this.spinner.hide();\n }\n\n}\n","
\n

{{'TESTS.TICKET-TESTS' | translate}}

\n
\n
\n\n\n","import { Component, OnDestroy, OnInit } from '@angular/core';\nimport { TestItem } from '../../../../../shared/modules/test-item';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { MatDialog } from '@angular/material/dialog';\nimport { StorageService } from '../../../../../core/services/storage.service';\nimport { NgxSpinnerService } from 'ngx-spinner';\nimport { TrafficRulesService } from '../../../../training-materials/services/traffic-rules.service';\nimport { Subscription } from '~/node_modules/rxjs';\n\n@Component({\n selector: 'app-ticket',\n templateUrl: './ticket.component.html',\n styleUrls: ['./ticket.component.scss']\n})\nexport class TicketComponent implements OnInit, OnDestroy {\n\n testsById: TestItem[] = [];\n subscriptions: Subscription = new Subscription();\n\n constructor(private trafficRulesService: TrafficRulesService,\n private activatedRoute: ActivatedRoute,\n private router: Router,\n private matDialog: MatDialog,\n private storageService: StorageService,\n private spinner: NgxSpinnerService) {\n }\n\n ngOnInit(): void {\n this.getTestById();\n }\n\n ngOnDestroy(): void {\n this.subscriptions.unsubscribe();\n }\n\n getTestById(): void {\n this.spinner.show();\n this.subscriptions.add(this.trafficRulesService.geTicketsyId(this.activatedRoute.snapshot.params.id)\n .subscribe((test: TestItem[]) => {\n this.testsById = test;\n }, ()=>{\n\n }, ()=>{\n this.spinner.hide();\n }));\n }\n\n goToPreviousUrl(): void {\n this.router.navigate(['home/tests/test/ticket-tests']);\n }\n}\n","\n \n

{{'TESTS.BACK-TO-TICKETS' | translate}}

\n
\n
\n \n \n
\n","import { Component, OnDestroy, OnInit } from '@angular/core';\nimport { TestItem } from '../../../../shared/modules/test-item';\nimport { TestsOnThemesService } from '../../services/tests-on-themes.service';\nimport { NgxSpinnerService } from 'ngx-spinner';\nimport { StorageService } from '../../../../core/services/storage.service';\nimport { Router } from '@angular/router';\nimport { Subscription } from '~/node_modules/rxjs';\n\n@Component({\n selector: 'app-twenty-random-tickets',\n templateUrl: './twenty-random-tickets.component.html',\n styleUrls: ['./twenty-random-tickets.component.scss']\n})\nexport class TwentyRandomTicketsComponent implements OnInit, OnDestroy {\n\n questions: TestItem[] = [];\n subscriptions: Subscription = new Subscription();\n\n constructor(private testsOnThemes: TestsOnThemesService,\n private spinner: NgxSpinnerService,\n private storageService: StorageService,\n private router: Router) {\n }\n\n ngOnInit(): void {\n this.spinner.show();\n this.getRandomQuestions(this.storageService.get('license-category').value);\n }\n\n ngOnDestroy(): void {\n this.subscriptions.unsubscribe();\n }\n\n getRandomQuestions(licenseCategory): void {\n this.subscriptions.add(this.testsOnThemes.getRandomQuestions(licenseCategory.id).subscribe((resp: TestItem[]) => {\n this.questions = resp;\n }, ()=>{\n\n }, ()=>{\n this.spinner.hide();\n }));\n }\n\n goToPreviousUrl(): void {\n this.router.navigate(['/home/tests/test/tests-on-themes']);\n }\n}\n","
\n
\n \n

{{'TESTS.TESTS' | translate}}

\n
\n \n \n
\n","import { Injectable } from '@angular/core';\nimport { Config } from '../../../shared/property/constant';\nimport { HttpClient } from '@angular/common/http';\nimport { Observable } from 'rxjs';\nimport { TestItem } from '../../../shared/modules/test-item';\nimport { ILicenseCategory } from '../../../shared/interfaces/licenseCategory';\nimport { Tests } from '../../../shared/interfaces/tests-on-themes';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class TestsOnThemesService {\n private apiUrl = Config.apiUrl();\n\n constructor(private http: HttpClient) {\n }\n\n getTestsOnThemes(id: string): Observable {\n return this.http.get(`${this.apiUrl}trafficrulestestschapters/licensecategoryid/${id}`);\n }\n getLicenseCategory(): Observable{\n return this.http.get(`${this.apiUrl}licensecategories`);\n }\n getTestsOnThemesById(licenseCategoryid: string, id: string): Observable {\n return this.http.get(`${this.apiUrl}trafficrulestests/licensecategoryid/${licenseCategoryid}/chapterid/${id}`);\n }\n getCorrectAnswer(questionId: string): Observable{\n return this.http.get(`${this.apiUrl}trafficrulestests/${questionId}/rightanswer`);\n }\n\n // Favourites------------------------------\n\n getFavouritesTest(): Observable{\n return this.http.get(`${this.apiUrl}trafficrulestests/favorites`);\n }\n\n addQuestionToFavourite(question: TestItem): Observable{\n return this.http.post(`${this.apiUrl}trafficrulestests/${question.id}/favorites`, question);\n }\n\n deleteQuestionFromFavourite(question: TestItem): Observable{\n return this.http.delete(`${this.apiUrl}trafficrulestests/${question.id}/favorites`);\n }\n\n // SelectedQuestion\n\n getRandomQuestions(licenseCategoryId): Observable{\n return this.http.get(`${this.apiUrl}trafficrulestests/licensecategoryid/${licenseCategoryId}/random/twenty`);\n }\n\n}\n","import { NgModule } from '@angular/core';\nimport { Routes, RouterModule } from '@angular/router';\nimport { TestsOnThemesComponent } from './components/test-on-themes-content/tests-on-themes/tests-on-themes.component';\nimport { TicketTestsComponent } from './components/ticket-tests/ticket-tests.component';\nimport { TestContentComponent } from './components/test-content/test-content.component';\nimport { TestComponent } from './components/test-on-themes-content/test/test.component';\nimport { SelectedTestsComponent } from './components/selected/selected-tests/selected-tests.component';\nimport { TicketComponent } from './components/ticket-tests/ticket/ticket.component';\nimport { SelectedTicketComponent } from './components/selected/selected-ticket/selected-ticket.component';\nimport { TwentyRandomTicketsComponent } from './components/twenty-random-tickets/twenty-random-tickets.component';\nimport { TiketGuard } from '../../core/guards/tiket.guard';\n\n\nconst routes: Routes = [\n {\n path: 'test',\n component: TestContentComponent,\n children: [\n {\n path: 'tests-on-themes',\n component: TestsOnThemesComponent,\n },\n {\n path: 'ticket-tests',\n component: TicketTestsComponent,\n },\n {\n path: 'selected-category',\n component: SelectedTestsComponent,\n }\n ]\n },\n {\n path: 'test-on-theme/:id',\n component: TestComponent,\n canDeactivate: [TiketGuard],\n },\n {\n path: 'ticket-test/:id',\n component: TicketComponent,\n canDeactivate: [TiketGuard]\n },\n\n {\n path: 'random-questions',\n component: TwentyRandomTicketsComponent,\n canDeactivate: [TiketGuard]\n },\n {\n path: 'selected-test',\n component: SelectedTicketComponent,\n canDeactivate: [TiketGuard]\n },\n\n];\n\n@NgModule({\n imports: [RouterModule.forChild(routes)],\n exports: [RouterModule]\n})\nexport class TestsRoutingModule { }\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { TestsRoutingModule } from './tests-routing.module';\nimport { TestsOnThemesComponent } from './components/test-on-themes-content/tests-on-themes/tests-on-themes.component';\nimport { TranslateModule } from '@ngx-translate/core';\nimport { TicketTestsComponent } from './components/ticket-tests/ticket-tests.component';\nimport { TestContentComponent } from './components/test-content/test-content.component';\nimport { SelectedTestsComponent } from './components/selected/selected-tests/selected-tests.component';\nimport { TestComponent } from './components/test-on-themes-content/test/test.component';\nimport { SharedModule } from '../../shared/shared.module';\nimport { TicketComponent } from './components/ticket-tests/ticket/ticket.component';\nimport { TicketContentComponent } from './components/ticket-content/ticket-content.component';\nimport { SelectedTicketComponent } from './components/selected/selected-ticket/selected-ticket.component';\nimport { TwentyRandomTicketsComponent } from './components/twenty-random-tickets/twenty-random-tickets.component';\n\n\n\n@NgModule({\n declarations: [TestsOnThemesComponent,\n TestComponent, TicketTestsComponent,\n TestContentComponent,\n SelectedTestsComponent,\n TicketComponent,\n TicketContentComponent,\n SelectedTicketComponent,\n TwentyRandomTicketsComponent],\n exports: [\n TicketContentComponent\n ],\n imports: [\n CommonModule,\n TestsRoutingModule,\n TranslateModule,\n SharedModule\n ]\n})\nexport class TestsModule {\n}\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-penalties-menu',\n templateUrl: './penalties-menu.component.html',\n styleUrls: ['./penalties-menu.component.scss']\n})\nexport class PenaltiesMenuComponent implements OnInit {\n\n constructor() {\n }\n\n ngOnInit(): void {\n }\n\n}\n","
\n
\n
\n

{{'FINES_TABLE.MENU_TITLE' | translate}}

\n
\n
\n
\n
\n
\n \n {{'FINES_TABLE.MENU_ITEM_TEXT_PART1' | translate}}\n \n {{'FINES_TABLE.CODEX' | translate}} \n {{'FINES_TABLE.ABREVIATION' | translate}} \n
\n
\n

{{'FINES_TABLE.FOOTER_TEXT' | translate}}

\n
\n
\n
\n
\n
\n
\n","import { Component, Input, OnInit } from '@angular/core';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { RoadMarkingsService } from '../../../services/road-markings.service';\nimport { Observable } from '~/node_modules/rxjs';\nimport { TrainingMaterialCategories } from '~/src/app/shared/interfaces/training-material-categories';\n\n@Component({\n selector: 'app-road-marking-menu',\n templateUrl: './road-marking-menu.component.html',\n styleUrls: ['./road-marking-menu.component.scss']\n})\nexport class RoadMarkingMenuComponent implements OnInit {\n @Input() categories: Observable ;\n @Input() activeCategory: string;\n\n constructor(private roadMarkingsService: RoadMarkingsService,\n private activatedRoute: ActivatedRoute,\n private router: Router) {\n }\n\n ngOnInit(): void {\n this.categories = this.roadMarkingsService.getRoadMarkingCategories();\n }\n\n changeCategory(category): void {\n this.activeCategory = this.activatedRoute.snapshot.params.email;\n this.router.navigate([`/home/tm/road-marks/category/${category.id}`]);\n }\n}\n","
\n
\n

{{'TRAINING_MATERIAL.ROAD_MARKING_TITLE' | translate}}

\n
\n
\n \n
\n","import { Component, Input, OnDestroy, OnInit } from '@angular/core';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { SignsService } from '../../../services/signs.service';\nimport { NgxSpinnerService } from 'ngx-spinner';\nimport { Observable, Subscription } from '~/node_modules/rxjs';\nimport { TrainingMaterialCategories } from '~/src/app/shared/interfaces/training-material-categories';\n\n@Component({\n selector: 'app-sign-menu',\n templateUrl: './sign-menu.component.html',\n styleUrls: ['./sign-menu.component.scss']\n})\nexport class SignMenuComponent implements OnInit, OnDestroy {\n @Input() categories: Observable;\n @Input() activeCategory: string;\n subscriptions: Subscription = new Subscription();\n\n constructor(private signsService: SignsService,\n private activatedRoute: ActivatedRoute,\n private spinner: NgxSpinnerService,\n private router: Router) {\n }\n\n ngOnInit(): void {\n this.categories = this.signsService.getSignCategories();\n this.subscriptions.add(this.categories.subscribe(() => {\n }, error=>{\n // error during done subscribe\n }, ()=>{\n // After complete subscribe\n this.spinner.hide();\n }));\n }\n\n ngOnDestroy(): void {\n this.subscriptions.unsubscribe();\n }\n\n\n changeCategory(category): void {\n this.activeCategory = this.activatedRoute.snapshot.params.email;\n this.router.navigate([`/home/tm/signs/category/${category.id}`]);\n }\n}\n","
\n
\n
\n

\n {{'TRAINING_MATERIAL.ROAD_SIGN_TITLE' | translate}}\n

\n
\n
\n
\n \n
\n","import { Component, OnDestroy, OnInit } from '@angular/core';\nimport { PenaltyService } from '../../services/penalty.service';\nimport { IPenalties } from '../../../../shared/interfaces/penalties';\nimport { StorageService } from '../../../../core/services/storage.service';\nimport { TranslateService } from '@ngx-translate/core';\nimport { ActivatedRoute } from '@angular/router';\nimport { NgxSpinnerService } from 'ngx-spinner';\nimport { Subscription } from '~/node_modules/rxjs';\n\n@Component({\n selector: 'app-penalties',\n templateUrl: './penalties.component.html',\n styleUrls: ['./penalties.component.scss',\n '/src/app/style/penalties.scss']\n})\nexport class PenaltiesComponent implements OnInit, OnDestroy {\n\n penalties: IPenalties[];\n openComment = [];\n subscriptions: Subscription = new Subscription();\n\n constructor(private penaltyService: PenaltyService,\n private storageService: StorageService,\n private translateService: TranslateService,\n private activatedRoute: ActivatedRoute,\n private spinner: NgxSpinnerService) {\n }\n\n ngOnInit(): void {\n this.spinner.show();\n this.subscriptions.add(this.penaltyService.getPenalties().subscribe((res: IPenalties[]) => {\n const categoryId = this.activatedRoute.snapshot.params.id;\n this.penalties = res;\n setTimeout(() => {\n const el = document.getElementById(categoryId);\n el.scrollIntoView();\n }, 0);\n }, ()=>{\n\n }, ()=>{\n this.spinner.hide();\n }));\n }\n\n ngOnDestroy(): void {\n this.subscriptions.unsubscribe();\n }\n\n open(el): void {\n if (this.openComment.includes(el)) {\n this.openComment = this.openComment.filter(element => element !== el);\n } else {\n this.openComment.push(el);\n }\n }\n\n}\n","
\n
\n
\n
\n

{{'FINES_TABLE.TITLE' | translate}}

\n
\n
\n
\n
\n
\n
\n
\n

{{'FINES_TABLE.ARTICLE' | translate}} {{penalty.article}}

\n
\n
\n
\n

{{'FINES_TABLE.AMOUNT' | translate}} {{penalty.amount}} {{'FINES_TABLE.CURRENCY' | translate}}

\n
\n
\n

{{'TRAINING_MATERIAL.EXPERT_COMMENT' | translate}}

\n
\n
\n
\n
\n
\n
\n
\n \n
\n","import { Component, OnDestroy, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-penalty',\n templateUrl: './penalty.component.html',\n styleUrls: ['./penalty.component.scss']\n})\nexport class PenaltyComponent implements OnInit, OnDestroy {\n\n constructor() {\n }\n\n ngOnInit(): void {\n\n }\n\n ngOnDestroy(): void {\n\n }\n\n}\n","import { Component, OnInit } from '@angular/core';\n@Component({\n selector: 'app-road-marking-categories',\n templateUrl: './road-marking-categories.component.html',\n styleUrls: ['./road-marking-categories.component.scss']\n})\nexport class RoadMarkingCategoriesComponent implements OnInit {\n\n constructor() {\n }\n\n ngOnInit(): void {}\n\n\n}\n\n","import { Component, OnDestroy, OnInit } from '@angular/core';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { RoadMarkingsService } from '../../services/road-markings.service';\nimport { Observable } from 'rxjs';\nimport { NgxSpinnerService } from 'ngx-spinner';\nimport { StorageService } from '../../../../core/services/storage.service';\nimport { TrainingMaterialCategories } from '../../../../shared/interfaces/training-material-categories';\nimport { TrainingMaterialComponents } from '../../../../shared/interfaces/training-material-components';\nimport { Config } from '../../../../shared/property/constant';\nimport { Subscription } from '~/node_modules/rxjs';\n\n@Component({\n selector: 'app-road-marking-category',\n templateUrl: './road-marking-category.component.html',\n styleUrls: ['./road-marking-category.component.scss',\n '/src/app/style/sign-marking-item.scss']\n})\nexport class RoadMarkingCategoryComponent implements OnInit, OnDestroy {\n\n roadMarkings: Observable;\n categories: Observable;\n activeCategory: TrainingMaterialCategories;\n scrollElement = false;\n prefixImgPath = Config.storageUrl();\n subscriptions: Subscription = new Subscription();\n\n constructor(private roadMarkingsService: RoadMarkingsService,\n private activatedRoute: ActivatedRoute,\n private router: Router,\n private spinner: NgxSpinnerService,\n private storageService: StorageService) {\n }\n\n ngOnInit(): void {\n this.spinner.show();\n this.router.onSameUrlNavigation = 'reload';\n const categoryId = this.activatedRoute.snapshot.params.id;\n this.roadMarkings = this.roadMarkingsService.getRoadMarkingsByCategory(this.activatedRoute.snapshot.params.id);\n this.categories = this.roadMarkingsService.getRoadMarkingCategories();\n this.subscriptions.add(this.categories.subscribe((categories: TrainingMaterialCategories[]) => {\n this.activeCategory = categories.find((cat: TrainingMaterialCategories) => cat.id === categoryId);\n }, ()=>{\n\n }, ()=>{\n this.spinner.hide();\n }));\n }\n\n ngOnDestroy(): void {\n this.subscriptions.unsubscribe();\n }\n\n scroll(el: HTMLElement): void {\n el.scrollIntoView({behavior: 'smooth'});\n this.scrollElement = true;\n }\n\n async changeCategory(category): Promise {\n this.spinner.show();\n this.activeCategory = category;\n this.roadMarkings = await this.roadMarkingsService.getRoadMarkingsByCategory(category.id);\n this.spinner.hide();\n }\n\n openMarking(link, categoryName): void {\n this.storageService.set('roadMarkingCategory', categoryName);\n this.router.navigate([link]);\n }\n}\n","\n
\n
\n
\n

{{'TRAINING_MATERIAL.ROAD_MARKING_TITLE' | translate}}

\n
\n
\n \n
\n
\n
\n
\n
\n
\n

{{category.number}}.

\n

{{ category.name}}

\n
\n
\n
\n
\n
\n\n","import { Component, OnDestroy, OnInit } from '@angular/core';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { RoadMarkingsService } from '../../services/road-markings.service';\nimport { Observable } from 'rxjs';\nimport { StorageService } from '../../../../core/services/storage.service';\nimport { NgxSpinnerService } from 'ngx-spinner';\nimport { TrainingMaterialCategories } from '../../../../shared/interfaces/training-material-categories';\nimport { TrainingMaterialComponents } from '../../../../shared/interfaces/training-material-components';\nimport { Subscription } from '~/node_modules/rxjs';\n\n\n@Component({\n selector: 'app-road-marking',\n templateUrl: './road-marking.component.html',\n styleUrls: ['./road-marking.component.scss']\n})\nexport class RoadMarkingComponent implements OnInit, OnDestroy {\n\n roadMarking: TrainingMaterialComponents;\n categories: Observable;\n activeCategory: TrainingMaterialCategories;\n openComment: boolean;\n categoryName = '';\n subscriptions: Subscription = new Subscription();\n\n constructor(private roadMarkingsService: RoadMarkingsService,\n private activatedRoute: ActivatedRoute,\n private router: Router,\n private storageService: StorageService,\n private spinner: NgxSpinnerService) {\n }\n\n ngOnInit(): void {\n this.spinner.show();\n\n this.router.onSameUrlNavigation = 'reload';\n this.subscriptions.add(this.roadMarkingsService.getRoadMarkingById(this.activatedRoute.snapshot.params.id)\n .subscribe((res: TrainingMaterialComponents) => {\n this.roadMarking = res;\n }, error=>{\n // error during done subscribe\n }, ()=>{\n // After complete subscribe\n this.spinner.hide();\n }));\n this.categories = this.roadMarkingsService.getRoadMarkingCategories();\n if (this.storageService.get('roadMarkingCategory')) {\n this.categoryName = this.storageService.get('roadMarkingCategory').value;\n }\n this.subscriptions.add(this.categories.subscribe((categories: TrainingMaterialCategories[]) => {\n this.activeCategory = categories.find((cat: TrainingMaterialCategories) => cat.name === this.categoryName);\n }, error=>{\n // error during done subscribe\n }, ()=>{\n // After complete subscribe\n this.spinner.hide();\n }));\n }\n\n ngOnDestroy(): void {\n this.subscriptions.unsubscribe();\n }\n\n\n changeCategory(category): void {\n this.activeCategory = this.activatedRoute.snapshot.params.email;\n this.router.navigate([`/home/tm/road-marks/category/${category.id}`]);\n }\n}\n","
\n
\n
\n
{{categoryName}}\n {{roadMarking?.name}}
\n
\n
\n
\n
\n
\n

{{roadMarking.number}} {{roadMarking.name}}

\n
\n
\n
\n

{{'TRAINING_MATERIAL.EXPERT_COMMENT' | translate}}

\n
\n
\n
\n
\n
\n
\n \n \n
\n
\n
\n
\n
\n

{{category.number}}.

\n
\n

{{ category.name}}

\n
\n
\n
\n
\n
\n
\n
\n","import { Component, OnInit } from '@angular/core';\nimport { ActivatedRoute } from '@angular/router';\nimport { SearchService } from '../../../../layout/services/search.service';\nimport { StorageService } from '../../../../../core/services/storage.service';\nimport { NgxSpinnerService } from 'ngx-spinner';\nimport { TrainingMaterialComponents } from '../../../../../shared/interfaces/training-material-components';\nimport { Observable } from 'rxjs';\n@Component({\n selector: 'app-penalties-search',\n templateUrl: './penalties-search.component.html',\n styleUrls: ['./penalties-search.component.scss',\n '/src/app/style/penalties.scss']\n})\nexport class PenaltiesSearchComponent implements OnInit {\n\n penalties: Observable;\n openComment = [];\n searchText: string;\n\n constructor(private activatedRoute: ActivatedRoute,\n private searchService: SearchService,\n private storageService: StorageService,\n private spinner: NgxSpinnerService) { }\n\n async ngOnInit(): Promise {\n this.spinner.show();\n this.penalties = await this.searchService.searchByPenalties(this.activatedRoute.snapshot.params.searchText);\n this.searchText = await this.activatedRoute.snapshot.params.searchText;\n this.spinner.hide();\n }\n\n open(el): void {\n if (this.openComment.includes(el)){\n this.openComment = this.openComment.filter(element => element !== el);\n }\n else{\n this.openComment.push(el);\n }\n }\n}\n","
\n
\n
\n
\n

{{'FINES_TABLE.TITLE' | translate}}

\n
\n
\n
\n
\n
\n
\n
\n

{{'FINES_TABLE.ARTICLE' | translate}} {{penalty.article}}

\n
\n
\n
\n
\n

{{'FINES_TABLE.AMOUNT' | translate}} {{penalty.amount}} {{'FINES_TABLE.CURRENCY' | translate}}

\n
\n

{{'TRAINING_MATERIAL.EXPERT_COMMENT' | translate}}

\n
\n
\n
\n
\n
\n
\n
\n \n
\n","import { Component, OnDestroy, OnInit } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { StorageService } from '../../../../../core/services/storage.service';\nimport { SearchService } from '../../../../layout/services/search.service';\nimport { NgxSpinnerService } from 'ngx-spinner';\nimport { TrainingMaterialComponents } from '../../../../../shared/interfaces/training-material-components';\nimport { TrainingMaterialCategories } from '../../../../../shared/interfaces/training-material-categories';\nimport { Config } from '../../../../../shared/property/constant';\nimport { Subscription } from '~/node_modules/rxjs';\n\n@Component({\n selector: 'app-search-road-markings',\n templateUrl: './search-road-markings.component.html',\n styleUrls: ['./search-road-markings.component.scss',\n '/src/app/style/sign-marking-item.scss']\n})\nexport class SearchRoadMarkingsComponent implements OnInit, OnDestroy {\n\n roadMarkings: TrainingMaterialComponents[];\n categories: Observable;\n activeCategory: TrainingMaterialCategories;\n searchText: string;\n prefixImgPath = Config.storageUrl();\n subscriptions: Subscription = new Subscription();\n\n constructor(private activatedRoute: ActivatedRoute,\n private router: Router,\n private storageService: StorageService,\n private searchService: SearchService,\n private spinner: NgxSpinnerService) {\n }\n\n ngOnInit(): void {\n this.spinner.show();\n this.subscriptions.add(this.searchService.searchByRoadMarkingsId\n (this.activatedRoute.snapshot.params.id, this.activatedRoute.snapshot.params.searchText)\n .subscribe((res: TrainingMaterialComponents[]) => {\n this.roadMarkings = res;\n }, ()=>{\n\n }, ()=>{\n this.spinner.hide();\n }));\n this.activeCategory = this.storageService.get('change-category').value;\n this.searchText = this.activatedRoute.snapshot.params.searchText;\n }\n\n ngOnDestroy(): void {\n this.subscriptions.unsubscribe();\n }\n\n openMarking(link, categoryName): void {\n this.storageService.set('roadMarkingCategory', categoryName);\n this.router.navigate([link]);\n\n }\n}\n\n","
\n
\n
\n

{{activeCategory}}

\n
\n
\n
\n
\n
\n
\n \"\"\n
\n
\n

{{roadMarking.number}}

\n
\n
\n
\n
\n
\n
\n \n
\n {{roadMarking.number + '.'}}\n {{roadMarking.name}}\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n {{roadMarking.number + '.'}}\n {{roadMarking.name}}\n
\n
\n
\n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n
\n\n","import { Component, OnInit } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { StorageService } from '../../../../../core/services/storage.service';\nimport { SearchService } from '../../../../layout/services/search.service';\nimport { NgxSpinnerService } from 'ngx-spinner';\nimport { TrainingMaterialComponents } from '../../../../../shared/interfaces/training-material-components';\nimport { TrainingMaterialCategories } from '../../../../../shared/interfaces/training-material-categories';\nimport { Config } from '../../../../../shared/property/constant';\n\n@Component({\n selector: 'app-search-signs',\n templateUrl: './search-signs.component.html',\n styleUrls: ['./search-signs.component.scss',\n '/src/app/style/sign-marking-item.scss']\n})\nexport class SearchSignsComponent implements OnInit {\n\n signs: Observable;\n categories: Observable;\n activeCategory: TrainingMaterialCategories;\n searchText: string;\n prefixImgPath = Config.storageUrl();\n\n\n constructor(private activatedRoute: ActivatedRoute,\n private router: Router,\n private storageService: StorageService,\n private searchService: SearchService,\n private spinner: NgxSpinnerService) {\n }\n\n async ngOnInit(): Promise {\n this.spinner.show();\n this.signs = await this.searchService.searchBySignsId(this.activatedRoute.snapshot.params.id, this.activatedRoute.snapshot.params.searchText);\n this.spinner.hide();\n this.searchText = this.activatedRoute.snapshot.params.searchText;\n this.activeCategory = this.storageService.get('change-category').value;\n }\n\n openSign(link, categoryName): void {\n this.storageService.set('signCategory', categoryName);\n this.router.navigate([link]);\n }\n\n}\n","
\n
\n
\n

{{activeCategory}}

\n
\n
\n
\n
\n
\n
\n \"\"\n
\n

{{sign.number}}

\n
\n
\n
\n
\n
\n \n
\n {{sign.number + '.'}}\n {{sign.name}}\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n {{sign.number + '.'}}\n {{sign.name}}\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n
\n\n","import { Component, OnDestroy, OnInit } from '@angular/core';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { SearchService } from '../../../../layout/services/search.service';\nimport { StorageService } from '../../../../../core/services/storage.service';\nimport { NgxSpinnerService } from 'ngx-spinner';\nimport { Observable } from 'rxjs';\nimport { TranslateService } from '@ngx-translate/core';\nimport { TrafficRulesService } from '../../../services/traffic-rules.service';\nimport { TrainingMaterialCategories } from '../../../../../shared/interfaces/training-material-categories';\nimport { Subscription } from '~/node_modules/rxjs';\nimport {error} from \"protractor\";\n\n@Component({\n selector: 'app-traffic-rule-search',\n templateUrl: './traffic-rule-search.component.html',\n styleUrls: ['./traffic-rule-search.component.scss']\n})\nexport class TrafficRuleSearchComponent implements OnInit, OnDestroy {\n\n trafficRules: Observable;\n openComment = [];\n activeCategory: any;\n searchText: any;\n categories: any;\n subscriptions: Subscription = new Subscription();\n\n constructor(private activatedRoute: ActivatedRoute,\n private searchService: SearchService,\n private storageService: StorageService,\n private spinner: NgxSpinnerService,\n private translateService: TranslateService,\n private router: Router,\n private trafficRulesService: TrafficRulesService) {\n }\n\n async ngOnInit(): Promise {\n const categoryId = this.activatedRoute.snapshot.params.id;\n this.spinner.show();\n this.trafficRules = this.searchService.searchByTrafficLowsId(this.activatedRoute.snapshot.params.id,\n this.activatedRoute.snapshot.params.searchText)\n this.searchText = await this.activatedRoute.snapshot.params.searchText;\n this.spinner.hide();\n this.categories = this.trafficRulesService.getTrafficRuleCategories();\n this.subscriptions.add(this.categories.subscribe((categories: TrainingMaterialCategories[]) => {\n this.activeCategory = categories.find((cat: TrainingMaterialCategories) => cat.id === categoryId);\n }, error=>{\n // error during done subscribe\n }, ()=>{\n // After complete subscribe\n this.spinner.hide();\n }));\n }\n\n ngOnDestroy(): void {\n this.subscriptions.unsubscribe();\n }\n\n\n open(el): void {\n if (this.openComment.includes(el)) {\n this.openComment = this.openComment.filter(element => element !== el);\n } else {\n this.openComment.push(el);\n }\n }\n\n changeCategory(category): void {\n this.activeCategory = this.activatedRoute.snapshot.params.email;\n this.router.navigate([`/home/tm/traffic-rules/categories/${category.id}`]);\n }\n}\n","
\n
\n
\n
\n

\n {{activeCategory?.name}}\n

\n
\n
\n
\n
\n
\n
\n
\n
\n

{{trafficRule.number}}

\n
\n
\n
{{'TRAINING_MATERIAL.EXPERT_COMMENT' | translate}}\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
{{'TRAINING_MATERIAL.TRAFFIC_RULE_TITLE' | translate}}\n
{{'TRAINING_MATERIAL.TRAFFIC_RULE_SUBTITLE' | translate}}
\n
\n\n
\n
\n \n
\n
\n
\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-sign-categories',\n templateUrl: './sign-categories.component.html',\n styleUrls: ['./sign-categories.component.scss']\n})\nexport class SignCategoriesComponent implements OnInit {\n constructor() {\n }\n\n ngOnInit(): void {}\n}\n\n","import { Component, OnDestroy, OnInit } from '@angular/core';\nimport { SignsService } from '../../services/signs.service';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { Observable } from 'rxjs';\nimport { NgxSpinnerService } from 'ngx-spinner';\nimport { StorageService } from '../../../../core/services/storage.service';\nimport { TrainingMaterialCategories } from '../../../../shared/interfaces/training-material-categories';\nimport { TrainingMaterialComponents } from '../../../../shared/interfaces/training-material-components';\nimport { Config } from '../../../../shared/property/constant';\nimport { Subscription } from '~/node_modules/rxjs';\n\n@Component({\n selector: 'app-sign-category',\n templateUrl: './sign-category.component.html',\n styleUrls: ['./sign-category.component.scss',\n '/src/app/style/sign-marking-item.scss']\n})\nexport class SignCategoryComponent implements OnInit, OnDestroy {\n\n signs: Observable;\n categories: Observable;\n activeCategory: TrainingMaterialCategories;\n scrollElement = false;\n prefixImgPath = Config.storageUrl();\n categoryName = '';\n subscriptions: Subscription = new Subscription();\n\n constructor(private signsService: SignsService,\n private activatedRoute: ActivatedRoute,\n private router: Router,\n private spinner: NgxSpinnerService,\n private storageService: StorageService) {\n }\n\n ngOnInit(): void {\n this.spinner.show();\n if (this.storageService.get('signCategory')) {\n this.categoryName = this.storageService.get('signCategory').value;\n }\n this.router.routeReuseStrategy.shouldReuseRoute = () => {\n return false;\n };\n this.router.onSameUrlNavigation = 'reload';\n const categoryId = this.activatedRoute.snapshot.params.id;\n this.signs = this.signsService.getSignsByCategory(categoryId);\n this.categories = this.signsService.getSignCategories();\n this.subscriptions.add(this.categories.subscribe((categories: TrainingMaterialCategories[]) => {\n this.activeCategory = categories.find((cat: TrainingMaterialCategories) => cat.id === categoryId);\n }, () => {\n\n }, () => {\n this.spinner.hide();\n }));\n }\n\n ngOnDestroy(): void {\n this.subscriptions.unsubscribe();\n }\n\n scroll(el: HTMLElement): void {\n el.scrollIntoView({behavior: 'auto'});\n this.scrollElement = true;\n }\n\n async changeCategory(category): Promise {\n this.spinner.show();\n this.activeCategory = category;\n this.signs = await this.signsService.getSignsByCategory(category.id);\n this.spinner.hide();\n }\n\n openSign(link, categoryName): void {\n this.storageService.set('signCategory', categoryName);\n this.router.navigate([link]);\n }\n\n}\n","
\n
\n
\n

{{activeCategory?.name}}

\n
\n
\n
\n
\n
\n
\n \"\"\n
\n
{{sign.number}}
\n
{{sign.name}}\n
\n
\n
\n\n
\n
\n
\n
\n {{sign.number + '.'}}\n {{sign.name}}\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n {{sign.number + '.'}}\n {{sign.name}}\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
{{'TRAINING_MATERIAL.ROAD_SIGN_TITLE' | translate}}
\n
\n
\n \n
\n
\n
\n
\n
\n
\n

{{category.number}}.

\n

{{ category.name}}

\n
\n
\n
\n
\n
\n
\n","import { Component, OnDestroy, OnInit } from '@angular/core';\nimport { SignsService } from '../../services/signs.service';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { Observable } from 'rxjs';\nimport { StorageService } from '../../../../core/services/storage.service';\nimport { NgxSpinnerService } from 'ngx-spinner';\nimport { TrainingMaterialCategories } from '../../../../shared/interfaces/training-material-categories';\nimport { TrainingMaterialComponents } from '../../../../shared/interfaces/training-material-components';\nimport { Subscription } from '~/node_modules/rxjs';\n\n@Component({\n selector: 'app-sign',\n templateUrl: './sign.component.html',\n styleUrls: ['./sign.component.scss']\n})\nexport class SignComponent implements OnInit, OnDestroy {\n\n sign: TrainingMaterialComponents;\n openComment = true;\n categories: Observable;\n activeCategory: TrainingMaterialCategories;\n categoryName = '';\n subscriptions: Subscription = new Subscription();\n\n constructor(private signsService: SignsService,\n private activatedRoute: ActivatedRoute,\n private router: Router,\n private storageService: StorageService,\n private spinner: NgxSpinnerService) {\n }\n\n ngOnInit(): void {\n this.spinner.show();\n\n if (this.storageService.get('signCategory')) {\n this.categoryName = this.storageService.get('signCategory').value;\n }\n this.categories = this.signsService.getSignCategories();\n this.subscriptions.add(this.categories.subscribe((categories: TrainingMaterialCategories[]) => {\n this.activeCategory = categories.find((cat: TrainingMaterialCategories) => cat.name === this.categoryName);\n }, ()=>{\n\n }, ()=>{\n this.spinner.hide();\n }));\n this.spinner.show();\n this.subscriptions.add(this.signsService.getSignById(this.activatedRoute.snapshot.params.id)\n .subscribe((res: TrainingMaterialComponents) => {\n this.sign = res;\n }, ()=>{\n\n }, ()=>{\n this.spinner.hide();\n }));\n }\n\n ngOnDestroy(): void {\n this.subscriptions.unsubscribe();\n }\n\n}\n","
\n
\n
\n
{{categoryName}}\n {{sign?.name}}
\n
\n
\n
\n
\n

{{sign.number}} {{sign.name}}

\n
\n
{{'TRAINING_MATERIAL.EXPERT_COMMENT' | translate}}
\n
\n
\n
\n
\n
\n \n
\n
\n
\n
\n
\n
\n

{{category.number}}.

\n
\n
\n

{{category.name}}

\n
\n
\n
\n
\n
\n
\n
\n","import { Component, OnDestroy, OnInit } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { TrafficRulesService } from '../../services/traffic-rules.service';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { NgxSpinnerService } from 'ngx-spinner';\nimport { TrainingMaterialComponents } from '../../../../shared/interfaces/training-material-components';\nimport { TrainingMaterialCategories } from '../../../../shared/interfaces/training-material-categories';\nimport { Subscription } from '~/node_modules/rxjs';\n\n@Component({\n selector: 'app-traffic-rule-categories',\n templateUrl: './traffic-rule-categories.component.html',\n styleUrls: ['./traffic-rule-categories.component.scss']\n})\nexport class TrafficRuleCategoriesComponent implements OnInit, OnDestroy {\n\n categories: Observable;\n activeCategory: TrainingMaterialCategories;\n trafficRules: Observable;\n openComment = [];\n subscriptions: Subscription = new Subscription();\n\n constructor(private trafficRulesService: TrafficRulesService,\n private activatedRoute: ActivatedRoute,\n private router: Router,\n private spinner: NgxSpinnerService) {\n }\n\n ngOnInit(): void {\n this.spinner.show();\n const categoryId = this.activatedRoute.snapshot.params.id;\n this.categories = this.trafficRulesService.getTrafficRuleCategories();\n this.subscriptions.add(this.categories.subscribe((categories: TrainingMaterialCategories[]) => {\n this.trafficRules = this.trafficRulesService.getTrafficRulesByCategory(categoryId);\n this.activeCategory = categories.find((cat: TrainingMaterialCategories) => cat.id === categoryId);\n }, ()=>{\n\n }, ()=>{\n this.spinner.hide();\n }));\n }\n\n ngOnDestroy(): void {\n this.subscriptions.unsubscribe();\n }\n\n async changeCategory(category): Promise {\n this.spinner.show();\n this.activeCategory = category;\n this.trafficRules = await this.trafficRulesService.getTrafficRulesByCategory(category.id);\n this.spinner.hide();\n }\n\n open(el): void {\n if (this.openComment.includes(el)) {\n this.openComment = this.openComment.filter(element => element !== el);\n } else {\n this.openComment.push(el);\n }\n }\n}\n","
\n
\n
\n\n

{{activeCategory?.name}}

\n
\n
\n
\n
\n
\n
\n

{{trafficRule.number}}

\n
\n
\n

{{'TRAINING_MATERIAL.EXPERT_COMMENT' | translate}}

\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
{{'TRAINING_MATERIAL.TRAFFIC_RULE_TITLE' | translate}}\n
{{'TRAINING_MATERIAL.TRAFFIC_RULE_SUBTITLE' | translate}}
\n
\n\n
\n
\n \n
\n
\n
\n
\n
\n
\n

{{category.number}}.

\n

\n {{category.name}}\n

\n
\n
\n
\n
\n
\n","import { Component, OnDestroy, OnInit } from '@angular/core';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { TrafficRulesService } from '../../services/traffic-rules.service';\nimport { Observable } from 'rxjs';\nimport { NgxSpinnerService } from 'ngx-spinner';\nimport { TrainingMaterialCategories } from '../../../../shared/interfaces/training-material-categories';\nimport { TrainingMaterialComponents } from '../../../../shared/interfaces/training-material-components';\nimport { Subscription } from '~/node_modules/rxjs';\n\n\n@Component({\n selector: 'app-traffic-rule-category',\n templateUrl: './traffic-rule-category.component.html',\n styleUrls: ['./traffic-rule-category.component.scss']\n})\nexport class TrafficRuleCategoryComponent implements OnInit, OnDestroy {\n\n categories: Observable;\n activeCategory: TrainingMaterialCategories;\n trafficRules: TrainingMaterialComponents[];\n openComment = [];\n trafficRuleId: string;\n subscriptions: Subscription = new Subscription();\n\n constructor(private trafficRulesService: TrafficRulesService,\n private activatedRoute: ActivatedRoute,\n private router: Router,\n private spinner: NgxSpinnerService) {\n this.trafficRuleId = this.activatedRoute.snapshot.params.id;\n }\n\n ngOnInit(): void {\n this.spinner.show();\n this.router.onSameUrlNavigation = 'reload';\n const categoryId = this.activatedRoute.snapshot.params.categoryId;\n this.categories = this.trafficRulesService.getTrafficRuleCategories();\n this.subscriptions.add(this.trafficRulesService.getTrafficRulesByCategory(this.activatedRoute.snapshot.params.categoryId)\n .subscribe((res: TrainingMaterialComponents[]) => {\n this.trafficRules = res;\n setTimeout(() => {\n const el = document.getElementById(this.trafficRuleId);\n if (el) {\n el.scrollIntoView();\n el.style.marginTop = '20px';\n } else {\n window.location.reload();\n }\n }, 0);\n }));\n this.subscriptions.add(this.categories.subscribe(categories => {\n this.activeCategory = categories.find(cat => cat.id === categoryId);\n }, ()=>{\n\n }, ()=>{\n this.spinner.hide();\n }));\n }\n\n ngOnDestroy(): void {\n this.subscriptions.unsubscribe();\n }\n\n\n open(el): void {\n if (this.openComment.includes(el)) {\n this.openComment = this.openComment.filter(element => element !== el);\n } else {\n this.openComment.push(el);\n }\n }\n\n changeCategory(category): void {\n this.activeCategory = category;\n this.spinner.show();\n this.subscriptions.add(this.trafficRulesService.getTrafficRulesByCategory(category.id)\n .subscribe((res: TrainingMaterialComponents[]) => {\n this.trafficRules = res;\n }, ()=>{\n\n }, ()=>{\n this.spinner.hide();\n }));\n }\n}\n\n","
\n
\n
\n

{{activeCategory?.name}}

\n
\n
\n
\n
\n
\n
\n

{{trafficRule.number}}

\n
\n

{{'TRAINING_MATERIAL.EXPERT_COMMENT' | translate}}

\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
{{'TRAINING_MATERIAL.TRAFFIC_RULE_TITLE' | translate}}\n
{{'TRAINING_MATERIAL.TRAFFIC_RULE_SUBTITLE' | translate}}
\n
\n\n
\n
\n \n
\n
\n
\n
\n
\n
\n
{{category.number}}.
\n
{{ category.name}}
\n
\n
\n
\n
\n
\n
\n","import { Component, OnDestroy, OnInit } from '@angular/core';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { TrafficRulesService } from '../../services/traffic-rules.service';\nimport { NgxSpinnerService } from 'ngx-spinner';\nimport { TrainingMaterialComponents } from '../../../../shared/interfaces/training-material-components';\nimport { Subscription } from '~/node_modules/rxjs';\n\n@Component({\n selector: 'app-traffic-rule',\n templateUrl: './traffic-rule.component.html',\n styleUrls: ['./traffic-rule.component.scss']\n})\nexport class TrafficRuleComponent implements OnInit, OnDestroy {\n\n trafficRule: TrainingMaterialComponents;\n subscriptions: Subscription = new Subscription();\n\n constructor(private trafficRulesService: TrafficRulesService,\n private activatedRoute: ActivatedRoute,\n private router: Router,\n private spinner: NgxSpinnerService) {\n }\n\n ngOnInit(): void {\n this.router.onSameUrlNavigation = 'reload';\n this.spinner.show();\n\n this.subscriptions.add(this.trafficRulesService.getTrafficRuleById(this.activatedRoute.snapshot.params.id)\n .subscribe((res: TrainingMaterialComponents) => {\n this.trafficRule = res;\n }, ()=>{\n\n }, ()=>{\n this.spinner.hide();\n }));\n }\n\n ngOnDestroy(): void {\n this.subscriptions.unsubscribe();\n }\n\n\n}\n","
\n\n","import { Injectable } from '@angular/core';\nimport { Config } from '../../../shared/property/constant';\nimport { HttpClient } from '@angular/common/http';\nimport { Observable } from 'rxjs';\nimport { ILicenseCategory } from '../../../shared/interfaces/licenseCategory';\nimport { NextPayment } from '../../../shared/interfaces/nextPayment';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class LicenseCategoriesService {\n\n private url = Config.apiUrl();\n\n constructor(private http: HttpClient) {\n }\n getLicense(): Observable {\n return this.http.get (this.url + 'licensecategories');\n }\n\n getNextPayment(): Observable {\n return this.http.get (this.url + 'payments/nextpaymentstatus');\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Config } from '../../../shared/property/constant';\nimport { HttpClient } from '@angular/common/http';\nimport { Observable } from 'rxjs';\nimport { IPenalties } from '../../../shared/interfaces/penalties';\nimport { TrainingMaterialComponents } from '../../../shared/interfaces/training-material-components';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class PenaltyService {\n\n private url = Config.apiUrl();\n\n constructor(private http: HttpClient) {\n }\n\n getPenalties(): Observable {\n return this.http.get(this.url + 'penalties');\n }\n\n getPenaltyById(id: string): Observable {\n return this.http.get (this.url + 'penalties/' + id);\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Config } from '../../../shared/property/constant';\nimport { HttpClient } from '@angular/common/http';\nimport { Observable } from 'rxjs';\nimport { TrainingMaterialCategories } from '../../../shared/interfaces/training-material-categories';\nimport { TrainingMaterialComponents } from '../../../shared/interfaces/training-material-components';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class RoadMarkingsService {\n\n private url = Config.apiUrl();\n\n constructor(private http: HttpClient) {\n }\n\n getRoadMarkingCategories(): Observable {\n return this.http.get(this.url + 'roadmarkingcategories');\n }\n\n\n getRoadMarkingsByCategory(id: string): Observable {\n return this.http.get(this.url + 'roadmarkings/categoryid/' + id);\n }\n\n getRoadMarkingById(id: string): Observable {\n return this.http.get(this.url + 'roadmarkings/' + id);\n }\n}\n","import { Injectable } from '@angular/core';\nimport { HttpClient } from '@angular/common/http';\nimport { Config } from '../../../shared/property/constant';\nimport { Observable } from 'rxjs';\nimport { TrainingMaterialCategories } from '../../../shared/interfaces/training-material-categories';\nimport { TrainingMaterialComponents } from '../../../shared/interfaces/training-material-components';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class SignsService {\n\n private url = Config.apiUrl();\n\n constructor(private http: HttpClient) {\n }\n\n getSignCategories(): Observable {\n return this.http.get(this.url + 'signcategories');\n }\n\n\n getSignsByCategory(id: string): Observable {\n return this.http.get(this.url + 'signs/categoryid/' + id);\n }\n\n getSignById(id: string): Observable {\n return this.http.get(this.url + 'signs/' + id);\n }\n\n}\n","import { Injectable } from '@angular/core';\nimport { Config } from '../../../shared/property/constant';\nimport { HttpClient } from '@angular/common/http';\nimport { Observable } from 'rxjs';\nimport { TrainingMaterialComponents } from '../../../shared/interfaces/training-material-components';\nimport { TrainingMaterialCategories } from '../../../shared/interfaces/training-material-categories';\nimport { Tests } from '../../../shared/interfaces/tests-on-themes';\nimport { TestItem } from '../../../shared/modules/test-item';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class TrafficRulesService {\n\n // private url = Config.apiUrl();\n private apiUrl = Config.apiUrl();\n\n\n constructor(private http: HttpClient) {\n }\n\n getTrafficRuleCategories(): Observable{\n return this.http.get(`${this.apiUrl}trafficruleschapters`);\n }\n\n\n getTrafficRulesByCategory(id: string): Observable {\n return this.http.get(`${this.apiUrl}trafficrules/chapterid/${id}`);\n }\n\n getTrafficRuleById(id: string): Observable {\n return this.http.get(`${this.apiUrl}trafficrules/${id}`);\n }\n\n getTrafficRuleBTicketsyId(id: string): Observable {\n return this.http.get(`${this.apiUrl}trafficrulesteststickets/licensecategoryid/${id}`);\n }\n\n geTicketsyId(ticketId: string): Observable {\n return this.http.get(`${this.apiUrl}trafficrulestests/ticketid/${ticketId}`);\n }\n}\n","import { NgModule } from '@angular/core';\nimport { Routes, RouterModule } from '@angular/router';\nimport { SignCategoriesComponent } from './components/sign-categories/sign-categories.component';\nimport { SignCategoryComponent } from './components/sign-category/sign-category.component';\nimport { SignComponent } from './components/sign/sign.component';\nimport { RoadMarkingCategoriesComponent } from './components/road-marking-categories/road-marking-categories.component';\nimport { RoadMarkingCategoryComponent } from './components/road-marking-category/road-marking-category.component';\nimport { RoadMarkingComponent } from './components/road-marking/road-marking.component';\nimport { TrafficRuleCategoriesComponent } from './components/traffic-rule-categories/traffic-rule-categories.component';\nimport { TrafficRuleCategoryComponent } from './components/traffic-rule-category/traffic-rule-category.component';\nimport { TrafficRuleComponent } from './components/traffic-rule/traffic-rule.component';\nimport { PenaltiesComponent } from './components/penalties/penalties.component';\nimport { PenaltyComponent } from './components/penalty/penalty.component';\nimport { TrafficRuleSearchComponent } from './components/search-components/traffic-rule-search/traffic-rule-search.component';\nimport { SearchSignsComponent } from './components/search-components/search-signs/search-signs.component';\nimport { SearchRoadMarkingsComponent } from './components/search-components/search-road-markings/search-road-markings.component';\nimport { PenaltiesSearchComponent } from './components/search-components/penalties-search/penalties-search.component';\n\n\nconst routes: Routes = [\n {\n // path: 'signs/categories/:id',\n path: 'signs/categories',\n component: SignCategoriesComponent,\n },\n {\n path: 'signs/category/:id',\n component: SignCategoryComponent\n },\n {\n path: 'signs/category/:id/:searchText',\n component: SearchSignsComponent\n },\n {\n path: 'signs/sign/:id',\n component: SignComponent\n },\n {\n path: 'road-marks/categories',\n component: RoadMarkingCategoriesComponent\n },\n {\n path: 'road-marks/category/:id',\n component: RoadMarkingCategoryComponent\n },\n {\n path: 'road-marks/category/:id/:searchText',\n component: SearchRoadMarkingsComponent\n },\n {\n path: 'road-marks/road-mark/:id',\n component: RoadMarkingComponent\n },\n {\n path: 'traffic-rules/categories/:id',\n component: TrafficRuleCategoriesComponent\n },\n {\n path: 'traffic-rules/category/:id',\n component: TrafficRuleCategoryComponent\n },\n {\n path: 'traffic-rules/traffic-rule/:categoryId/:id',\n component: TrafficRuleCategoryComponent\n },\n {\n path: 'traffic-rules/category/:id/:searchText',\n component: TrafficRuleSearchComponent\n },\n // {\n // path: 'traffic-rules/traffic-rule/:id',\n // component: TrafficRuleComponent\n // },\n {\n path: 'road-fine',\n component: PenaltiesComponent\n },\n {\n path: 'road-fine/:id',\n component: PenaltiesComponent\n },\n // {\n // path: 'road-fine/:id',\n // component: PenaltyComponent\n // },\n {\n path: 'road-fines/:searchText',\n component: PenaltiesSearchComponent\n\n }\n];\n\n@NgModule({\n imports: [RouterModule.forChild(routes)],\n exports: [RouterModule]\n})\nexport class TrainingMaterialsRoutingModule { }\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { TrainingMaterialsRoutingModule } from './training-materials-routing.module';\nimport { SignCategoriesComponent } from './components/sign-categories/sign-categories.component';\nimport { SignCategoryComponent } from './components/sign-category/sign-category.component';\nimport { SignComponent } from './components/sign/sign.component';\nimport { SignsService } from './services/signs.service';\nimport { SharedModule } from '../../shared/shared.module';\nimport { TrafficRuleComponent } from './components/traffic-rule/traffic-rule.component';\nimport { TrafficRuleCategoriesComponent } from './components/traffic-rule-categories/traffic-rule-categories.component';\nimport { TrafficRuleCategoryComponent } from './components/traffic-rule-category/traffic-rule-category.component';\nimport { RoadMarkingCategoriesComponent } from './components/road-marking-categories/road-marking-categories.component';\nimport { RoadMarkingCategoryComponent } from './components/road-marking-category/road-marking-category.component';\nimport { RoadMarkingComponent } from './components/road-marking/road-marking.component';\nimport { PenaltyComponent } from './components/penalty/penalty.component';\nimport { PenaltiesComponent } from './components/penalties/penalties.component';\nimport { FroalaEditorModule } from 'angular-froala-wysiwyg';\nimport { TrafficRuleSearchComponent } from './components/search-components/traffic-rule-search/traffic-rule-search.component';\nimport { SearchSignsComponent } from './components/search-components/search-signs/search-signs.component';\nimport { SearchRoadMarkingsComponent } from './components/search-components/search-road-markings/search-road-markings.component';\nimport { PenaltiesSearchComponent } from './components/search-components/penalties-search/penalties-search.component';\nimport { RoadMarkingMenuComponent } from './components/menu-components/road-marking-menu/road-marking-menu.component';\nimport { SignMenuComponent } from './components/menu-components/sign-menu/sign-menu.component';\nimport { PenaltiesMenuComponent } from './components/menu-components/penalties-menu/penalties-menu.component';\n\n\n\n@NgModule({\n declarations: [SignCategoriesComponent,\n SignCategoryComponent,\n SignComponent,\n TrafficRuleComponent,\n TrafficRuleCategoriesComponent,\n TrafficRuleCategoryComponent,\n RoadMarkingCategoriesComponent,\n RoadMarkingCategoryComponent,\n RoadMarkingComponent,\n PenaltyComponent,\n PenaltiesComponent,\n TrafficRuleSearchComponent,\n SearchSignsComponent,\n SearchRoadMarkingsComponent,\n PenaltiesSearchComponent,\n RoadMarkingMenuComponent,\n SignMenuComponent,\n PenaltiesMenuComponent],\n imports: [\n CommonModule,\n SharedModule,\n TrainingMaterialsRoutingModule,\n FroalaEditorModule\n ],\n exports: [\n SignComponent\n ],\n providers: [\n SignsService\n ]\n})\nexport class TrainingMaterialsModule { }\n","import { Injectable } from '@angular/core';\nimport { Config } from '../../../shared/property/constant';\nimport { HttpClient } from '@angular/common/http';\nimport { Observable } from 'rxjs';\nimport { UserInfirmation } from '../../../shared/interfaces/user-infirmation';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class UserService {\n private url = Config.apiUrl();\n\n constructor(private http: HttpClient) {\n }\n getUser(): Observable {\n return this.http.get(this.url + 'profile');\n }\n\n editUserInfo(userInfo): Observable {\n return this.http.patch(this.url + 'profile', userInfo);\n }\n\n changePassword(passwords): Observable {\n return this.http.put(this.url + 'accountsettings/password', passwords);\n }\n\n uploadPhoto(image): Observable{\n const formData = new FormData();\n formData.append('image', image);\n return this.http.post(Config.apiUrl() + 'files/image', formData);\n }\n\n changeLanguage(language): Observable{\n return this.http.patch(this.url + 'accountsettings/language', {\n language\n });\n }\n}\n","import { Component, OnDestroy, OnInit } from '@angular/core';\nimport { UserService } from './services/user.service';\nimport { NgxSpinnerService } from 'ngx-spinner';\nimport { Config } from '../../shared/property/constant';\nimport { MatDialog, MatDialogConfig } from '@angular/material/dialog';\nimport { CropImageComponent } from '../../shared/dialogs/crop-image/crop-image.component';\nimport { Router } from '@angular/router';\nimport { UserInfirmation } from '../../shared/interfaces/user-infirmation';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { Subscription } from '~/node_modules/rxjs';\nimport { CityService } from '@module/start-learning/components/services/city.service';\nimport { MatSelect } from '~/node_modules/@angular/material/select';\nimport { InstructorsService } from '@module/practice/services/instructors.service';\nimport { TripBookingProgress } from '~/src/app/shared/interfaces/tripBookingProgress';\n\n@Component({\n selector: 'app-user',\n templateUrl: './user.component.html',\n styleUrls: ['./user.component.scss']\n})\nexport class UserComponent implements OnInit, OnDestroy {\n\n userInfo: UserInfirmation;\n edit = false;\n currentPassword: string;\n fullName: string;\n cityLocation: string;\n cityPractice: string;\n imagePath: string;\n changingPassword: boolean;\n prefixImgPath = Config.storageUrl();\n successPassword: boolean;\n errorPassword: boolean;\n newPasswordGroup: FormGroup;\n error = false;\n subscriptions: Subscription = new Subscription();\n\n cityShown = false;\n isPractice = false;\n\n optionsOne = [];\n optionsTwo = [];\n selectedCityName = '';\n isValiable = false;\n selectedLocation = '';\n selectedPractice = '';\n practicePlaceholder = '. . .';\n locationPlaceholder = '. . .';\n\n constructor(private userService: UserService,\n private cityService: CityService,\n public spinner: NgxSpinnerService,\n private matDialog: MatDialog,\n private router: Router,\n private fb: FormBuilder,\n private instructorService: InstructorsService) {\n this.newPasswordGroup = this.fb.group({\n newPassword: ['', [Validators.required, Validators.pattern('^[a-zA-Zа-щА-ЩЬьЮюЯяЇїІіЄєҐґ0-9-_\\\\!\\\\@\\\\#\\\\$\\\\%\\\\^&\\\\*]{6,12}$')]],\n });\n }\n\n ngOnInit(): void {\n this.getUser();\n this.getLocations();\n }\n\n ngOnDestroy(): void {\n this.subscriptions.unsubscribe();\n }\n\n getLocations(): void {\n this.spinner.show();\n this.cityService.getCities().subscribe(result => {\n result.forEach(city => {\n this.optionsOne.push({id: city.id as string, value: city.name as string});\n this.optionsTwo.push({id: city.id as string, value: city.name as string});\n });\n }, error => {\n console.log(error);\n }, () => {\n this.spinner.hide();\n this.isValiable = true;\n });\n }\n\n getUser(): void {\n this.spinner.show();\n try {\n this.instructorService.getTripBookingsProgress().subscribe((trips: TripBookingProgress) => {\n if (trips.tripStatuses.length >= 1) {\n this.isPractice = true;\n console.log(trips.tripStatuses.length);\n }\n });\n }\n catch (e) {\n console.log(e);\n }\n\n this.subscriptions.add(this.userService.getUser().subscribe((user: UserInfirmation) => {\n this.userInfo = user;\n this.imagePath = user.imagePath;\n this.fullName = user.fullName;\n if (user.location) {\n if (user.location.cityLocation.id && user.location.cityPractice.id) {\n this.cityShown = true;\n this.selectedPractice = user.location.cityPractice.id;\n this.selectedLocation = user.location.cityLocation.id;\n }\n }\n\n }, error => {\n // error during done subscribe\n }, () => {\n // After complete subscribe\n this.spinner.hide();\n }));\n }\n\n changePassword(): void {\n this.error = false;\n this.errorPassword = false;\n this.spinner.show();\n this.subscriptions.add(this.userService.changePassword({\n currentPassword: this.currentPassword,\n newPassword: this.newPasswordGroup.getRawValue().newPassword\n }).subscribe(() => {\n\n this.spinner.hide();\n this.newPasswordGroup.getRawValue().newPassword = null;\n this.currentPassword = '';\n this.changingPassword = false;\n this.successPassword = true;\n setTimeout(() => {\n this.successPassword = false;\n }, 4000);\n }, () => {\n this.error = true;\n }));\n if (this.error && !this.newPasswordGroup.controls.newPassword.invalid) {\n this.changingPassword = false;\n\n this.newPasswordGroup.getRawValue().newPassword = '';\n }\n }\n\n cancelNewPassword(): void {\n this.changingPassword = false;\n this.errorPassword = false;\n this.newPasswordGroup.getRawValue().newPassword = '';\n }\n\n changeMode(mode): void {\n this.edit = mode;\n if (mode) {\n this.imagePath = this.userInfo.imagePath;\n this.fullName = this.userInfo.fullName;\n }\n this.router.navigate(['/home/dashboard']);\n }\n\n changeInfo(): void {\n if (this.selectedLocation && !this.selectedPractice)\n {\n this.practicePlaceholder = 'Виберіть місто...';\n const el = document.getElementById('practice');\n el.style.border = 'red 1px solid';\n el.style.borderRadius = '5px';\n return;\n }\n else if (!this.selectedLocation && this.selectedPractice)\n {\n this.locationPlaceholder = 'Виберіть місто...';\n const el = document.getElementById('location');\n el.style.border = 'red 1px solid';\n el.style.borderRadius = '5px';\n return;\n }\n this.spinner.show();\n this.userService.editUserInfo({\n imagePath: this.imagePath,\n fullName: this.fullName,\n cityLocationId: this.selectedLocation,\n cityPracticeId: this.selectedPractice\n }).subscribe(() => {\n this.changeMode(false);\n this.getUser();\n\n }, () => { this.spinner.hide(); },\n () => { this.spinner.hide(); });\n\n this.router.navigate(['/home/dashboard']);\n }\n\n\n fileChangeEvent(event: any): void {\n const dialogConfig = new MatDialogConfig();\n dialogConfig.data = {\n imageChangedEvent: event,\n };\n const dialogRef = this.matDialog.open(CropImageComponent, dialogConfig);\n dialogRef.afterClosed().subscribe(result => {\n if (result?.image) {\n this.uploadImg(result.image);\n }\n });\n }\n\n uploadImg(image): void {\n this.spinner.show();\n this.subscriptions.add(this.userService.uploadPhoto(image).subscribe(res => {\n this.imagePath = res;\n }, error => {\n // error during done subscribe\n }, () => {\n // After complete subscribe\n this.spinner.hide();\n }));\n }\n\n changeColor(practice: string): void {\n document.getElementById(practice).style.border = 'none';\n }\n}\n","
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n
\n \n \n \n
\n \n \n
\n
\n
\n
\n
{{'USER.NAME' | translate}}
\n \n
\n
\n
{{'USER.EMAIL' | translate}}
\n \n
\n
\n
\n
\n
Ваше місце розташування
\n \n \n {{city.value}}\n \n \n
\n
\n
Місто для практичних уроків
\n \n \n {{city.value}}\n \n \n {{userInfo.location.cityPractice.name}}\n
\n
\n
\n
\n
\n
\n
{{'USER.OLD_PASSWORD' | translate}}
\n \n
\n
\n
{{'USER.NEW_PASSWORD' | translate}}
\n \n
\n {{'USER.ERROR_PASSWORD' | translate}}
\n
\n
\n \n \n
\n
\n
\n
\n \n \n \n
\n
\n
\n\n
\n \n {{'USER.SUCCESS_PASSWORD_CHANGE' | translate}}\n
\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-regirect-page',\n templateUrl: './redirect-page.component.html',\n styleUrls: ['./redirect-page.component.scss']\n})\nexport class RedirectPageComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","import {UploadOutput, UploadInput, UploadFile, humanizeBytes, UploaderOptions} from 'ngx-uploader';\nimport {EventEmitter} from '@angular/core';\nimport {NgxSpinnerService} from 'ngx-spinner';\nimport { StorageService } from '../../core/services/storage.service';\nimport { Config } from '../property/constant';\nimport { propToLocalStorage } from '../decorators/storage.decorator';\n\nexport class UploadImg {\n\n fileUploaded: any;\n options: UploaderOptions;\n files: UploadFile[];\n uploadInput: EventEmitter;\n dragOver: boolean;\n\n @propToLocalStorage('token')\n public token;\n\n constructor(public spinner: NgxSpinnerService, storageService: StorageService) {\n this.options = {concurrency: 10, maxUploads: 10};\n this.files = []; // local uploading files array\n this.uploadInput = new EventEmitter(); // input events, we use this to emit data to ngx-uploader\n }\n\n // Upload IMG\n onUploadOutput(output: UploadOutput, queryType, folderType?, imgType?) {\n this.spinner.show();\n if (output.type === 'allAddedToQueue') {\n switch (queryType) {\n case 'img': {\n this.uploadImg(folderType);\n break;\n }\n case 'video': {\n this.uploadVideo();\n break;\n }\n case 'file': {\n this.uploadFile();\n break;\n }\n }\n } else if (output.type === 'addedToQueue' && typeof output.file !== 'undefined') { // add file to array when added\n this.files.push(output.file);\n } else if (output.type === 'uploading' && typeof output.file !== 'undefined') {\n // update current data in files array for uploading file\n const index = this.files.findIndex(file => typeof output.file !== 'undefined' && file.id === output.file.id);\n this.files[index] = output.file;\n } else if (output.type === 'removed') {\n // remove file from array when removed\n this.files = this.files.filter((file: UploadFile) => file !== output.file);\n } else if (output.type === 'dragOver') {\n this.dragOver = true;\n } else if (output.type === 'dragOut') {\n this.dragOver = false;\n } else if (output.type === 'drop') {\n this.dragOver = false;\n } else if (output.type === 'done') {\n this.fileUploaded = output.file.response;\n this.uploadResponse(this.fileUploaded, this.files, queryType, imgType);\n this.spinner.hide();\n }\n }\n\n uploadImg(folderType) {\n const event: UploadInput = {\n type: 'uploadAll',\n url: Config.apiUrl() + 'studentpersonaldetails/documents/upload',\n method: 'POST',\n fieldName: 'image',\n headers: {\n folder: folderType,\n Authorization: 'Bearer ' + this.token.token\n }\n };\n this.uploadInput.emit(event);\n }\n\n uploadResponse(file?, files?, queryType?, imgType?): void {\n }\n\n uploadVideo(): void {\n const event: UploadInput = {\n type: 'uploadAll',\n url: Config.apiUrl() + 'Upload/video',\n method: 'POST',\n data: {foo: 'bar'}\n };\n this.uploadInput.emit(event);\n }\n\n uploadFile(): void {\n const event: UploadInput = {\n type: 'uploadAll',\n url: Config.apiUrl() + 'Upload/file',\n method: 'POST',\n data: {foo: 'bar'}\n };\n this.uploadInput.emit(event);\n }\n}\n","import { Component, ElementRef, Input, OnDestroy, OnInit, ViewChild } from '@angular/core';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { AnimationBuilder } from '@angular/animations';\nimport { LecturesService } from '../../../modules/course/services/lectures.service';\nimport { StorageService } from '../../../core/services/storage.service';\nimport { LectureProgress } from '../../modules/LecturePorogress';\nimport { FinalTestService } from '../../../modules/course/services/final-test.service';\nimport { NgxSpinnerService } from 'ngx-spinner';\nimport { LectureView } from '~/src/app/shared/interfaces/lecture-view';\n\n@Component({\n selector: 'app-finished-test',\n templateUrl: './finished-test.component.html',\n styleUrls: ['./finished-test.component.scss'],\n animations: [],\n})\nexport class FinishedTestComponent implements OnInit, OnDestroy {\n\n @Input() testInformation: any;\n @Input() testKind: string;\n @Input() link: string;\n @Input() finalTest: boolean;\n @Input() TestFromLecture: string;\n @Input() nextLecture: any;\n @Input() testStatus: string;\n @Input() finalTestId: string;\n @Input() sessionId: string;\n trialTest: boolean;\n test: number;\n number = 0;\n licenseCategory;\n courses;\n curentLection;\n lectureProgress: LectureProgress = {\n lectureId: '',\n rightAnswersCount: 0\n };\n nextLectionIndex: number;\n currentOpen;\n session = {\n testType: 0,\n trafficRulesTestsTicketId: ''\n };\n wasteTime: boolean;\n treeError: boolean;\n @ViewChild('movieList') movieList: ElementRef;\n\n constructor(private router: Router,\n public builder: AnimationBuilder,\n public lectureService: LecturesService,\n private storageService: StorageService,\n private activatedRoute: ActivatedRoute,\n private finalTestService: FinalTestService,\n private spinner: NgxSpinnerService) {\n this.trialTest = this.storageService.get('trialTest').value;\n setInterval(() => {\n if (this.number < this.test && this.test !== 0) {\n this.number++;\n }\n }, 50);\n }\n\n ngOnDestroy(): void {\n if (this.finalTest && this.test >= 90) {\n this.finalTestService.postSession(this.sessionId).subscribe((() => {\n }));\n }\n }\n\n ngOnInit(): void {\n this.wasteTime = this.storageService.get('wasteTime').value;\n this.treeError = this.storageService.get('treeError').value;\n this.currentOpen = this.storageService.get('openComent')?.value;\n this.test = Math.round(this.testInformation?.correctAnswers.length * 100 / this.testInformation?.allTestsLength);\n this.verifyTestKind();\n this.licenseCategory = this.storageService.get('license-category').value;\n if (this.testStatus === 'lecture') {\n this.lectureService.getLectures(this.licenseCategory.id).subscribe((res: LectureView[]) => {\n this.courses = res;\n this.nextLecture = this.courses[this.courses.findIndex((element) => {\n return element.id === this.activatedRoute.snapshot.params.id;\n }) + 1];\n this.curentLection = this.courses[this.courses.findIndex((element) => {\n return element.id === this.activatedRoute.snapshot.params.id;\n })];\n this.nextLectionIndex = this.courses.indexOf(this.curentLection) + 1;\n if (this.test >= 90 && this.nextLecture !== undefined && this.nextLecture !== null) {\n this.storageService.set('openComent', this.courses.indexOf(this.curentLection) + 1);\n }\n\n if (this.testStatus === 'lecture') {\n this.lectureProgress.lectureId = this.curentLection.id;\n this.lectureProgress.rightAnswersCount = this.testInformation?.correctAnswers.length;\n this.lectureService.saveLectureProgress(this.lectureProgress).subscribe(() => {\n });\n }\n });\n }\n\n }\n\n verifyTestKind(): void {\n if (this.testKind === undefined) {\n this.testKind = 'TESTS.BACK_TO_TEST';\n }\n }\n\n reloadPage(): void {\n window.location.reload();\n }\n\n changeUrl(): void {\n this.spinner.show();\n this.router.navigate([this.link]);\n }\n\n openNextLecture(link): void {\n if (this.trialTest) {\n this.storageService.set('continue-learning', true);\n this.router.navigate(['/home/course/courses']);\n } else {\n this.storageService.set('openComent', this.nextLectionIndex);\n this.router.navigate(['/home/course/lecture-view/' + link]);\n }\n }\n\n nextLectureStatus(): boolean {\n return this.test >= 90 &&\n this.nextLecture !== undefined &&\n this.nextLecture !== null;\n }\n}\n\n","
= 90) ? '770px' : ''}\"\n class=\"finished-test-container\">\n
\n
= 90\"\n class=\"final-test\">
\n
= 90)}\"\n class=\"content-bottom\">\n
= 90 ? '44' : ''}\"\n class=\"bottom-left-side\">\n
\n
{{number}}%
\n \n
\n
\n
\n
\n

= 90\"\n class=\"final-test-title\">Вітаємо!

\n

= 90\"\n class=\"final-test-subtitle\">Ви успішно склали тест

\n {{'FINISHED_TEST.YOUR_RESULT' | translate}}\n \n {{testInformation?.correctAnswers.length}}/{{testInformation?.allTestsLength}}\n \n
\n
\n = 1; else other_star1\">\n \"\"\n \n \n \"\"\n \n = 20; else other_star2\">\n \"\"\n \n \n \"\"\n \n = 50; else other_star3\">\n \"\"\n \n \n \"\"\n \n = 75; else other_star4\">\n \"\"\n \n \n \"\"\n \n = 90; else other_star5\">\n \"\"\n \n \n \"\"\n \n
\n
= 90)\"\n class=\"success-test\">{{'FINISHED_TEST.SUCCESS_TEST' | translate}}
\n

Час вичерпано.
Нажаль тест не складено!

\n

Ви зробили три помилки.
Нажаль тест не складено!

\n

{{'FINISHED_TEST.FAILURE_TEST' | translate}}

\n

{{'FINISHED_TEST.SUCCESS_PERCENTAGE' | translate}}

\n

= 90 && !treeError && !wasteTime\"\n class=\"final-result\">\n Ви завершили навчання в автошколі RomDomDom. Найблищим часом на вашу електронну адресу будуть надіслані усі\n необхідні документи для складання іспиту в сервісному центрі МВС\n

\n\n
\n
\n \n \n\n

{{'FINISHED_TEST.GO_TO' | translate}} {{testKind}}

\n\n
\n\n= 90\">\n \n \n \n \n \n\n\n\n \n \n \n \n \n\n","import { Component, Input, OnInit } from '@angular/core';\nimport { Instructor } from '../../interfaces/instructor';\nimport { Config } from '../../property/constant';\nimport { TransmissionType } from '../../../../_shared/constants/transmissionType';\n\n@Component({\n selector: 'app-full-instructor-information',\n templateUrl: './full-instructor-information.component.html',\n styleUrls: ['./full-instructor-information.component.scss',\n '/src/app/modules/practice/practice.scss']\n})\nexport class FullInstructorInformationComponent implements OnInit {\n @Input() centerInformation: boolean;\n @Input() bigImage: boolean;\n @Input() instructor: Instructor;\n @Input() instructorDistrict: string;\n @Input() noSpliceInformation: boolean;\n transmissionType: Array;\n prefixImgPath = Config.storageUrl();\n instructorInformation: Array;\n\n constructor() {\n }\n\n ngOnInit(): void {\n this.transmissionType = TransmissionType.value();\n this.instructorInformation = [{\n sign: 'PRACTICE.INSTRUCTOR_INFORMATION.CAR',\n value: this.instructor.vehicle ? this.instructor.vehicle.name : this.instructor.vehicleName\n }, {\n sign: 'PRACTICE.INSTRUCTOR_INFORMATION.VEHICLE',\n value: this.transmissionType[this.instructor.vehicle ?\n this.instructor.vehicle.transmissionType : this.instructor.vehicleTransmissionType]\n }, {\n sign: 'PRACTICE.INSTRUCTOR_INFORMATION.YEAR',\n value: this.instructor.vehicle ? this.instructor.vehicle.manufactureYear : this.instructor.vehicleManufacturerYear\n }, {\n sign: 'PRACTICE.INSTRUCTOR_INFORMATION.NUMBER',\n value: this.instructor.vehicle ? this.instructor.vehicle.stateNumber : this.instructor.vehicleStateNumber\n }, {\n sign: 'PRACTICE.INSTRUCTOR_INFORMATION.DISTRICT',\n value: this.instructorDistrict ? this.instructorDistrict : this.instructor.district\n },\n ];\n }\n\n\n}\n","
\n \n\n \n \n \n\n
\n {{instructor.firstName ? instructor.firstName : instructor.instructorFirstName}} {{instructor.lastName ? instructor.lastName : instructor.instructorLastName}}

\n \n \n \n \n \n
{{info.sign | translate }}{{info.value}}
\n
\n
\n","import { Component, Input, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-reject-application',\n templateUrl: './reject-application.component.html',\n styleUrls: ['./reject-application.component.scss']\n})\nexport class RejectApplicationComponent implements OnInit {\n @Input() rejectText: string;\n\n constructor() {\n }\n\n ngOnInit(): void {\n }\n\n}\n","
\n
\n
\n \n
\n
\n
\n

\n Ваша заявка на навчання не підтверджена\n

\n

\n {{rejectText}}\n

\n
\n \n
\n
\n
\n","import { Component, Input, OnInit } from '@angular/core';\nimport { Instructor } from '../../interfaces/instructor';\nimport { Config } from '../../property/constant';\nimport { TransmissionType } from '../../../../_shared/constants/transmissionType';\n\n@Component({\n selector: 'app-short-instructor-information',\n templateUrl: './short-instructor-information.component.html',\n styleUrls: ['./short-instructor-information.component.scss',\n '/src/app/modules/practice/practice.scss']\n})\nexport class ShortInstructorInformationComponent implements OnInit {\n @Input() background: boolean;\n @Input() instructor: Instructor;\n @Input() drivingStatus: boolean;\n prefixImgPath = Config.storageUrl();\n transmissionType: Array;\n loadImg = true;\n instructorInformation: Array;\n\n constructor() {\n this.transmissionType = TransmissionType.value();\n }\n\n ngOnInit(): void {\n this.instructorInformation = [{\n sign: 'PRACTICE.INSTRUCTOR_INFORMATION.CAR',\n value: this.instructor.vehicle ? this.instructor.vehicle.name : this.instructor.vehicleName\n }, {\n sign: 'PRACTICE.INSTRUCTOR_INFORMATION.VEHICLE',\n value: this.transmissionType[this.instructor.vehicle ?\n this.instructor.vehicle.transmissionType : this.instructor.vehicleTransmissionType]\n }, {\n sign: 'PRACTICE.INSTRUCTOR_INFORMATION.YEAR',\n value: this.instructor.vehicle ? this.instructor.vehicle.manufactureYear : this.instructor.vehicleManufacturerYear\n }];\n }\n\n spinnerEvent(event): void {\n setTimeout(() => {\n this.loadImg = !this.loadImg;\n }, 10);\n\n }\n}\n","
\n \n \n 1 && instructor.status < 5 \"\n class=\"driving-status\"\n src=\"../../../assets/icons/ok-circle-danger.svg\"\n />\n \n\n \n
\n
\n \n
\n \n
\n
\n
\n {{instructor.firstName ? instructor.firstName : instructor.instructorFirstName}} {{instructor.lastName ? instructor.lastName : instructor.instructorLastName}}

\n \n \n \n \n \n\n
{{information.sign | translate}}{{information.value}}
\n
\n
\n","import { Component, Input, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-social-information',\n templateUrl: './social-information.component.html',\n styleUrls: ['./social-information.component.scss']\n})\nexport class SocialInformationComponent implements OnInit {\n @Input() drivingInformation: boolean;\n @Input() line: boolean;\n\n constructor() {\n }\n\n ngOnInit(): void {\n }\n\n}\n","\n
\n
\n \n

+38 0(67) 67 88 0003

\n
\n","import { Component, Input, OnInit } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { MatDialog, MatDialogConfig } from '@angular/material/dialog';\nimport { VideoPlayerComponent } from '../../dialogs/video-player/video-player.component';\n\n@Component({\n selector: 'app-start-learning',\n templateUrl: './start-learning.component.html',\n styleUrls: ['./start-learning.component.scss']\n})\nexport class StartLearningComponent implements OnInit {\n @Input() statusData: string;\n\n constructor(private router: Router,\n private matDialog: MatDialog) {\n }\n\n ngOnInit(): void {\n }\n\n start(): void {\n if (this.statusData === 'pr')\n {\n this.router.navigate([`/home/practice/practical-training`]);\n }\n else {\n this.router.navigate([`/start-learning/choose-city`]);\n }\n }\n\n openVideo(): void {\n const dialogConfig = new MatDialogConfig();\n const dialogRef = this.matDialog.open(VideoPlayerComponent, dialogConfig);\n dialogRef.afterClosed().subscribe(() => {\n });\n }\n}\n","
\n
\n
\n
\n \n \n
\n
\n
\n
\n
\n
\n

\n Розпочніть навчання\n

\n
\n

Щоб дізнатися як відбувається навчання в онлайн-автошколі перегляньте ролик та пройдіть\n першу безкоштовну лекцію

\n
\n
\n
\n

Практичні заняття

\n
\n
\n

В цьому розділі ви можете обирати інструктора, учбовий автомобіль та зручні вам час і місце для практичних\n занять

\n

Для доступу до практичних занять потрібно зареєстуватись на навчальний курс та\n пройти необхідну кількість лекцій теорії

\n
\n
\n
\n
\n

Практичні заняття

\n
\n
\n

В цьому розділі вам не доступні лекції

\n

Для продовження навчання, перейдіть на сторінку з практичними занатями

\n
\n
\n \n
\n
\n
\n","import { AfterViewInit, Component, Input, OnChanges, OnInit, Output } from '@angular/core';\nimport { InstructorsService } from '../../../modules/practice/services/instructors.service';\nimport { newArray } from '@angular/compiler/src/util';\nimport { TripStatuses } from '../../../../_shared/constants/tripStatuses';\nimport { HttpErrorResponse } from '@angular/common/http';\nimport { NgxSpinnerService } from '~/node_modules/ngx-spinner';\nimport { EventEmitter } from '~/node_modules/@angular/core';\nimport { TripStatus } from '~/src/app/shared/interfaces/trip-status';\nimport { TripBookingProgress } from '~/src/app/shared/interfaces/tripBookingProgress';\nimport { LicenseCategoriesService } from '../../../modules/training-materials/services/license-categories.service';\n\n@Component({\n selector: 'app-student-progress',\n templateUrl: './student-progress.component.html',\n styleUrls: ['./student-progress.component.scss']\n})\nexport class StudentProgressComponent implements OnInit, OnChanges, AfterViewInit {\n @Input() noRegister: boolean;\n @Input() value: number;\n @Input() progressBarWidth: number;\n @Input() drivingValues: number;\n @Input() practiseArray: Array;\n @Input() noResultInfo: boolean;\n @Input() startProgress: number;\n @Input() page: number;\n @Input() tripCount: number;\n @Output() allPractice = new EventEmitter();\n statuses: Array;\n tripStatus: TripStatus[];\n successTrip: number;\n isPartialPayment: any;\n\n constructor(private instructorsService: InstructorsService,\n private spinner: NgxSpinnerService,\n private paymentService: LicenseCategoriesService) {\n this.tripStatus = TripStatuses.value();\n }\n\n ngAfterViewInit(): void {\n if (this.startProgress === undefined || this.startProgress > 0) {\n this.getProgress();\n }\n }\n\n ngOnInit(): void {\n }\n\n ngOnChanges(changes): void {\n if (changes && changes.startProgress && changes.startProgress.currentValue) {\n this.getProgress();\n }\n }\n\n getProgress(): void {\n if (this.startProgress === undefined || this.startProgress > 0) {\n this.instructorsService.getTripBookingsProgress().subscribe((el: TripBookingProgress) => {\n this.tripCount = el.tripsLimit;\n this.practiseArray = newArray(this.tripCount);\n this.statuses = el.tripStatuses;\n this.successTrip = this.statuses.filter((elem: number) => elem === 5).length;\n if (this.successTrip >= 10) {\n this.allPractice.emit(true);\n }\n }, (error: HttpErrorResponse) => {\n this.spinner.hide();\n this.practiseArray = newArray(10);\n });\n } else {\n this.practiseArray = newArray(10);\n }\n\n }\n}\n","
\n\n
\n
\n

{{'COURSE.ADDING_INFORMATION.THEORY' | translate}}

\n 0 && value < 100 && !noRegister\"\n [ngStyle]=\"{'left.px':value < 80 ? ((255-35)*value)/100 : 0,\n 'color':'#051C2C',\n 'font-family': 'Gotham Pro Bold'}\"\n class=\"inscription-position\">{{value}}%\n \n \n 0 && !noRegister;else zero_result\"\n [ngClass]=\"{'bold':value === 100}\"\n [ngStyle]=\"{'left.px':-30}\"\n class=\"inscription-position\">100%\n \n 0%\n \n
\n
\n

{{'COURSE.ADDING_INFORMATION.PRACTICE' | translate}}

\n
{{successTrip > 0 ? successTrip : 0}} з {{tripCount}}\n
\n 12 && practiseArray.length < 20\"\n [class.progressWidth3]=\"practiseArray.length > 19 && practiseArray.length < 25\"\n [class.progressWidth4]=\"practiseArray.length > 25\"\n [ngClass]=\"{'success-drive':i < drivingValues}\"\n [ngStyle]=\"{'background': tripStatus && statuses && i < statuses.length ? tripStatus[statuses[i]].color : '',\n 'border-color': tripStatus && statuses && i < statuses.length ? tripStatus[statuses[i]].color : ''}\"\n class=\"lesson\">\n
\n
\n","import { Component, Input, OnChanges, OnInit, Output } from '@angular/core';\nimport { MatDialog, MatDialogConfig } from '@angular/material/dialog';\nimport { HintsComponent } from '../../dialogs/hints/hints.component';\nimport { TestItem } from '../../modules/test-item';\nimport { TestsOnThemesService } from '../../../modules/tests/services/tests-on-themes.service';\nimport { Config } from '../../property/constant';\nimport { StorageService } from '../../../core/services/storage.service';\nimport { NgxSpinnerService } from 'ngx-spinner';\nimport { FinalTestService } from '../../../modules/course/services/final-test.service';\nimport { TestImageViewComponent } from '~/src/app/shared/dialogs/test-image-view/test-image-view.component';\nimport { EventEmitter } from '~/node_modules/@angular/core';\n\n@Component({\n selector: 'app-test-item',\n templateUrl: './test-item.component.html',\n styleUrls: ['./test-item.component.scss'],\n\n})\nexport class TestItemComponent implements OnInit, OnChanges {\n\n @Input() testItem: TestItem;\n @Input() isStartTest = false;\n @Input() finalTestId: string;\n @Input() finalTest;\n @Input() testInformation;\n @Input() sessionId: string;\n @Input() isImg: boolean;\n @Output() disabledButton = new EventEmitter();\n storagePath = Config.storageUrl();\n step = 0;\n scrollElement = false;\n isOpen = true;\n testHint: number;\n testSelect: number;\n falseAnswer = 0;\n testId: string;\n isItemComplete = false;\n loadImg: boolean;\n img: string;\n isFirefox: boolean;\n\n constructor(private matDialog: MatDialog,\n private testsOnThemesService: TestsOnThemesService,\n private storageService: StorageService,\n private spinner: NgxSpinnerService,\n private finalTestService: FinalTestService) {\n this.testHint = this.storageService.get('test-hint')?.value;\n this.testSelect = this.storageService.get('test-select')?.value;\n\n this.isFirefox = navigator.userAgent.indexOf(\"Firefox\") !== -1;\n }\n\n ngOnInit(): void {\n this.storageService.set('false-answer-count', 0);\n }\n\n ngOnChanges(changes): void {\n if (changes && changes.testItem && changes.testItem.currentValue) {\n this.isImg = true;\n this.isItemComplete = true;\n this.loadImg = true;\n this.testItem.isTestAvailable = true;\n }\n }\n\n setTestHint(): void {\n this.storageService.set('test-hint', 1);\n }\n\n setTestSelect(): void {\n this.storageService.set('test-select', 1);\n }\n\n scroll(el: HTMLElement): void {\n el.scrollIntoView({behavior: 'smooth'});\n this.scrollElement = true;\n }\n\n openHint(hint): void {\n const dialogConfig = new MatDialogConfig();\n const data = {\n hint\n };\n dialogConfig.data = data;\n const dialogRef = this.matDialog.open(HintsComponent, dialogConfig);\n dialogRef.afterClosed().subscribe(result => {\n });\n }\n\n openImage(imageUrl): void {\n const dialogConfig = new MatDialogConfig();\n const data = {\n imageUrl\n };\n dialogConfig.data = data;\n const dialogRef = this.matDialog.open(TestImageViewComponent, dialogConfig);\n dialogRef.afterClosed().subscribe(result => {\n });\n }\n\n checkAnswer(resId, questionId): void {\n if (questionId !== resId) {\n this.testItem.inCorrectAnswerId = questionId;\n this.testItem.isCorrectAnswer = false;\n this.testItem.testPassed = true;\n this.falseAnswer++;\n this.storageService.set('false-answer-count', this.falseAnswer);\n } else {\n this.testItem.isCorrectAnswer = true;\n this.testItem.testPassed = true;\n }\n }\n\n checkCorrectAnswer(testId, questionId): void {\n this.spinner.show();\n const answer: any = {};\n answer.sessionId = this.sessionId;\n answer.testId = testId;\n answer.answerId = questionId;\n this.disabledButton.emit(true);\n if (this.finalTest) {\n this.finalTestService.postAnswer(answer).subscribe((resId: string) => {\n this.testItem.correctAnswerId = resId;\n this.checkAnswer(resId, questionId);\n }, () => {\n }, () => {\n this.disabledButton.emit(false);\n });\n } else {\n this.testsOnThemesService.getCorrectAnswer(testId).subscribe((resId: string) => {\n this.testItem.correctAnswerId = resId;\n this.checkAnswer(resId, questionId);\n }, () => {\n }, () => {\n this.disabledButton.emit(false);\n });\n }\n this.spinner.hide();\n }\n\n enterKeyAnswer(event, index, testId, questionId): void {\n if ((+event.key === index + 1) && !this.testItem?.testPassed){\n this.checkCorrectAnswer(testId, this.testItem.questionAnswers[index].id);\n }\n }\n\n addDeleteFavouriteQuestion(question): void {\n this.spinner.show();\n if (question.isFavorite) {\n this.testsOnThemesService.deleteQuestionFromFavourite(question).subscribe((res: TestItem[]) => {\n this.testItem.isFavorite = false;\n this.spinner.hide();\n });\n } else {\n this.testsOnThemesService.addQuestionToFavourite(question).subscribe((res: TestItem[]) => {\n this.testItem.isFavorite = true;\n this.spinner.hide();\n });\n }\n }\n\n spinnerEvent(event): void {\n setTimeout(() => {\n this.loadImg = !this.loadImg;\n }, 50);\n\n }\n}\n","
\n
\n
\n

{{testItem?.question}}

\n
\n
\n
\n
\n
\n \n \n
\n \n
\n {{'DIALOGS.FAVOURITES.TITLE' | translate}}\n
\n
\n {{'DIALOGS.FAVOURITES.SUBTITLE' | translate}}\n
\n
\n \n
\n
\n
\n
\n
\n\n
\n \n
\n \n
\n {{'DIALOGS.TEST_HINT.TITLE' | translate}}\n
\n
\n {{'DIALOGS.TEST_HINT.SUBTITLE' | translate}}\n
\n
\n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n
\n \n
\n\n
\n
{{i + 1}}
\n
{{question?.description}}
\n
\n
\n
\n
\n
\n
\n
\n
\n\n","import { Component, OnInit } from '@angular/core';\nimport { Router } from '@angular/router';\n\n@Component({\n selector: 'app-wait-confirm',\n templateUrl: './wait-confirm.component.html',\n styleUrls: ['./wait-confirm.component.scss']\n})\nexport class WaitConfirmComponent implements OnInit {\n\n constructor(private router: Router) { }\n\n ngOnInit(): void {\n }\n trainingMaterial(): void{\n this.router.navigate([`/home/dashboard`]);\n }\n\n}\n","
\n
\n \n
\n
\n

Ваша заявка на навчання очікує підтвердження

\n

\n На вашу пошту буде надіслано лист з підтвердженням навчання в автошколі\n

\n \n
\n
\n","/**\n * Sync property with localStorage.\n * @param key\n */\nexport function propToLocalStorage(key: any = null) {\n return (target: any, propertyKey: string) => {\n const storageKey = key ? key : propertyKey;\n const { set } = Object.getOwnPropertyDescriptor(target, propertyKey) || {};\n\n const setValue = (value: any) => {\n window.localStorage.setItem(storageKey, JSON.stringify(value));\n if (set) {\n set(value);\n }\n }\n\n const getValue = () => {\n const value: any = window.localStorage.getItem(storageKey);\n\n return JSON.parse(value);\n }\n\n Object.defineProperty(target, propertyKey, {\n configurable: true,\n enumerable: true,\n get: getValue,\n set: setValue,\n });\n };\n}\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-book-classes',\n templateUrl: './book-classes.component.html',\n styleUrls: ['./book-classes.component.scss']\n})\nexport class BookClassesComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n\n}\n","import { Component, OnInit } from '@angular/core';\nimport { MatDialogRef } from '@angular/material/dialog';\n\n@Component({\n selector: 'app-cancel-registration',\n templateUrl: './cancel-registration.component.html',\n styleUrls: ['./cancel-registration.component.scss',\n '/src/app/shared/dialogs/dialogs.scss',\n '/src/app/style/buttons.scss']\n})\nexport class CancelRegistrationComponent implements OnInit {\n\n constructor(public dialogRef: MatDialogRef ) { }\n\n ngOnInit(): void {\n }\n\n closeDialog(result?): void {\n this.dialogRef.close(result);\n }\n\n}\n","
\n
\n

{{'DIALOGS.LEAVE_REGISTRATION.END' | translate}}

\n

{{'DIALOGS.LEAVE_REGISTRATION.RESULT' | translate}}

\n
\n \n \n
\n
\n
\n","import { Component, OnInit } from '@angular/core';\nimport { MatDialogRef } from '@angular/material/dialog';\n\n@Component({\n selector: 'app-change-password-type',\n templateUrl: './change-password-type.component.html',\n styleUrls: ['./change-password-type.component.scss',\n '/src/app/shared/dialogs/dialogs.scss',\n '/src/app/style/buttons.scss']\n})\nexport class ChangePasswordTypeComponent implements OnInit {\n\n\n constructor(public dialogRef: MatDialogRef) { }\n\n ngOnInit(): void {\n }\n\n closeDialog(result?): void {\n this.dialogRef.close(result);\n }\n\n\n}\n","
\n
\n

{{'DIALOGS.CHANGE_PASSWORD_TYPE.TITLE' | translate}}

\n
\n \n \n
\n
\n
\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-continue-learning',\n templateUrl: './continue-learning.component.html',\n styleUrls: ['./continue-learning.component.scss']\n})\nexport class ContinueLearningComponent implements OnInit {\n\n constructor( ) { }\n\n ngOnInit(): void {\n }\n\n}\n","
\n \n

Щоб продовжити навчання пройдіть повну реєстрацію

\n

Ви пройшли безкоштовно першу лекцію та успішно склали проміжний тест. Здійсніть реєстрацію щоб\n продовжити навчання.

\n
\n","import { Component, Inject, OnInit } from '@angular/core';\nimport { ImageCroppedEvent } from 'ngx-image-cropper';\nimport { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog';\n\n@Component({\n selector: 'app-crop-image',\n templateUrl: './crop-image.component.html',\n styleUrls: ['./crop-image.component.scss']\n})\nexport class CropImageComponent implements OnInit {\n\n imageChangedEvent = '';\n croppedImage = '';\n\n\n constructor(public dialogRef: MatDialogRef,\n @Inject(MAT_DIALOG_DATA) public data: any) { }\n\n ngOnInit(): void {\n this.imageChangedEvent = this.data.imageChangedEvent;\n }\n\n closeDialog(base64?): void {\n if (base64) {\n base64 = base64.replace('data:', '');\n const img = base64.split(';base64,');\n this.dialogRef.close({\n image: this.b64toBlob(img[1], img[0])\n });\n } else {\n this.dialogRef.close();\n }\n }\n\n imageCropped(event: ImageCroppedEvent): void {\n this.croppedImage = event.base64;\n }\n\n b64toBlob(b64Data, contentType = '', sliceSize = 512): Blob {\n const byteCharacters = atob(b64Data);\n const byteArrays = [];\n\n for (let offset = 0; offset < byteCharacters.length; offset += sliceSize) {\n const slice = byteCharacters.slice(offset, offset + sliceSize);\n\n const byteNumbers = new Array(slice.length);\n for (let i = 0; i < slice.length; i++) {\n byteNumbers[i] = slice.charCodeAt(i);\n }\n const byteArray = new Uint8Array(byteNumbers);\n byteArrays.push(byteArray);\n }\n\n const blob = new Blob(byteArrays, {type: contentType});\n return blob;\n }\n}\n","
\n\n
\n \n
\n
\n
\n \"croppedImage\"/\n
\n \n
\n
\n
\n
\n","import { Component, Inject, OnInit } from '@angular/core';\nimport { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog';\n\n@Component({\n selector: 'app-final-test',\n templateUrl: './final-test.component.html',\n styleUrls: ['./final-test.component.scss',\n '/src/app/shared/dialogs/dialogs.scss']\n})\nexport class FinalTestComponent implements OnInit {\n\n constructor(public dialogRef: MatDialogRef) { }\n\n ngOnInit(): void {\n }\n\n closeDialog(result?): void {\n this.dialogRef.close(result);\n }\n\n}\n","
\n
\n
\n \n 20:00\n
\n

Внутрішній тест

\n

Щоб отримати доступ до екзамену в МРЕО тобі потрібно успішно здати внутрішній тест у\n додатку.

\n

Ти маєш 20 хв на виконання всіх завдань та не більше трьох помилок. В іншому випадку тест буде\n автоматично не складено

\n

У разі не здачі ти можеш повторити тестування

\n \n
\n
\n","import { Component, Inject, OnInit } from '@angular/core';\nimport { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog';\n\n\n@Component({\n selector: 'app-hints',\n templateUrl: './hints.component.html',\n styleUrls: ['./hints.component.scss']\n})\nexport class HintsComponent implements OnInit {\n\n constructor(public dialogRef: MatDialogRef,\n @Inject(MAT_DIALOG_DATA) public data: any) {\n }\n\n ngOnInit(): void {\n }\n closeDialog(result?): void {\n this.dialogRef.close(result);\n }\n}\n","
\n \n
\n
\n \n
\n

{{'DIALOGS.HINT.TITLE' | translate}}

\n
\n
\n \n \n \n
\n \n
\n
\n
\n","import { Component, OnInit } from '@angular/core';\nimport { MatDialogRef } from '@angular/material/dialog';\n\n@Component({\n selector: 'app-leave-test',\n templateUrl: './leave-test.component.html',\n styleUrls: ['./leave-test.component.scss',\n '/src/app/style/buttons.scss']\n})\nexport class LeaveTestComponent implements OnInit {\n\n constructor(public dialogRef: MatDialogRef) {\n }\n\n ngOnInit(): void {\n }\n\n closeDialog(result?): void {\n this.dialogRef.close(result);\n }\n\n}\n","
\n
\n

{{'DIALOGS.LEAVE_TEST.TITLE' | translate}}

\n

{{'DIALOGS.LEAVE_TEST.SUBTITLE' | translate}}

\n \n \n
\n
\n","import { Component, Inject, OnInit } from '@angular/core';\nimport { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog';\n\n@Component({\n selector: 'app-mobile-version',\n templateUrl: './mobile-version.component.html',\n styleUrls: ['./mobile-version.component.scss',\n '/src/app/shared/dialogs/dialogs.scss']\n})\nexport class MobileVersionComponent implements OnInit {\n forGooglePlay: boolean;\n\n constructor(public dialogRef: MatDialogRef,\n @Inject(MAT_DIALOG_DATA) public data: any) {\n this.forGooglePlay = this.data.value;\n }\n\n ngOnInit(): void {\n }\n\n closeDialog(result?): void {\n this.dialogRef.close(result);\n }\n}\n","\n
\n \n
\n
\n

\n {{forGooglePlay ? ('DIALOGS.FOR_MOBILE_APP_STORE.TITLE'| translate) : 'DIALOGS.FOR_MOBILE_GOOGLE_PLAY.TITLE' | translate}}\n

\n
\n
\n

\n {{'DIALOGS.FOR_MOBILE.SUBTITLE' | translate}}\n

\n
\n \n
\n
\n

\n {{'DIALOGS.FOR_MOBILE.FOOTER' | translate}}\n

\n
\n
\n

{{forGooglePlay ? ' Google play' : 'AppStore'}}

\n
\n
\n
\n
\n","import { Component, OnInit, Output, EventEmitter } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { MatDialog } from '@angular/material/dialog';\nimport { StorageService } from '../../../core/services/storage.service';\nimport { PrivacyPolicy } from '../../../../_shared/constants/privacy-policy';\n\n@Component({\n selector: 'app-privacy-policy',\n templateUrl: './privacy-policy.component.html',\n styleUrls: ['./privacy-policy.component.scss',\n '/src/app/style/buttons.scss',\n '/src/app/style/material-components.scss']\n})\nexport class PrivacyPolicyComponent implements OnInit {\n forGooglePlay: boolean;\n confirmForm: FormGroup;\n text = PrivacyPolicy.value();\n @Output() confirmPrivacy: EventEmitter = new EventEmitter();\n\n constructor(private fb: FormBuilder,\n private storageService: StorageService) {\n this.confirmForm = this.fb.group({\n first: [false, [Validators.required, Validators.pattern('true')]],\n second: [false, [Validators.required, Validators.pattern('true')]],\n });\n }\n\n ngOnInit(): void {\n }\n\n confirm(): void {\n this.confirmPrivacy.emit(true);\n this.storageService.set('privacy', true);\n }\n}\n","
\n
\n
\n
\n \n

Політика конфіденційності

\n
\n\n \n
\n\n
\n
\n
\n

\n Ця Політика конфіденційності персональних даних (далі — Політика конфіденційності) діє відносно всієї\n інформації, розміщеної на сайті в мережі Інтернет за адресою: www.romdomdom.in.ua (далі — Сайт), яку\n користувачі та відвідувачі Сайту (далі — «Ви») можуть отримати про Вас під час використання Сайту, його\n сервісів, програм та матеріалів (далі — «Послуга»).\n

\n

\n www.romdomdom.in.ua - це сайт, адміністратором (оператором) якого є фізична особа - підприємець Степаник\n Наталія Ярославівна. (далі — «Ми»). Ми зареєстровані за законодавством України (дата та номер запису про\n проведення державної реєстрації: 30 серпня 2019 року, 24150000000102749), місцезнаходження офісу: Україна,\n 79066 м. Львів, вул. Сихівська, 20.\n

\n

Використання Послуг означає Вашу письмову згоду на обробку Ваших персональних даних відповідно до Політики\n конфіденційності, а також Вашу беззастережну згоду з умовами Політики конфіденційності. У разі незгоди з\n цими умовами Ви маєте утриматися від використання Послуги.\n

\n
\n
    \n
  1. \n

    {{item.theme}}

    \n
      \n
    1. \n

      \n {{themeItem.text}} {{themeItem.url}}{{themeItem.text2}}\n {{themeItem.url2}}\n

      \n
        \n
      • \n

        \n {{itemContent.definition}}{{itemContent.itemText}} {{itemContent.url}}\n {{itemContent.itemTextSecondPart}}\n

        \n
      • \n
      \n

      {{themeItem.addingInformation}}

      \n
    2. \n
    \n
  2. \n
\n
\n

Редакція: квітень 2021 року

\n
\n
\n
\n
\n

Перед реєстрацією:

\n
\n Я повністю приймаю умови публічної оферти (пропозиції) про надання\n послуг\n \n Я приймаю умови конфіденційності\n \n
\n
\n
\n
\n
\n
\n","import { Component, Inject, OnInit } from '@angular/core';\nimport { MAT_DIALOG_DATA, MatDialog, MatDialogRef } from '@angular/material/dialog';\nimport { Router } from '@angular/router';\n\n@Component({\n selector: 'app-registration-data',\n templateUrl: './registration-data.component.html',\n styleUrls: ['./registration-data.component.scss',\n '/src/app/shared/dialogs/dialogs.scss']\n})\nexport class RegistrationDataComponent implements OnInit {\n\n constructor(public dialogRef: MatDialogRef) {\n }\n\n ngOnInit(): void {\n }\n\n closeDialog(result?): void {\n this.dialogRef.close(result);\n }\n\n\n}\n","
\n \n\n
\n
\n
\n

Дізнайся все про навчання в одному ролику

\n \n
\n
\n
\n
\n
\n Отримай водійське посвідчення за кілька кліків\n
\n

Питання, що представлені на нашому сайті і у мобільних застосунках повністю:

\n

Питання, що представлені на нашому сайті і у мобільних застосунках повністю:

\n

Питання, що представлені на нашому сайті і у мобільних застосунках повністю:

\n
\n \n
\n
\n
\n","import { Component, Inject, OnInit } from '@angular/core';\nimport { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog';\nimport { InstructorsService } from '../../../modules/practice/services/instructors.service';\n\n\n@Component({\n selector: 'app-reject-lesson',\n templateUrl: './reject-lesson.component.html',\n styleUrls: ['./reject-lesson.component.scss',\n '/src/app/shared/dialogs/dialogs.scss']\n})\nexport class RejectLessonComponent implements OnInit {\n id: string;\n status: number;\n\n constructor(public dialogRef: MatDialogRef,\n public instructorService: InstructorsService,\n @Inject(MAT_DIALOG_DATA) public data: any) {\n this.id = data.id;\n this.status = data.status;\n }\n\n ngOnInit(): void {\n }\n\n closeDialog(result?): void {\n if (result) {\n this.instructorService.rejectLesson(this.id).subscribe(() => {\n this.dialogRef.close(result);\n });\n } else {\n this.dialogRef.close(result);\n }\n }\n}\n","
\n
\n

Ви дійсно бажаєте скасувати поїздку?

\n
\n

\n Заняття буде не зараховане, якщо ви скасуєте бронювання. У разі наявності поважної причини повідомте\n адміністратора\n

\n
\n
\n \n \n
\n
\n
\n","import { Component, Inject, OnInit } from '@angular/core';\nimport { MAT_DIALOG_DATA, MatDialog, MatDialogRef } from '@angular/material/dialog';\n\n@Component({\n selector: 'app-rejected-lesson-information',\n templateUrl: './rejected-lesson-information.component.html',\n styleUrls: ['./rejected-lesson-information.component.scss',\n '/src/app/shared/dialogs/dialogs.scss']\n})\nexport class RejectedLessonInformationComponent implements OnInit {\n status: number;\n\n constructor(public dialogRef: MatDialogRef,\n @Inject(MAT_DIALOG_DATA) public data: any\n ) {\n this.status = 1;\n if (data) {\n this.status = data;\n }\n }\n\n ngOnInit(): void {\n }\n\n closeDialog(result?): void {\n this.dialogRef.close(result);\n }\n}\n","
\n \n
\n
\n \n
\n
\n \n
\n
\n

Ви скасували поїздку

\n
\n

Приносимо вибачення!

\n

З технічних причин заняття не відбудеться

\n
\n

Ваше заняття не зараховане

\n

Ви не можете забронювати поїздку

\n
\n
\n
\n

Щоб завершити навчання вам потрібно пройти усі 10 занять. Для\n відновлення практичного заняття необхідно повідомити службу підтримки\n

\n

Забронюйте нову поїздку

\n

У вас більше не залишилося доступних поїздок. Для відновлення практичних занять\n необхідно повідомити службу підтримки

\n
\n
\n \n
\n
\n","import { Component, Inject, OnInit } from '@angular/core';\nimport { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog';\nimport { LicenseCategoriesService } from '../../../modules/training-materials/services/license-categories.service';\nimport { ILicenseCategory } from '../../interfaces/licenseCategory';\nimport { NgxSpinnerService } from 'ngx-spinner';\nimport {error} from \"protractor\";\n\n\n@Component({\n selector: 'app-select-category',\n templateUrl: './select-category.component.html',\n styleUrls: ['./select-category.component.scss',\n '/src/app/shared/dialogs/dialogs.scss']\n})\nexport class SelectCategoryComponent implements OnInit {\n categoryIndex: string;\n licence: ILicenseCategory[];\n\n constructor(public dialogRef: MatDialogRef,\n @Inject(MAT_DIALOG_DATA) public data: any,\n private licenseService: LicenseCategoriesService,\n private spinner: NgxSpinnerService) {\n this.categoryIndex = this.data.category.name;\n }\n\n ngOnInit(): void {\n this.spinner.show();\n this.licenseService.getLicense().subscribe((res: ILicenseCategory[]) => {\n this.licence = res;\n }, ()=>{\n\n }, ()=>{\n this.spinner.hide();\n });\n }\n\n closeDialog(result?): void {\n this.dialogRef.close(result);\n }\n\n saveChanges(): void {\n const index = this.licence.findIndex((el: ILicenseCategory) => el.name.includes(this.categoryIndex));\n this.dialogRef.close(this.licence[index]);\n }\n\n}\n","
\n \n
\n

{{'DIALOGS.SELECT_CATEGORY.TITLE' | translate}}

\n \n
\n \n \n \n \n {{licen.name}}\n \n
\n
\n \n
\n
\n","import { Component, OnInit } from '@angular/core';\nimport { MatDialog, MatDialogRef } from '@angular/material/dialog';\n\n@Component({\n selector: 'app-success-registration',\n templateUrl: './success-registration.component.html',\n styleUrls: ['./success-registration.component.scss']\n})\nexport class SuccessRegistrationComponent implements OnInit {\n\n constructor(public dialogRef: MatDialogRef,\n private matDialog: MatDialog) {\n }\n\n ngOnInit(): void {\n }\n\n closeDialog(result?): void {\n this.dialogRef.close(result);\n }\n\n cancel(): void {\n this.matDialog.closeAll();\n }\n}\n","
\n \n\n
\n
\n \n
\n
\n

Вітаємо!

\n
\n

Запит на навчання в автошколі надіслано

\n

\n

Очікуйте лист з підтвердженням документів на вашій електронній скринці.

\n
\n\n
\n

Виникли питання?

\n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n
\n \n
\n
\n
\n","import { Component, OnInit, Inject } from '@angular/core';\nimport { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog';\n\n\n@Component({\n selector: 'app-test-image-view',\n templateUrl: './test-image-view.component.html',\n styleUrls: ['./test-image-view.component.scss']\n})\nexport class TestImageViewComponent implements OnInit {\n\n constructor(public dialogRef: MatDialogRef,\n @Inject(MAT_DIALOG_DATA) public data: any) {\n }\n\n ngOnInit(): void {\n }\n\n closeDialog(result?): void {\n this.dialogRef.close(result);\n }\n}\n","\n
\n
\n
\n
\n","import { Component, Inject, OnInit, ViewChild } from '@angular/core';\nimport { MAT_DIALOG_DATA, MatDialog, MatDialogRef } from '@angular/material/dialog';\nimport { RegistrationPersonalInformationService } from '@module/driving-school-registration/services/registration-personal-information.service';\nimport { Config } from '~/src/app/shared/property/constant';\n\n@Component({\n selector: 'app-video-player',\n templateUrl: './video-player.component.html',\n styleUrls: ['./video-player.component.scss']\n})\nexport class VideoPlayerComponent implements OnInit {\n videoPlay: boolean;\n introdactionUrl: string;\n prefixImgPath = Config.storageUrl();\n @ViewChild('video') video: any;\n @ViewChild('progress') progressBar: any;\n @ViewChild('playbackIcons') playbackIcons: any;\n @ViewChild('videoControls') videoControls: any;\n @ViewChild('play') playButton: any;\n @ViewChild('seek') seek: any;\n @ViewChild('duration') duration: any;\n @ViewChild('timeElapsed') timeElapsed: any;\n @ViewChild('seekTooltip') seekTooltip: any;\n @ViewChild('playbackAnimation') playbackAnimation: any;\n\n constructor(public dialogRef: MatDialogRef,\n @Inject(MAT_DIALOG_DATA) public data: any,\n private matDialog: MatDialog,\n private regPersonalInformationService: RegistrationPersonalInformationService) {\n this.introdactionUrl = '';\n }\n\n ngOnInit(): void {\n this.getIntrodactionVideo();\n }\n\n closeDialog(result?): void {\n this.dialogRef.close(result);\n }\n\n getIntrodactionVideo(): void {\n this.regPersonalInformationService.getIntrodactionVideo().subscribe((res) => {\n this.introdactionUrl = this.prefixImgPath + res.introductionVideoUrl;\n });\n }\n\n cancel(): void {\n this.matDialog.closeAll();\n }\n\n togglePlay(): void {\n if (this.video.nativeElement.paused || this.video.nativeElement.ended) {\n this.video.nativeElement.play();\n this.videoPlay = true;\n } else {\n this.video.nativeElement.pause();\n this.videoPlay = false;\n }\n }\n\n\n updatePlayButton(): void {\n }\n\n\n formatTime(timeInSeconds): { seconds: string; minutes: string } {\n const result = new Date(timeInSeconds * 1000).toISOString().substr(11, 8);\n\n return {\n minutes: result.substr(3, 2),\n seconds: result.substr(6, 2),\n };\n }\n\n initializeVideo(): void {\n const videoDuration = Math.round(this.video.nativeElement.duration);\n this.seek.nativeElement.setAttribute('max', videoDuration);\n this.progressBar.nativeElement.setAttribute('max', videoDuration);\n const time = this.formatTime(videoDuration);\n this.duration.nativeElement.innerText = `${time.minutes}:${time.seconds}`;\n this.duration.nativeElement.setAttribute('datetime', `${time.minutes}m ${time.seconds}s`);\n }\n\n\n updateTimeElapsed(): void {\n const time = this.formatTime(Math.round(this.video.nativeElement.currentTime));\n // this.timeElapsed.nativeElement.innerText = `${time.minutes}:${time.seconds}`;\n // this.timeElapsed.nativeElement.setAttribute('datetime', `${time.minutes}m ${time.seconds}s`);\n }\n\n updateProgress(): void {\n this.seek.nativeElement.value = Math.floor(this.video.nativeElement.currentTime);\n this.progressBar.nativeElement.value = Math.floor(this.video.nativeElement.currentTime);\n if (this.video.nativeElement.ended) {\n this.videoPlay = false;\n }\n }\n\n updateSeekTooltip(event): void {\n const skipTo = Math.round(\n (event.offsetX / event.target.clientWidth) *\n parseInt(event.target.getAttribute('max'), 10)\n );\n this.seek.nativeElement.setAttribute('data-seek', skipTo);\n const t = this.formatTime(skipTo);\n this.seekTooltip.nativeElement.textContent = `${t.minutes}:${t.seconds}`;\n const rect = this.video.nativeElement.getBoundingClientRect();\n this.seekTooltip.nativeElement.style.left = `${event.pageX - rect.left}px`;\n }\n\n skipAhead(event): void {\n const skipTo = event.target.dataset.seek\n ? event.target.dataset.seek\n : event.target.value;\n this.video.nativeElement.currentTime = skipTo;\n this.progressBar.nativeElement.value = skipTo;\n this.seek.nativeElement.value = skipTo;\n }\n\n rewind(): void {\n this.seek.nativeElement.value += 15;\n this.video.nativeElement.currentTime += 15;\n this.progressBar.nativeElement.value += 15;\n }\n\n rewindBack(): void {\n this.seek.nativeElement.value -= 15;\n this.video.nativeElement.currentTime -= 15;\n this.progressBar.nativeElement.value -= 15;\n }\n\n animatePlayback(): void {\n this.playbackAnimation.nativeElement.animate(\n [\n {\n opacity: 1,\n transform: 'scale(1)',\n },\n {\n opacity: 0,\n transform: 'scale(1.3)',\n },\n ],\n {\n duration: 500,\n }\n );\n }\n\n}\n","
\n
\n
RomDomDom - Як розпочати навчання
\n \n
\n
\n
\n
\n
\n \n
\n \n
\n
\n \n \n \n \n
\n \n \n \n
\n
\n
\n \n \n
00:00
\n
\n
\n
\n
\n\n \n \n \n \n\n \n \n \n \n\n","import { Directive, ElementRef, EventEmitter, HostListener, Output } from '@angular/core';\n\n@Directive({\n selector: '[appOutsideClick]'\n})\nexport class OutsideClickDirective {\n\n constructor(private elementRef: ElementRef) {\n }\n\n @Output('clickOutside') clickOutside: EventEmitter = new EventEmitter();\n\n @HostListener('document:click', ['$event.target']) onMouseEnter(targetElement): any {\n const clickedInside = this.elementRef.nativeElement.contains(targetElement);\n if (!clickedInside) {\n this.clickOutside.emit(null);\n }\n }\n\n}\n","export enum documentsTypeEnum {\n IndividualTaxNumber,\n IdCard,\n Passport,\n MedicalReference,\n CategoryBDrivingLicense\n}\n","import { Pipe, PipeTransform } from '@angular/core';\nimport { DomSanitizer } from '@angular/platform-browser';\n\n@Pipe({\n name: 'highlightsText'\n})\nexport class HighlightsTextPipe implements PipeTransform {\n\n constructor(private sanitizer: DomSanitizer) {\n }\n\n transform(value: string, ...args: any): any {\n if (!args) {\n return value;\n }\n // Match in a case insensitive maneer\n const re = new RegExp(args, 'gi');\n if (value) {\n const match = value.match(re);\n\n // If there's no match, just return the original value.\n if (!match) {\n return value;\n }\n\n const firstImgIndex = value.indexOf('');\n secondImgIndex = secondImgIndex + 22;\n imageText = value.slice(firstImgIndex, secondImgIndex);\n value = value.slice(0, firstImgIndex) + value.slice(secondImgIndex);\n value = value.replace(re, '' + match[0] + '');\n result = [value.slice(0, firstImgIndex), imageText, value.slice(firstImgIndex)].join('');\n } else {\n result = value.replace(re, '' + match[0] + '');\n }\n\n\n return this.sanitizer.bypassSecurityTrustHtml(result);\n }\n }\n\n}\n","/**\n * Document location.\n */\nimport { environment } from '../../../environments/environment';\n\nconst { protocol, hostname, port } = window.location;\n\n/**\n * External properties.\n */\nexport const EXTERNAL: any = window['appConfig'] || {};\n\n/**\n * Application namespace.\n */\nexport const NAMESPACE = 'RDD';\n\n\n/**\n * Date format.\n */\nexport const DATE_FORMAT = 'DD MMM YYYY';\n\n/**\n * Time format.\n */\nexport const TIME_FORMAT = 'HH:mm';\n\n/**\n * DateTime format.\n */\nexport const DATE_TIME_FORMAT = 'DD MMM YYYY HH:mm';\n\n/**\n * API URL namespace.\n */\nexport const API_PREFIX = '/api';\n\n/**\n * Origin url.\n */\nexport const ORIGIN_URL = `${protocol}//${hostname}${port ? `:${port}` : ''}`;\n\n/**\n * Running env: local/test-content/prod.\n */\nexport const ENV: string = EXTERNAL['app.env'] || 'prod';\n\n/**\n * General API end point.\n */\nexport const API_URL: string = EXTERNAL['api.url'] || ORIGIN_URL;\n\n/**\n * Mobile width.\n */\nexport const MOBILE_WIDTH = 979;\n\n/**\n * Notification fade delay.\n */\nexport const NOTIFICATION_FADE_DELAY = 500;\n\n/**\n * Notification auto close delay.\n */\nexport const NOTIFICATION_AUTO_CLOSE_DELAY = 5000;\n\n/**\n * Ascending sort.\n */\nexport const SORT_ASC = 'ASC';\n\n/**\n * Descending sort.\n */\nexport const SORT_DESC = 'DESC';\n\n\nexport class Config {\n public static apiUrl(version = 'v1'): string {\n return `${environment.apiUrl}/api/${version}/`;\n }\n public static apiV2Url(version = 'v2'): string {\n return `${environment.apiUrl}/api/${version}/`;\n }\n public static storageUrl(): string {\n return `${environment.storageUrl}`;\n }\n}\n","export const SocialLinks = {\n facebook: 'https://www.facebook.com/RomDomDom.school',\n instagram: 'https://www.instagram.com/romdomdom.school/',\n messages: 'https://www.facebook.com/messages/t/112310597191145',\n telegram: 'https://t.me/romdomdomua',\n viber: '/viber-link',\n};\n","import { ModuleWithProviders, NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { TranslateLoader, TranslateModule } from '@ngx-translate/core';\nimport { HTTP_INTERCEPTORS, HttpClient, HttpClientModule } from '@angular/common/http';\nimport { TranslateHttpLoader } from '@ngx-translate/http-loader';\nimport { InterceptorService } from '../core/services/interceptor.service';\nimport { FroalaViewModule } from 'angular-froala-wysiwyg';\nimport { HintsComponent } from './dialogs/hints/hints.component';\nimport { MatDialogModule } from '@angular/material/dialog';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { NgxUploaderModule } from 'ngx-uploader';\nimport { ImageCropperModule } from 'ngx-image-cropper';\nimport { TestItemComponent } from './components/test-item/test-item.component';\nimport { FinishedTestComponent } from './components/finished-test/finished-test.component';\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\nimport { OutsideClickDirective } from './directives/click-outside.directive';\nimport { CropImageComponent } from './dialogs/crop-image/crop-image.component';\nimport { TiketGuard } from '../core/guards/tiket.guard';\nimport { SelectCategoryComponent } from './dialogs/select-category/select-category.component';\nimport { MatRadioModule } from '@angular/material/radio';\nimport { LeaveTestComponent } from './dialogs/leave-test/leave-test.component';\nimport { MobileVersionComponent } from './dialogs/mobile-version/mobile-version.component';\nimport { FinalTestComponent } from './dialogs/final-test/final-test.component';\n\nimport { HighlightsTextPipe } from './pipes/highlights-text.pipe';\nimport { CancelRegistrationComponent } from './dialogs/cancel-registration/cancel-registration.component';\nimport { SuccessRegistrationComponent } from './dialogs/success-registration/success-registration.component';\nimport { RegistrationDataComponent } from './dialogs/registration-data/registration-data.component';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatDatepickerModule } from '@angular/material/datepicker';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MAT_DATE_LOCALE, MatNativeDateModule, MatRippleModule } from '@angular/material/core';\nimport { MatListModule } from '@angular/material/list';\nimport { MatToolbarModule } from '@angular/material/toolbar';\nimport { MatButtonToggleModule } from '@angular/material/button-toggle';\nimport { MatTreeModule } from '@angular/material/tree';\nimport { MatProgressBarModule } from '@angular/material/progress-bar';\nimport { MatSlideToggleModule } from '@angular/material/slide-toggle';\nimport { MatPaginatorModule } from '@angular/material/paginator';\nimport { MatExpansionModule } from '@angular/material/expansion';\nimport { MatSnackBarModule } from '@angular/material/snack-bar';\nimport { MatMenuModule } from '@angular/material/menu';\nimport { MatGridListModule } from '@angular/material/grid-list';\nimport { MatSortModule } from '@angular/material/sort';\nimport { MatAutocompleteModule } from '@angular/material/autocomplete';\nimport { MatCheckboxModule } from '@angular/material/checkbox';\nimport { MatTableModule } from '@angular/material/table';\nimport { MatCardModule } from '@angular/material/card';\nimport { MatTabsModule } from '@angular/material/tabs';\nimport { MatTooltipModule } from '@angular/material/tooltip';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatSelectModule } from '@angular/material/select';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatSidenavModule } from '@angular/material/sidenav';\nimport { MatStepperModule } from '@angular/material/stepper';\nimport { MatChipsModule } from '@angular/material/chips';\nimport { MatSliderModule } from '@angular/material/slider';\nimport { MatBadgeModule } from '@angular/material/badge';\nimport { MatBottomSheetModule } from '@angular/material/bottom-sheet';\nimport { MatDividerModule } from '@angular/material/divider';\nimport { StartLearningComponent } from './components/start-learning/start-learning.component';\nimport { WaitConfirmComponent } from './components/wait-confirm/wait-confirm.component';\nimport { ChangePasswordTypeComponent } from './dialogs/change-password-type/change-password-type.component';\nimport { VideoPlayerComponent } from './dialogs/video-player/video-player.component';\nimport { RejectApplicationComponent } from './components/reject-application/reject-application.component';\nimport { StudentProgressComponent } from './components/student-progress/student-progress.component';\nimport { RouterModule } from '@angular/router';\nimport { ContinueLearningComponent } from './dialogs/continue-learning/continue-learning.component';\nimport { BookClassesComponent } from './dialogs/book-classes/book-classes.component';\nimport { FullInstructorInformationComponent } from './components/full-instructor-information/full-instructor-information.component';\nimport { ShortInstructorInformationComponent } from './components/short-instructor-information/short-instructor-information.component';\nimport { RejectLessonComponent } from './dialogs/reject-lesson/reject-lesson.component';\nimport { RejectedLessonInformationComponent } from './dialogs/rejected-lesson-information/rejected-lesson-information.component';\nimport { SocialInformationComponent } from './components/social-information/social-information.component';\nimport { PrivacyPolicyComponent } from './dialogs/privacy-policy/privacy-policy.component';\nimport { TestImageViewComponent } from './dialogs/test-image-view/test-image-view.component';\n\nexport function createTranslateLoader(http: HttpClient) {\n return new TranslateHttpLoader(http, './assets/i18n/', '.json');\n}\n\n@NgModule({\n declarations: [\n HintsComponent,\n TestItemComponent,\n FinishedTestComponent,\n OutsideClickDirective,\n CropImageComponent,\n SelectCategoryComponent,\n LeaveTestComponent,\n MobileVersionComponent,\n FinalTestComponent,\n HighlightsTextPipe,\n CancelRegistrationComponent,\n SuccessRegistrationComponent,\n RegistrationDataComponent,\n StartLearningComponent,\n WaitConfirmComponent,\n ChangePasswordTypeComponent,\n VideoPlayerComponent,\n RejectApplicationComponent,\n StudentProgressComponent,\n ContinueLearningComponent,\n BookClassesComponent,\n FullInstructorInformationComponent,\n ShortInstructorInformationComponent,\n RejectLessonComponent,\n RejectedLessonInformationComponent,\n SocialInformationComponent,\n PrivacyPolicyComponent,\n TestImageViewComponent\n ],\n imports: [\n MatAutocompleteModule,\n MatBadgeModule,\n MatBottomSheetModule,\n MatButtonModule,\n MatButtonToggleModule,\n MatCardModule,\n MatCheckboxModule,\n MatChipsModule,\n MatDatepickerModule,\n MatDialogModule,\n MatDividerModule,\n MatExpansionModule,\n MatGridListModule,\n MatIconModule,\n MatInputModule,\n MatListModule,\n MatMenuModule,\n MatPaginatorModule,\n MatProgressBarModule,\n MatProgressSpinnerModule,\n MatRadioModule,\n MatRippleModule,\n MatSelectModule,\n MatSidenavModule,\n MatSliderModule,\n MatSlideToggleModule,\n MatSnackBarModule,\n MatSortModule,\n MatStepperModule,\n MatTableModule,\n MatTabsModule,\n MatToolbarModule,\n MatTooltipModule,\n MatNativeDateModule,\n MatTreeModule,\n\n\n CommonModule,\n MatDialogModule,\n MatDatepickerModule,\n MatFormFieldModule,\n ReactiveFormsModule,\n MatInputModule,\n FormsModule,\n NgxUploaderModule,\n FroalaViewModule.forRoot(),\n ImageCropperModule,\n TranslateModule.forRoot({\n loader: {\n provide: TranslateLoader,\n useFactory: (createTranslateLoader),\n deps: [HttpClient]\n },\n defaultLanguage: 'Uk'\n }),\n FormsModule,\n MatProgressSpinnerModule,\n MatRadioModule,\n RouterModule,\n ],\n exports: [\n TranslateModule,\n FroalaViewModule,\n ImageCropperModule,\n FormsModule,\n MatDatepickerModule,\n MatFormFieldModule,\n MatInputModule,\n HintsComponent,\n NgxUploaderModule,\n ReactiveFormsModule,\n MatDialogModule,\n TestItemComponent,\n FinishedTestComponent,\n OutsideClickDirective,\n HighlightsTextPipe,\n StartLearningComponent,\n WaitConfirmComponent,\n RejectApplicationComponent,\n StudentProgressComponent,\n ContinueLearningComponent,\n BookClassesComponent,\n FullInstructorInformationComponent,\n ShortInstructorInformationComponent,\n SocialInformationComponent,\n PrivacyPolicyComponent,\n TestImageViewComponent\n\n\n ],\n entryComponents: [\n HintsComponent,\n CropImageComponent,\n ],\n providers: [\n {\n provide: HTTP_INTERCEPTORS,\n useClass: InterceptorService,\n multi: true\n },\n TiketGuard\n ],\n})\nexport class SharedModule {\n static forRoot(): ModuleWithProviders {\n return {\n ngModule: SharedModule,\n providers: []\n };\n }\n}\n","// This file can be replaced during build by using the `fileReplacements` array.\n// `ng build --prod` replaces `environment.ts` with `environment.prod.ts`.\n// The list of file replacements can be found in `angular.json`.\n\nexport const environment = {\n production: false,\n apiUrl: 'https://api.romdomdom.net',\n storageUrl: 'https://romdomdom-dev.s3.eu-central-1.amazonaws.com'\n};\n\n/*\n * For easier debugging in development mode, you can import the following file\n * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`.\n *\n * This import should be commented out in production mode because it will have a negative impact\n * on performance if an error is thrown.\n */\n// import 'zone.js/dist/zone-error'; // Included with Angular CLI.\n","import { enableProdMode } from '@angular/core';\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\n\nimport { AppModule } from './app/app.module';\nimport { environment } from './environments/environment';\n\nif (environment.production) {\n enableProdMode();\n}\n\nplatformBrowserDynamic().bootstrapModule(AppModule)\n .catch(err => {\n // console.error(err)\n }\n );\n"],"sourceRoot":"webpack:///"}