UNPKG

iptdevs-design-system

Version:

Library common elements into IPT Plattform.

1 lines 841 kB
{"version":3,"file":"iptdevs-design-system.mjs","sources":["../../../design-system/src/lib/components/atoms/aside-button/aside-button.component.ts","../../../design-system/src/lib/components/atoms/button/button.component.ts","../../../design-system/src/lib/components/atoms/checkbox/checkbox.component.ts","../../../design-system/src/lib/components/atoms/datalist/datalist.component.ts","../../../design-system/src/lib/components/atoms/input/input.component.ts","../../../design-system/src/lib/components/atoms/level-button/level-button.component.ts","../../../design-system/src/lib/components/atoms/level-text/level-text.component.ts","../../../design-system/src/lib/components/atoms/loader/loader.component.ts","../../../design-system/src/lib/components/atoms/radio/radio.component.ts","../../../design-system/src/lib/components/atoms/select/select.component.ts","../../../design-system/src/lib/components/atoms/text-link/text-link.component.ts","../../../design-system/src/lib/core/services/service-enviroments.ts","../../../design-system/src/lib/core/services/user-service/user-service.ts","../../../design-system/src/lib/core/services/storage-service/storage-service.ts","../../../design-system/src/lib/core/services/calendar-service/calendar.service.ts","../../../design-system/src/lib/core/utils/base-service/base.service.ts","../../../design-system/src/lib/components/forms/login-form/login-form.component.ts","../../../design-system/src/lib/core/services/parameters-service/parameters.service.ts","../../../design-system/src/lib/components/forms/create-user-form/create-user-form.component.ts","../../../design-system/src/lib/components/forms/create-user-form/create-user-form.component.html","../../../design-system/src/lib/components/molecules/sidenav/sidenav.component.ts","../../../design-system/src/lib/components/material.module.ts","../../../design-system/src/lib/components/molecules/question-type/edit-question-types.component.ts","../../../design-system/src/lib/core/pipes/course-pipes/schedule-form.pipe.ts","../../../design-system/src/lib/core/pipes/course-pipes/time-form.pipe.ts","../../../design-system/src/lib/core/pipes/course-pipes/type-level.pipe.ts","../../../design-system/src/lib/components/molecules/card-course/card-course.component.ts","../../../design-system/src/lib/components/molecules/card-course/card-course.component.html","../../../design-system/src/lib/core/pipes/pipe.module.ts","../../../design-system/src/lib/components/molecules/card-select-course/card-select-course.component.ts","../../../design-system/src/lib/components/molecules/card-select-course/card-select-course.component.html","../../../design-system/src/lib/components/components.module.ts","../../../design-system/src/lib/core/services/media-service/media.service.ts","../../../design-system/src/lib/cod/cod-documents-section/cod-documents-section.component.ts","../../../design-system/src/lib/cod/cod-documents-section/cod-documents-section.component.html","../../../design-system/src/lib/cod/logic/local-storage-cod.service.ts","../../../design-system/src/lib/cod/logic/cod-form-controls.ts","../../../design-system/src/lib/core/services/commercial-service/comercial.service.ts","../../../design-system/src/lib/cod/logic/cod-form-steps.ts","../../../design-system/src/lib/core/utils/copies.ts","../../../design-system/src/lib/core/services/copies.service.ts","../../../design-system/src/lib/core/services/course-service/course-service.model.ts","../../../design-system/src/lib/cod/logic/communicator.service.ts","../../../design-system/src/lib/cod/steps/cod-form-step-one/cod-form-step-one.component.ts","../../../design-system/src/lib/cod/steps/cod-form-step-one/cod-form-step-one.component.html","../../../design-system/src/lib/cod/steps/cod-form-step-two/cod-form-step-two.component.ts","../../../design-system/src/lib/cod/steps/cod-form-step-two/cod-form-step-two.component.html","../../../design-system/src/lib/cod/steps/cod-form-step-three/cod-form-step-three.component.ts","../../../design-system/src/lib/cod/steps/cod-form-step-three/cod-form-step-three.component.html","../../../design-system/src/lib/cod/logic/calculate-quotes.service.ts","../../../design-system/src/lib/cod/steps/cod-form-step-four/cod-form-step-four.component.ts","../../../design-system/src/lib/cod/steps/cod-form-step-four/cod-form-step-four.component.html","../../../design-system/src/lib/cod/modal-referred/modal-referred.component.ts","../../../design-system/src/lib/cod/modal-referred/modal-referred.component.html","../../../design-system/src/lib/cod/steps/cod-form-step-five/cod-form-step-five.component.ts","../../../design-system/src/lib/cod/steps/cod-form-step-five/cod-form-step-five.component.html","../../../design-system/src/lib/cod/cod-form/cod-form.component.ts","../../../design-system/src/lib/cod/cod-form/cod-form.component.html","../../../design-system/src/lib/cod/cod.module.ts","../../../design-system/src/lib/core/utils/route-service/route.service.ts","../../../design-system/src/lib/core/services/switch-service/switch.service.ts","../../../design-system/src/lib/core/services/test-service/test.service.ts","../../../design-system/src/lib/core/services/marketing-service/marketing-service.ts","../../../design-system/src/lib/core/services/budget-service/budget-service.ts","../../../design-system/src/lib/core/services/classroom-service/classroom-service.service.ts","../../../design-system/src/lib/core/services/activity-service/activity.service.ts","../../../design-system/src/lib/core/services/academic-service/academic.service.ts","../../../design-system/src/lib/core/services/attendance-service/attendance.service.ts","../../../design-system/src/lib/core/services/certificate-service/certificate.service.ts","../../../design-system/src/lib/core/services/ekt-service/userekt.service.ts","../../../design-system/src/lib/core/services/ePayco/epayco.service.ts","../../../design-system/src/lib/core/core.module.ts","../../../design-system/src/lib/cod-self-managed/logic/cod-self-managed-controls.ts","../../../design-system/src/lib/cod-self-managed/logic/local-storage-cod.service.ts","../../../design-system/src/lib/cod-self-managed/logic/cod-self-managed-steps.ts","../../../design-system/src/lib/cod-self-managed/steps/cod-form-step-one/cod-self-form-step-one.component.ts","../../../design-system/src/lib/cod-self-managed/steps/cod-form-step-one/cod-self-form-step-one.component.html","../../../design-system/src/lib/cod-self-managed/steps/cod-form-step-two/cod-self-form-step-two.component.ts","../../../design-system/src/lib/cod-self-managed/steps/cod-form-step-two/cod-self-form-step-two.component.html","../../../design-system/src/lib/cod-self-managed/logic/calculate-quotes.service.ts","../../../design-system/src/lib/cod-self-managed/steps/cod-form-step-three/cod-self-form-step-three.component.ts","../../../design-system/src/lib/cod-self-managed/steps/cod-form-step-three/cod-self-form-step-three.component.html","../../../design-system/src/lib/cod-self-managed/steps/cod-form-step-four/cod-self-form-step-four.component.ts","../../../design-system/src/lib/cod-self-managed/steps/cod-form-step-four/cod-self-form-step-four.component.html","../../../design-system/src/lib/cod-self-managed/cod-form-self-managed/cod-self-managed.component.ts","../../../design-system/src/lib/cod-self-managed/cod-form-self-managed/cod-self-managed.component.html","../../../design-system/src/lib/cod-self-managed/cod-self-managed.module.ts","../../../design-system/src/lib/design-system.module.ts","../../../design-system/src/lib/core/services/notes-service/notes.service.ts","../../../design-system/src/lib/core/services/student-service/student.service.ts","../../../design-system/src/lib/core/services/commercial-service/validators.ts","../../../design-system/src/lib/core/services/placement-service/placement.service.ts","../../../design-system/src/lib/core/services/announcement/announcement.service.ts","../../../design-system/src/lib/core/models/course/course-rq.model.ts","../../../design-system/src/lib/core/models/session/session.model.ts","../../../design-system/src/lib/core/models/user/user-rs.model.ts","../../../design-system/src/lib/core/models/announcement/announcement-user-rs.model.ts","../../../design-system/src/public-api.ts","../../../design-system/src/iptdevs-design-system.ts"],"sourcesContent":["import { Component, EventEmitter, Input, Output } from \"@angular/core\";\n\n@Component({\n selector: 'ipt-aside-button',\n template: `\n <div [ngSwitch]=\"buttonActive\">\n <a *ngSwitchCase=\"0\" class=\"flex-item-menu__link\" (click)=\"clickAction()\">\n <img src=\"{{ icon }}\" alt=\"icon_url\" />\n <p>{{ text }}</p>\n </a>\n\n <a *ngSwitchCase=\"1\" class=\"flex-item-menu__link flex-item-active\" (click)=\"clickAction()\">\n <img src=\"{{ icon }}\" alt=\"icon_url\" />\n <p>{{ text }}</p>\n </a>\n </div>\n `,\n styleUrls: ['./aside-button.css']\n})\n\nexport class AsideButtonComponent {\n @Input() icon!: string;\n @Input() text!: string;\n @Input() buttonActive?: boolean;\n @Output() isClicked = new EventEmitter<boolean>();\n\n clickAction() {\n this.isClicked.emit(true);\n }\n}\n","import { Component, Input, Output, EventEmitter } from '@angular/core';\n\n@Component({\n selector: 'ipt-button',\n template: `<button *ngIf=\"isEnabled\"\n type=\"{{ buttonType }}\"\n (click)=\"onClick.emit($event)\"\n [ngClass]=\"classes\"\n >\n {{ label }}\n </button>\n\n <button *ngIf=\"!isEnabled\"\n type=\"{{ buttonType }}\"\n [ngClass]=\"classes\"\n >\n {{ label }}\n </button>`,\n styleUrls: ['./button.css'],\n})\nexport class ButtonComponent {\n\n @Input() primary: boolean = false;\n @Input() size: 'small' | 'medium' | 'large' = 'medium';\n @Input() label: string = 'Button';\n @Input() buttonType?: string;\n @Input() isEnabled: boolean = true;\n\n @Output() onClick = new EventEmitter<Event>();\n\n public get classes(): string[] {\n const mode = this.primary && this.isEnabled === true\n ? 'ipt-button--primary'\n : this.isEnabled === false ? 'ipt-button--primary-disabled'\n : 'ipt-button--secondary';\n\n return ['ipt-button', `ipt-button--${this.size}`, mode];\n }\n}\n","import { Component, EventEmitter, Input, Output } from \"@angular/core\";\nimport { AbstractControl, FormControl } from \"@angular/forms\";\n\n@Component({\n selector: 'ipt-checkbox',\n template: `\n <label class=\"cont\">\n <input\n class=\"checkbox\"\n [formControl]=\"formControl\"\n [checked]=\"checkboxOption\"\n (click)=\"onChecked.emit($event)\"\n type=\"checkbox\">\n <span></span>\n </label>\n `,\n styleUrls: ['./checkbox.css']\n})\n\nexport class CheckboxComponent {\n\n @Input() checkboxOption: boolean = false;\n @Input() set control(value: AbstractControl) {\n if (this.formControl !== value) {\n this.formControl = value as FormControl;\n }\n }\n\n @Output() onChecked = new EventEmitter<Event>();\n\n formControl!: FormControl;\n\n}\n","import { Component, Input, Output, EventEmitter, ViewChild, SimpleChanges } from '@angular/core';\nimport { AbstractControl, FormBuilder, FormControl, FormGroup, NgForm, Validators } from '@angular/forms';\n\n@Component({\n selector: 'ipt-datalist',\n template: `\n <div class=\"input-container\">\n <label [ngClass]=\"labelClass\">{{ placeHolder }}</label>\n <input\n type=\"text\"\n class=\"input\"\n (click)=\"click($event)\"\n [attr.list]=\"datalistId\"\n (change)=\"optionChanged($event)\"\n [disabled]=\"disabledSel\"\n [value]=\"setDataListValue()\"\n />\n\n <datalist id=\"{{ datalistId }}\">\n <option *ngFor=\"let item of datalistData; index as i\" [value]=\"item.name\">\n {{item.id_card}} {{item.name}}\n </option>\n </datalist>\n </div>\n `,\n styleUrls: ['./datalist.css'],\n})\nexport class DatalistComponent {\n\n @Input() datalistId!: string;\n @Input() datalistData!: any[];\n @Input() placeHolder!: string;\n @Input() validateText!: string;\n @Input() initalData!: string;\n @Input() disabledSel:boolean = false;\n\n @Output() isChanged = new EventEmitter<string>();\n\n clicked: boolean = false;\n\n constructor(fb: FormBuilder) {\n }\n\n optionChanged(event: any) {\n let selectOption = this.datalistData.find(element => element.name == event.target.value);\n if (typeof(selectOption) != 'undefined') {\n this.isChanged.emit(selectOption.code);\n } else {\n this.isChanged.emit('-1');\n }\n }\n\n click(value: MouseEvent) {\n this.clicked = value.isTrusted;\n }\n\n setDataListValue() {\n let selectOption = this.datalistData.find(element => element.code == this.initalData);\n if (typeof(selectOption) != 'undefined') {\n return selectOption.name;\n } else {\n return '';\n }\n }\n\n public get labelClass(): string {\n return this.clicked === false ? 'label' : 'labelUp';\n }\n}\n","import { AbstractControl, FormControl } from '@angular/forms';\nimport { Component, Input, Output, EventEmitter, OnInit, OnDestroy } from '@angular/core';\n\n@Component({\n selector: 'ipt-input',\n template: `\n <div class=\"input-container\">\n <!-- Resto del código... -->\n <input *ngIf=\"inputType === 'date'\"\n class=\"input\"\n type=\"{{ inputType ? 'text' : 'date' }}\"\n [formControl]=\"formControl\"\n (ngModelChange)=\"selectedDate($event)\"\n onfocus=\"this.type='date';\"\n onblur=\"javascript: if( !this.value ) this.type='text';\"\n uib-datepicker-popup=\"dd/MM/yyyy\"\n ng-model=\"inputType\"/>\n\n <input *ngIf=\"inputType !== 'date' && inputType !== 'time' && !withPipe\"\n class=\"input\"\n type=\"{{ inputType }}\"\n [formControl]=\"formControl\"\n [attr.list]=\"list\"/>\n\n <input *ngIf=\"inputType === 'text' && withPipe\"\n class=\"input\"\n currencyMask\n [options]=\"{ prefix: prefix, thousands: thousands, decimal: decimal, allowNegative: false }\"\n type=\"{{ inputType }}\"\n [formControl]=\"formControl\"\n [attr.list]=\"list\"/>\n\n <input *ngIf=\"inputType === 'time'\"\n class=\"input\"\n type=\"time\"\n [formControl]=\"formControl\"\n [min]=\"'06:00:00'\"\n max=\"22:00:00\"\n step=\"900\"\n autocomplete=\"on\"\n value=\"08:00:00\"\n (click)=\"click($event)\"\n />\n\n <label [ngClass]=\"{'labelUp': formControl.value !== ''}\">{{ placeHolder }}</label>\n\n <p *ngIf=\"(formControl.invalid && formControl.value !== '')\">\n {{ validateText }}\n </p>\n </div>\n `,\n styleUrls: ['./input.css'],\n})\nexport class InputComponent implements OnInit {\n\n public codeValue!: string;\n data: any[] = [];\n formControl!: FormControl;\n clicked: boolean = false;\n\n @Input() inputType!: string;\n @Input() placeHolder!: string;\n @Input() validateText?: string;\n @Input() withPipe?: boolean = false;\n @Input() list?: string; //Para el datalist\n @Input() iconUrl?: string;\n @Input() set control(value: AbstractControl | string) {\n if (this.formControl !== value) {\n this.formControl = value as FormControl;\n }\n }\n\n @Input() prefix: string = '$';\n @Input() thousands: string = '.';\n @Input() decimal: string = ',';\n @Output() dateSelected = new EventEmitter<string>();\n @Input() disabledSel: boolean = false;\n\n constructor() {}\n\n ngOnInit() {}\n\n selectedDate(evt: string){\n this.dateSelected.emit(evt);\n }\n\n click(value: MouseEvent) {\n this.clicked = value.isTrusted;\n }\n\n}\n","import { Component, Input, Output, EventEmitter } from '@angular/core';\n\n@Component({\n selector: 'ipt-level-button',\n template: `\n <div [ngSwitch]=\"buttonActive\">\n <button\n *ngSwitchCase=\"0\"\n (click)=\"clickAction()\"\n id=\"level\"\n class=\"courses\"\n >\n <p class=\"p-level\">{{ level }}</p>\n </button>\n\n <button\n *ngSwitchCase=\"1\"\n (click)=\"clickAction()\"\n id=\"{{ idColor }}\"\n class=\"courses\">\n <p class=\"p-level p-level-active\">{{ level }}</p>\n </button>\n </div>\n `,\n styleUrls: ['./level-button.css'],\n})\n\nexport class LevelButtonComponent {\n\n @Input() level!: string;\n @Input() buttonActive!: boolean;\n @Input() idColor!: string;\n @Output() isClicked = new EventEmitter<boolean>();\n\n clickAction() {\n this.isClicked.emit(true);\n }\n\n}\n","import { Component, Input, Output, EventEmitter } from '@angular/core';\n\n@Component({\n selector: 'ipt-level-button',\n template: `\n <p class=\"p-table-course\">{{ level }}: {{ total }}</p>\n `,\n styleUrls: ['./level-text.css'],\n})\n\nexport class LevelTextComponent {\n\n @Input() level!: string;\n @Input() total!: string;\n\n}\n","import { Component, Input } from '@angular/core';\n\n@Component({\n selector: 'ipt-loader',\n template: `\n <div [ngClass]=\"{'dialog': isDialog}\">\n <div [ngClass]=\"{'loader_container' : isDialog}\">\n <span>{{ message }}</span>\n <div class=\"container\">\n <div class=\"spinner\">\n <div class=\"dot\"></div>\n <div class=\"dot\"></div>\n <div class=\"dot\"></div>\n <div class=\"dot\"></div>\n <div class=\"dot\"></div>\n </div>\n </div>\n </div>\n </div>`,\n styleUrls: ['./loader.css']\n})\nexport class LoaderComponent {\n @Input() message: string = '';\n @Input() isDialog: boolean = false;\n}\n\n","import { Component, EventEmitter, Input, Output } from \"@angular/core\";\nimport { AbstractControl, FormControl } from \"@angular/forms\";\n\n@Component({\n selector: 'ipt-radio',\n template: `\n <label class=\"cont\">\n <input\n class=\"radio\"\n [formControl]=\"formControl\"\n [checked]=\"radioOption\"\n (click)=\"onSelected.emit($event)\"\n type=\"radio\">\n <span></span>\n </label>\n `,\n styleUrls: ['./radio.css']\n})\n\nexport class RadioComponent {\n\n @Input() radioOption: boolean = false;\n @Input() set control(value: AbstractControl) {\n if (this.formControl !== value) {\n this.formControl = value as FormControl;\n }\n }\n\n @Output() onSelected = new EventEmitter<Event>();\n\n formControl!: FormControl;\n\n}\n","import { Component, Input, Output, EventEmitter, SimpleChanges } from '@angular/core';\nimport { AbstractControl, FormControl } from '@angular/forms';\n\n@Component({\n selector: 'ipt-select',\n template: `\n <div class=\"select-container\">\n <label [ngClass]=\"labelClass\">{{ defaultText }}</label>\n <select\n [(ngModel)]=\"binding\"\n (ngModelChange)=\"seleccionar($event)\"\n (click)=\"click($event)\"\n [ngClass]=\"textClass\"\n [disabled]=\"disabledSel\">\n <option *ngFor=\"let item of data; index as i\" [value]=\"item.code\">\n {{ label === 'displayName' ? item.displayName : item.name }} {{ item.prefix }}\n </option>\n </select>\n </div>\n `,\n styleUrls: ['./select.css'],\n})\nexport class SelectComponent {\n\n binding: any;\n boxShadow: number = 0;\n formControl!: FormControl;\n clicked: boolean = false;\n\n @Input() isRequired!: boolean; // temas de validacion\n // objeto que me trae el listado\n @Input() data!: any[]; // recibe un array de cualquier cosa\n @Input() defaultText!: any;\n @Input() selectCode!:string;\n @Input() disabledSel:boolean = false;\n @Input() initialValue!: string;\n @Input() label!: string;\n\n @Output() eventSelect = new EventEmitter<string>();\n // type viene de otro componente -> indica de que tipo es el arreglo si pregrade, posgrade o modo\n @Input() set control(value: AbstractControl) {\n if (this.formControl !== value) {\n this.formControl = value as FormControl;\n }\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes['data']) {\n this.setBinding();\n }\n }\n ngOnInit(): void {\n this.setBinding();\n }\n\n seleccionar(evt: string) {\n if (this.eventSelect.emit(evt) !== this.defaultText) {\n this.boxShadow = 1;\n } else {\n this.boxShadow = 2;\n }\n }\n\n private setBinding() {\n if (this.initialValue !== '') {\n this.binding = this.initialValue;\n } else {\n this.binding = this.defaultText;\n }\n }\n\n click(value: MouseEvent) {\n this.clicked = value.isTrusted;\n }\n\n\n public get textClass(): string {\n return this.defaultText === '' ? 'selected' : 'select';\n }\n\n public get labelClass(): string {\n return (this.clicked || this.initialValue !== '') ? 'labelUp' : 'label';\n }\n\n}\n","import { Component, Input, Output, EventEmitter } from '@angular/core';\n\n@Component({\n selector: 'ipt-text-link',\n template: `\n <a class=\"text-link\" (click)='isLinkClicked()'>\n <p class=\"text-link__paragraph\">\n <i class=\"{{icon}}\" aria-hidden=\"true\"></i>\n {{text}}\n </p>\n </a>\n `,\n styleUrls: ['./text-link.css'],\n})\n\nexport class TextLinkComponent {\n\n @Input() text!: string;\n @Input() blank?: boolean;\n @Input() icon?: string;\n\n @Output() isClicked = new EventEmitter<boolean>();\n\n\n constructor() {\n }\n\n isLinkClicked() {\n this.isClicked.emit(true);\n }\n\n}\n","import { HttpHeaders } from \"@angular/common/http\";\n\nexport class IPTGeneralService {\n\n httpOptions: any;\n\n baseUrl(): string {\n let url = window.location.href;\n\n if (url.includes('localhost') || url.includes('qa')) {\n return 'https://lab.iptdev.com.co/';\n } else if ( url.includes('inglesparatodos.edu.co')) {\n return 'https://iptdev.com.co/';\n } else if ( url.includes('inglesparatodos.us')) {\n return 'https://iptdev.com.co/';\n } else {\n return 'error.com';\n }\n }\n\n // construye los headers y params\n generateRequestParams(param: any) {\n this.httpOptions = {\n header: new HttpHeaders(),\n params: param,\n };\n }\n}\n","import { Injectable } from '@angular/core';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { Observable } from 'rxjs';\nimport { RegisterIndexRq, RegisterDashboardRq, UserTokenRq, ForgotPasswordRq, LoginRq, RegisterRq, getStudentRq, TeacherByCodeRq, userTokenRq, IUpdtaeUserValidatedRq, IObtainUserByEmailDocRq, IStudentOrUserEktByConceptRq, UserTokenRq2, ParamsUser, IusersRq, IDeleteTeacherRq,IUpdateDataTeacherRq, IObtainDataFromSuppliersStudentRq, IGeUsersFromDepartmentsRq } from '../../models/user/user-rq.model';\nimport { getStrategyByUserCommercialRq } from '../../models/marketing/marketing.model';\nimport { IPTGeneralService } from '../service-enviroments';\nimport { GetStudentByCodeRq, tokenAdministrativeRq } from '../../models/payment/payment-rq.model';\nimport { IReportExcelRq } from '../../models/commercial/commercial.model';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class UserService extends IPTGeneralService{\n private SERVICE_URL = 'users/api/';\n\n constructor(private http: HttpClient) {\n super();\n this.SERVICE_URL = this.baseUrl() + this.SERVICE_URL;\n }\n\n login(userLogin: LoginRq): Observable<any> {\n let serviceUrl = this.SERVICE_URL + 'post/login';\n this.generateRequestParams(userLogin);\n return this.http.post(serviceUrl, this.httpOptions);\n }\n\n resetPassword(resetPassword: ForgotPasswordRq): Observable<any> {\n let serviceUrl = this.SERVICE_URL + 'reset/password';\n this.generateRequestParams(resetPassword);\n return this.http.post(serviceUrl, this.httpOptions);\n }\n\n register(user: RegisterRq): Observable<any> {\n let serviceUrl = this.SERVICE_URL + 'post/create/web';\n this.generateRequestParams(user);\n return this.http.post(serviceUrl, this.httpOptions);\n }\n\n registerIndex(register: RegisterIndexRq): Observable<any> {\n let serviceUrl = this.SERVICE_URL + 'post/create/marketing';\n this.generateRequestParams(register);\n return this.http.post(serviceUrl, this.httpOptions);\n }\n\n registerDashboard(user: RegisterDashboardRq): Observable<any> {\n let serviceUrl = this.SERVICE_URL + 'post/create/dashboard';\n this.generateRequestParams(user);\n return this.http.post(serviceUrl, this.httpOptions);\n }\n\n getAvailableTeachers(token: UserTokenRq): Observable<any> {\n let serviceUrl = this.SERVICE_URL + 'post/obtain/teachers';\n this.generateRequestParams(token);\n return this.http.post(serviceUrl, this.httpOptions);\n }\n\n getAllAdvisor(userToken: getStrategyByUserCommercialRq): Observable<any> {\n let serviceUrl = this.SERVICE_URL + 'post/obtain/all/user/commercial';\n this.generateRequestParams(userToken);\n return this.http.post(serviceUrl, this.httpOptions);\n }\n\n getByRoleUser(codeRole: number): Observable<any> {\n let serviceUrl = this.SERVICE_URL + 'get/obtain/by/role/user/' + codeRole;\n return this.http.get(serviceUrl);\n }\n\n getUserStatistics(userToken: getStrategyByUserCommercialRq): Observable<any> {\n let serviceUrl = this.SERVICE_URL + 'get/contact/strategy/statistics';\n this.generateRequestParams(userToken);\n return this.http.post(serviceUrl, this.httpOptions);\n }\n\n getRoutesForRole(token: UserTokenRq2): Observable<any> {\n let serviceUrl = this.SERVICE_URL + 'post/routes/role';\n this.generateRequestParams(token);\n return this.http.post(serviceUrl, this.httpOptions);\n }\n\n getStudents(token: UserTokenRq): Observable<any> {\n let serviceUrl = this.SERVICE_URL + 'post/obtain/students';\n this.generateRequestParams(token);\n return this.http.post(serviceUrl, this.httpOptions);\n }\n\n getStudent(token: getStudentRq): Observable<any> {\n let serviceUrl = this.SERVICE_URL + 'post/obtain/student';\n this.generateRequestParams(token);\n return this.http.post(serviceUrl, this.httpOptions);\n }\n\n getAllAdministrative(userToken: tokenAdministrativeRq): Observable<any> {\n let serviceUrl = this.SERVICE_URL + 'post/obtain/all/user/administrative';\n this.generateRequestParams(userToken);\n return this.http.post(serviceUrl, this.httpOptions);\n }\n getAllMarketing(userToken: tokenAdministrativeRq): Observable<any> {\n let serviceUrl = this.SERVICE_URL + 'post/obtain/all/user/marketing';\n this.generateRequestParams(userToken);\n return this.http.post(serviceUrl, this.httpOptions);\n }\n\n getStudenbyCode(parans: GetStudentByCodeRq): Observable<any> {\n let serviceUrl = this.SERVICE_URL + 'get/obtain/student/by/code';\n this.generateRequestParams(parans);\n return this.http.post(serviceUrl, this.httpOptions);\n }\n\n getTeachersbyCode(parans: TeacherByCodeRq): Observable<any> {\n let serviceUrl = this.SERVICE_URL + 'post/obtain/teachers/by/code';\n this.generateRequestParams(parans);\n return this.http.post(serviceUrl, this.httpOptions);\n }\n\n getAllUserByRole(userToken: userTokenRq): Observable<any> {\n let serviceUrl = this.SERVICE_URL + 'post/obtain/all/user/by/role';\n this.generateRequestParams(userToken);\n return this.http.post(serviceUrl, this.httpOptions);\n }\n\n getUserRoleByCode(codeRole: number): Observable<any> {\n let serviceUrl = this.SERVICE_URL + 'get/obtain/user/role/by/code/' + codeRole;\n return this.http.get(serviceUrl);\n }\n\n getUserAllBudget(userToken: tokenAdministrativeRq): Observable<any> {\n let serviceUrl = this.SERVICE_URL + 'post/obtain/all/user/budget';\n this.generateRequestParams(userToken);\n return this.http.post(serviceUrl, this.httpOptions);\n }\n\n getObtainPossibleStudents(userToken: tokenAdministrativeRq): Observable<any> {\n let serviceUrl = this.SERVICE_URL + 'post/obtain/possibleStudents';\n this.generateRequestParams(userToken);\n return this.http.post(serviceUrl, this.httpOptions);\n }\n\n getAllUserByRoleValidate(token: string): Observable<any> {\n let serviceUrl = this.SERVICE_URL + 'post/obtain/by/rol/all/user/validated';\n this.generateRequestParams(token);\n return this.http.post(serviceUrl, this.httpOptions);\n }\n\n updateUserValidated(params: string): Observable<any> {\n let serviceUrl = this.SERVICE_URL + 'post/update/user/validated';\n this.generateRequestParams(params);\n return this.http.post(serviceUrl, this.httpOptions);\n }\n\n deletedUserValidated(params: IUpdtaeUserValidatedRq): Observable<any> {\n let serviceUrl = this.SERVICE_URL + 'post/deleted/user/validated';\n this.generateRequestParams(params);\n return this.http.post(serviceUrl, this.httpOptions);\n }\n\n obtainStudentByDocumentEmail(params: IObtainUserByEmailDocRq): Observable<any> {\n let serviceUrl = this.SERVICE_URL + 'post/obtain/student/by/document/email';\n this.generateRequestParams(params);\n return this.http.post(serviceUrl, this.httpOptions);\n }\n\n obtainDataByUserLoged(params: IReportExcelRq): Observable<any> {\n let serviceUrl = this.SERVICE_URL + 'post/obtain/user/commercial/loged';\n this.generateRequestParams(params);\n return this.http.post(serviceUrl, this.httpOptions);\n }\n obtainStudentOrUserEktByConcept(params: IStudentOrUserEktByConceptRq): Observable<any> {\n let serviceUrl = this.SERVICE_URL + 'post/obtain/students/by/type/concept/in/payments';\n this.generateRequestParams(params);\n return this.http.post(serviceUrl, this.httpOptions);\n }\n\n obtainReferralUsers(token: getStudentRq): Observable<any> {\n let serviceUrl = this.SERVICE_URL + 'post/obtain/referral/users';\n this.generateRequestParams(token);\n return this.http.post(serviceUrl, this.httpOptions);\n }\n obtainUsersThreeDptoCommercialAndAdministrativeAndBudget(token: getStrategyByUserCommercialRq): Observable<any> {\n let serviceUrl = this.SERVICE_URL + 'post/obtain/user/commercial/administrative/budgets';\n this.generateRequestParams(token);\n return this.http.post(serviceUrl, this.httpOptions);\n }\n\n obtainTeachersAvailableToTeach(): Observable<any> {\n let serviceUrl = this.SERVICE_URL + 'get/obtain/teachers/available/to/teach';\n return this.http.get(serviceUrl);\n }\n\n searchUser(param: ParamsUser): Observable<any>{\n let serviceUrl = this.SERVICE_URL + 'post/search/user';\n this.generateRequestParams(param);\n return this.http.post(serviceUrl, this.httpOptions);\n }\n\n getUserByCode(codeUser: number): Observable<any> {\n let serviceUrl = this.SERVICE_URL + 'get/user/by/code/' + codeUser;\n return this.http.get(serviceUrl);\n }\n createProveedor(param:IusersRq): Observable<any> {\n let serviceUrl = this.SERVICE_URL + 'post/create/user';\n this.generateRequestParams(param);\n return this.http.post(serviceUrl, this.httpOptions);\n }\n updateUser(param:any): Observable<any> {\n let serviceUrl = this.SERVICE_URL + 'update/data/user/cod/self/managed';\n this.generateRequestParams(param);\n return this.http.post(serviceUrl, this.httpOptions);\n }\n\n DeleteTeacherByCode(params: IDeleteTeacherRq): Observable<any> {\n let serviceUrl = this.SERVICE_URL + 'post/delete/teacher/by/code';\n this.generateRequestParams(params);\n return this.http.post(serviceUrl, this.httpOptions);\n }\n\n UpdateTeacherDataByCode(params: IUpdateDataTeacherRq): Observable<any> {\n let serviceUrl = this.SERVICE_URL + 'post/update/teacher/data/by/code';\n this.generateRequestParams(params);\n return this.http.post(serviceUrl, this.httpOptions);\n }\n\n getAllUsersCommisions(params: getStrategyByUserCommercialRq): Observable<any> {\n let serviceUrl = this.SERVICE_URL + 'post/obtain/all/user/commissions';\n this.generateRequestParams(params);\n return this.http.post(serviceUrl, this.httpOptions);\n }\n\n obtainDataFromSuppliersStudent(params: IObtainDataFromSuppliersStudentRq): Observable<any> {\n let serviceUrl = this.SERVICE_URL + 'obtain/data/from/suppliers/or/students';\n this.generateRequestParams(params);\n return this.http.post(serviceUrl, this.httpOptions);\n }\n\n getUsersFromDepartments(params: IGeUsersFromDepartmentsRq): Observable<any> {\n let serviceUrl = this.SERVICE_URL + 'get/users/from/departments';\n this.generateRequestParams(params);\n return this.http.post(serviceUrl, this.httpOptions);\n }\n\n}\n","import { Injectable } from \"@angular/core\";\nimport { Session } from \"../../models/session/session.model\";\nimport { UserRs } from \"../../models/user/user-rs.model\";\n\n@Injectable({\n providedIn: 'root',\n})\nexport class StorageService {\n\n private localStorageService;\n private currentSession : Session | null= null;\n\n constructor() {\n this.localStorageService = localStorage;\n this.currentSession = this.loadSessionData();\n }\n\n setCurrentSession(session: Session): void {\n this.currentSession = session;\n this.localStorageService.setItem('606a7d4e73650b75ebb06972e77d6cc4', JSON.stringify(session));\n }\n\n loadSessionData(): Session | null {\n var sessionStr = this.localStorageService.getItem('606a7d4e73650b75ebb06972e77d6cc4');\n return (sessionStr) ? <Session> JSON.parse(sessionStr) : null;\n }\n\n getCurrentSession(): Session | null {\n return this.currentSession;\n }\n\n removeCurrentSession(): void {\n this.localStorageService.removeItem('606a7d4e73650b75ebb06972e77d6cc4');\n this.currentSession = null;\n }\n\n getCurrentUser(): UserRs | null {\n var session: Session | null = this.getCurrentSession();\n return (session && session.user) ? session.user : null;\n };\n\n isAuthenticated(): boolean {\n return (this.getCurrentToken() != null) ? true : false;\n };\n\n getCurrentToken(): string | null{\n var session = this.getCurrentSession();\n return (session && session.token) ? session.token : null;\n };\n\n logout(): void{\n this.removeCurrentSession();\n }\n\n}\n","import { Injectable } from '@angular/core';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { Observable } from 'rxjs';\nimport { eventqueryRq } from '../../models/calendar/calendar-rq.models';\nimport { AddNewEventRq, AvailabilityQueryRq, AvailabilityQueryRqs, GetEventByDateTimeRq, GetEventsByCourseRq, IObtainAvailableCourseDayRq } from '../../models/cronogram/cronogram.models';\nimport { Response } from '../../models/response/response.interface';\nimport { IPTGeneralService } from '../service-enviroments';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class CalendarService extends IPTGeneralService{\n private SERVICE_URL = 'calendar/api/'\n\n constructor(private http: HttpClient) {\n super();\n this.SERVICE_URL = this.baseUrl() + this.SERVICE_URL;\n }\n\n postCreateQueryEvent(params: AvailabilityQueryRq): Observable<Response>{\n let serviceUrl = this.SERVICE_URL + 'post/event/create/query';\n this.generateRequestParams(params);\n return this.http.post<Response>(serviceUrl, this.httpOptions);\n }\n\n getEventByIdCalendar(idCalendar: string): Observable<any> {\n let serviceUrl = this.SERVICE_URL + 'get/event/calendar/idcalendar/all/' + idCalendar;\n return this.http.get(serviceUrl);\n }\n\n postEventByDayTime(params: eventqueryRq): Observable<any> {\n let serviceUrl = this.SERVICE_URL + 'post/event/calendar/idcalendar/by/datetime';\n this.generateRequestParams(params);\n return this.http.post(serviceUrl, this.httpOptions);\n }\n\n getEventsByCourse(params: GetEventsByCourseRq): Observable<any> {\n let serviceUrl = this.SERVICE_URL + 'post/event/calendar/idcalendar/by/course';\n this.generateRequestParams(params);\n return this.http.post(serviceUrl, this.httpOptions);\n }\n\n getEventByDateTime(params: GetEventByDateTimeRq): Observable<any> {\n let serviceUrl = this.SERVICE_URL + 'post/event/calendar/idcalendar/by/datetime';\n this.generateRequestParams(params);\n return this.http.post(serviceUrl, this.httpOptions);\n }\n\n\n //duplicida de ep\n getAvailability(params: AvailabilityQueryRqs): Observable<any> {\n let serviceUrl = this.SERVICE_URL + 'post/event/create/query';\n this.generateRequestParams(params);\n return this.http.post(serviceUrl, this.httpOptions);\n }\n\n addNewEvent(params: AddNewEventRq): Observable<any> {\n let serviceUrl = this.SERVICE_URL + 'post/add/event/calendar/by/daytime';\n this.generateRequestParams(params);\n return this.http.post(serviceUrl, this.httpOptions);\n }\n\n newCreateEvents(params: AddNewEventRq): Observable<any> {\n let serviceUrl = this.SERVICE_URL + 'post/create/new/events';\n this.generateRequestParams(params);\n return this.http.post(serviceUrl, this.httpOptions);\n }\n\n ObtainUnitsNameCourseType(params: any): Observable<any> {\n let serviceUrl = this.SERVICE_URL + 'post/obtain/unitsname/by/coursetype';\n this.generateRequestParams(params);\n return this.http.post(serviceUrl, this.httpOptions);\n }\n\n getAllEventByCourse(params: GetEventsByCourseRq): Observable<any> {\n let serviceUrl = this.SERVICE_URL + 'post/all/event/calendar/idcalendar/by/course';\n this.generateRequestParams(params);\n return this.http.post(serviceUrl, this.httpOptions);\n }\n\n obtainAvailableCourseDays(params: IObtainAvailableCourseDayRq): Observable<any> {\n let serviceUrl = this.SERVICE_URL + 'post/obtain/available/course/days';\n this.generateRequestParams(params);\n return this.http.post(serviceUrl, this.httpOptions);\n }\n\n obtainAvailableClassroomsInCalendar(params: AvailabilityQueryRq): Observable<any> {\n let serviceUrl = this.SERVICE_URL + 'post/obtain/available/classrooms/in/calendar';\n this.generateRequestParams(params);\n return this.http.post(serviceUrl, this.httpOptions);\n }\n\n}\n","import { Injectable } from '@angular/core';\nimport { LoginRq, RegisterDashboardRq } from '../../models/user/user-rq.model';\nimport { UserService } from '../../services/user-service/user-service';\nimport Swal from 'sweetalert2';\nimport { Session } from '../../models/session/session.model';\nimport { StorageService } from '../../services/storage-service/storage-service';\nimport { AvailabilityQueryRq } from '../../models/cronogram/cronogram.models';\nimport { CalendarService } from '../../services/calendar-service/calendar.service';\nimport { Response } from '../../models/response/response.interface';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class BaseService {\n\n constructor(\n private userService: UserService,\n private storageService: StorageService,\n private calendarService: CalendarService\n ) {}\n\n webLogin(user: string, password: string): Promise<boolean>{\n let request: LoginRq = {\n user: user,\n password: password\n }\n let service = this.userService;\n let storage = this.storageService;\n let appUser = this.isAnAppUser();\n\n return new Promise(function(resolve, reject) {\n service.login(request).subscribe( response => {\n switch (response.message.code) {\n case 1:\n if(!appUser) {\n Swal.fire ({\n 'title': '<p style=\"font-family: Poppins\"\">Perfect!</p>',\n 'html': '<p style=\"font-family: Poppins\"\">Succesfull login</p>',\n 'icon':'success',\n });\n }\n const loginRegisterUser: Session = {\n token: response.data.token,\n user: response.data,\n };\n\n storage.setCurrentSession(loginRegisterUser);\n resolve(true);\n break;\n case 2:\n Swal.fire({\n 'title': '<p style=\"font-family: Poppins\"\">Warning!</p>',\n 'html': '<p style=\"font-family: Poppins\"\">The data does not correspond to a user registered in our system, please review them.</p>',\n 'icon':'warning',\n });\n\n resolve(false);\n break;\n case 3:\n Swal.fire({\n 'title': '<p style=\"font-family: Poppins\"\">Error!</p>',\n 'html': '<p style=\"font-family: Poppins\"\">The input data does not meet the established parameters.</p>',\n 'icon':'error',\n });\n\n resolve(false);\n break;\n case 4:\n Swal.fire({\n title: '<p style=\"font-family: Poppins\">Warning!</p>',\n html: '<div style=\"text-align: center; font-family: Poppins;\">' +\n '<i class=\"fas fa-exclamation-triangle\" style=\"color: red; font-size: 24px;\"></i>' +\n '<p>Your account is in inactive status. Contact support.</p>' +\n '</div>',\n showConfirmButton: true,\n });\n resolve(false);\n break;\n default:\n Swal.fire({\n 'title': '<p style=\"font-family: Poppins\"\">Error!</p>',\n 'html': '<p style=\"font-family: Poppins\"\">An unexpected error has occurred</p>',\n 'icon':'error',\n });\n\n resolve(false);\n break;\n }\n reject('Unhandled exception');\n });\n })\n }\n\n getCronogramAvailability(isTeacher: boolean, code: number, startDate: string, numClass: number, weekDays: any[], startTime: string, endTime: string): Promise<any>{\n let request: AvailabilityQueryRq = {\n isTeacher: isTeacher,\n code: code,\n startDate: startDate,\n numClass: numClass,\n weekDays: weekDays,\n startTime: startTime,\n endTime: endTime,\n };\n\n let service = this.calendarService;\n\n return new Promise(function(resolve, reject) {\n service.postCreateQueryEvent(request).subscribe( (response: Response) => {\n switch (response.message.code) {\n case 1:\n resolve(response.data);\n break\n default:\n reject('Unhandled exception');\n }\n reject('Unhandled exception');\n });\n });\n }\n\n isAnAppUser() {\n const userAgent: string = window.navigator.userAgent;\n return userAgent.includes('Flutter IPT APP');\n }\n\n getUserRole(): number {\n let user = this.storageService.getCurrentUser()?.role;\n return user === undefined ? -1 : user;\n }\n\n getUserToken(): string {\n let token = this.storageService.getCurrentUser()?.token;\n return token === undefined ? '-1' : token;\n }\n\n getUserName(): string {\n let user = this.storageService.getCurrentUser();\n let response = user === null ? '' : user.name;\n return response;\n }\n\n getUserCode(): number {\n let user = this.storageService.getCurrentUser();\n let response = user === null ? -1 : user.code;\n return response;\n }\n\n registerUserFromDashboard(registerDashboardRq: RegisterDashboardRq): Promise<boolean>{\n let request = registerDashboardRq;\n let service = this.userService;\n\n return new Promise(function(resolve, reject) {\n service.registerDashboard(request).subscribe((response) => {\n\n switch (response.message.code) {\n case 1:\n Swal.fire ({\n 'title': '<p style=\"font-family: Poppins\"\">Perfect!</p>',\n 'html': '<p style=\"font-family: Poppins\"\">Sucesfull register!</p>',\n 'icon':'success',\n });\n resolve(true);\n break;\n case 3:\n Swal.fire ({\n 'title': '<p style=\"font-family: Poppins\"\">Error!</p>',\n 'html': '<p style=\"font-family: Poppins\"\">The input data does not meet the established parameters.</p>',\n 'icon':'error',\n });\n resolve(false);\n break;\n case 4:\n Swal.fire ({\n 'title': '<p style=\"font-family: Poppins\">Ups!</p>',\n 'html': '<p style=\"font-family: Poppins\">The input data has a high relation with a user that already exists!</p>',\n 'icon': 'warning',\n });\n resolve(false);\n break;\n default:\n Swal.fire ({\n 'title': '<p style=\"font-family: Poppins\"\">Error!</p>',\n 'html': '<p style=\"font-family: Poppins\"\">An unexpected error has occurred</p>',\n 'icon':'error',\n });\n resolve(false);\n break;\n }\n\n reject('Unhandled exception');\n });\n });\n }\n\n jsonToArray(data: any[]): any[][] {\n var response: any[] = [];\n data.forEach((element) => {\n var object: any[] = [];\n for (var clave in element) {\n if (element.hasOwnProperty(clave)) {\n if (typeof element[clave] == 'object') {\n element[clave] = this.subJsonToArray(element[clave]);\n }\n\n object.push(element[clave]);\n }\n }\n response.push(object);\n });\n return response;\n }\n\n subJsonToArray(data: any[]): string {\n var object: string = '';\n for (var clave in data) {\n if (clave != 'code') {\n object += '\\n' + data[clave];\n }\n }\n return object;\n }\n\n}\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { BaseService } from '../../../core/utils/base-service/base.service';\n\n@Component({\n selector: 'ipt-login-form',\n template: `\n <div class=\"form-container\">\n\n <h2 style=\"text-align: center;\">IPT PLATFORM</h2>\n <hr>\n\n <form (ngSubmit)=\"login(loginForm)\" [formGroup]=\"loginForm\">\n <ipt-input\n [inputType]=\"'text'\"\n [placeHolder]=\"'Email'\"\n [validateText]=\"'Debe ser @inglesparatodos.edu.co'\"\n [control]=\"loginForm.controls['email']\"\n ></ipt-input>\n\n <ipt-input\n [inputType]=\"'password'\"\n [placeHolder]=\"'Password'\"\n [control]=\"loginForm.controls['password']\"\n ></ipt-input>\n </form>\n\n <div class=\"button-container\">\n <ipt-button\n [label]=\"'Login'\"\n [primary]=\"true\"\n [isEnabled]=\"loginForm.valid\"\n (onClick)=\"login(loginForm)\"\n ></ipt-button>\n </div>\n\n </div>\n `,\n styleUrls: ['./login-form.css']\n})\n\nexport class LoginFormComponent {\n\n @Output() isLogged = new EventEmitter<boolean>();\n\n loginForm!: FormGroup;\n\n constructor(\n fb: FormBuilder,\n private baseService: BaseService,\n ) {\n this.loginForm = fb.group({\n email: ['', [Validators.required]],\n password: ['', [Validators.required, Validators.minLength(3),Validators.maxLength(15)]],\n });\n }\n\n login(data: FormGroup) {\n this.baseService.webLogin(data.controls['email'].value, data.controls['password'].value).then((isLogged) =>{\n this.isLogged.emit(isLogged);\n });\n }\n\n}\n","import { Injectable } from '@angular/core';\nimport { HttpClient } from '@angular/common/http';\nimport { Observable } from 'rxjs';\nimport { IPTGeneralService } from '../service-enviroments';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ParameterService extends IPTGeneralService{\n private SERVICE_URL = 'parameters/api/';\n\n constructor(private http: HttpClient) {\n super();\n this.SERVICE_URL = this.baseUrl() + this.SERVICE_URL;\n }\n\n getIndicatives(): Observable<any> {\n let serviceUrl = this.SERVICE_URL + 'get/indicatives';\n return this.http.get(serviceUrl);\n }\n\n getCardTypes(country: string): Observable<any> {\n let serviceUrl = this.SERVICE_URL + 'get/id/card/type/country/' + country;\n return this.http.get(serviceUrl);\n }\n\n getCountries(): Observable<any> {\n let serviceUrl = this.SERVICE_URL + 'get/countries';\n return this.http.get(serviceUrl);\n }\n\n getStatesByCountry(country: string): Observable<any> {\n let serviceUrl = this.SERVICE_URL + 'get/state/country/iso/' + country;\n return this.http.get(serviceUrl);\n }\n\n getCitiesByState(state: number): Observable<any> {\n let serviceUrl = this.SERVICE_URL + 'get/cities/state/' + state;\n return this.http.get(serviceUrl);\n }\n\n getAllPlans(): Observable<any> {\n let serviceUrl = this.SERVICE_URL + 'get/all/plans';\n return this.http.get(serviceUrl);\n }\n\n getLevels(): Observable<any> {\n let serviceUrl = this.SERVICE_URL + 'get/english/levels';\n return this.http.get(serviceUrl);\n }\n\n getAgreements(): Observable<any> {\n let serviceUrl = this.SERVICE_URL + 'get/all/agreement';\n return this.http.get(serviceUrl);\n }\n\n getAgreementByCategory(typeCategory: any): Observable<any> {\n let serviceUrl =\n this.SERVICE_URL + 'get/agreement/by/category/' + typeCategory;\n return this.http.get(serviceUrl);\n }\n\n getAllClassrooms(): Observable<any> {\n let serviceUrl = this.SERVICE_URL + 'get/all/classroom';\n return this.http.get(serviceUrl);\n }\n\n getCoursesTypes(): Observable<any> {\n let serviceUrl = this.SERVICE_URL + 'get/all/course/type';\n return this.http.get(serviceUrl);\n }\n\n getCoursesTypesByPlan(typePlan: any): Observable<any> {\n let serviceUrl = this.SERVICE_URL + 'get/course/by/plan/' + typePlan;\n return this.http.get(serviceUrl);\n }\n\n getDegrees(): Observable<any> {\n let serviceUrl = this.SERVICE_URL + 'get/all/degrees';\n return this.http.get(serviceUrl);\n }\n\n getProgramsByDegree(typeDegree: any): Observable<any> {\n let serviceUrl = this.SERVICE_URL + 'get/programs/by/degree/' + typeDegree;\n return this.http.get(serviceUrl);\n }\n\