PageSourceSearch

https://neptun.or-zse.hu/hallgato/chunk-Q6Z3IAZG.js

js or-zse.hu collected 2026-09-24 09:56:59 UTC 376,128 bytes, 4 lines download raw bytes

1import{b as vr,c as yr}from"./chunk-EXWMFHOM.js";import{b as Ar}from"./chunk-QORPVEM4.js";import{a as ma}from"./chunk-MWNQ3CYI.js";import{a as Dr,b as Pr,c as wr}from"./chunk-2PSE4HEA.js";import{H as Cr,a as Zi,b as Ji,c as en,d as na,f as aa,k as oa,l as ra,t as Ti}from"./chunk-QQ7JQCHF.js";import{a as Or,b as Mr}from"./chunk-3VVFTJSN.js";import"./chunk-EVHUHRQK.js";import{a as sr}from"./chunk-XYNWAY7T.js";import"./chunk-53DRKK27.js";import"./chunk-5E2JT4P7.js";import{a as fr,b as hr,c as Er,d as br}from"./chunk-KNJVOY2E.js";import{a as pr}from"./chunk-QLEYIDAF.js";import{a as lr}from"./chunk-QQKZ6OSD.js";import{a as Ii}from"./chunk-2Q6SXNIW.js";import{d as ia}from"./chunk-2LU5KCEW.js";import"./chunk-5FUP2WAQ.js";import"./chunk-ARGE2QLS.js";import"./chunk-ZORQQVZX.js";import"./chunk-RXUH5EFX.js";import"./chunk-QRT62Y37.js";import"./chunk-GFK7UREF.js";import{a as or}from"./chunk-4H53HP2C.js";import{a as Jt,l as Ir,m as Tr,n as Fr,o as Rr,p as sa}from"./chunk-2JQP6GRY.js";import"./chunk-JSKNW222.js";import"./chunk-3O5PBSXI.js";import"./chunk-LXX4IFVD.js";import"./chunk-52CTBXHD.js";import{a as Ce}from"./chunk-WT72IDYJ.js";import{a as ur,b as _r,c as xr}from"./chunk-E5LDR5GR.js";import{F as cn,G as pn,k as Wn,l as Qn,n as Kn,p as Xn,q as Yn,s as Zn,w as gr,x as ta}from"./chunk-FSMGANNP.js";import{e as zn,h as ea}from"./chunk-2GCGGU75.js";import{a as mr}from"./chunk-4FGF477O.js";import{b as yi}from"./chunk-4KXEJ6AT.js";import{c as dr}from"./chunk-2SZTXQZ3.js";import"./chunk-2O2TWZAP.js";import"./chunk-ICABYBHC.js";import{b as Pt,c as wt,d as Xi,e as At,k as Yi,l as vi,n as Sr}from"./chunk-7XSHQ2JZ.js";import"./chunk-BDDSILMW.js";import{a as Vt}from"./chunk-6BQ7O2GO.js";import{a as cr}from"./chunk-II4S2DSJ.js";import"./chunk-RHKSWEWJ.js";import"./chunk-3F4GKTAY.js";import"./chunk-TE22THZE.js";import"./chunk-HAJVNCKC.js";import{c as Ci,d as Jn,g as Ue,h as bt,i as Zt}from"./chunk-RM5FKR3W.js";import"./chunk-OG5JBOO2.js";import"./chunk-HKJYGZTV.js";import{a as Un}from"./chunk-HDAQP5OA.js";import{a as ar}from"./chunk-RTUPBDGK.js";import"./chunk-EO6G7JZP.js";import{a as bi,c as Gn}from"./chunk-L7CSSELW.js";import{g as Qi,i as Si,k as Ki}from"./chunk-IHBRULXZ.js";import{b as Ei,d as kt}from"./chunk-ETRVFD3K.js";import"./chunk-6EBTZJ2C.js";import"./chunk-OXVJUPH2.js";import{a as rr}from"./chunk-NODD4QCF.js";import"./chunk-WRHLYV72.js";import"./chunk-WYHT5LVI.js";import"./chunk-KGW4SCA2.js";import"./chunk-OPZSNKHX.js";import{b as Xo}from"./chunk-ZOR2MGFL.js";import"./chunk-6GVXSXVR.js";import{a as ir}from"./chunk-XRI75B37.js";import"./chunk-KTZAYU63.js";import{a as Ui}from"./chunk-3RANQNYM.js";import{c as pt,g as Vi}from"./chunk-FBOJBCTO.js";import"./chunk-M7E5MMOE.js";import"./chunk-AXD322OJ.js";import{b as Hi,c as Gi,d as Vn,e as zi,f as Wi}from"./chunk-7TMAO3B2.js";import{a as me,b as xt,c as gt}from"./chunk-737SADXK.js";import"./chunk-YVHUP7FX.js";import{a as nr}from"./chunk-FGOVRAJM.js";import"./chunk-IDXDMLN2.js";import"./chunk-MPXKXNFL.js";import"./chunk-ATNV2VT2.js";import{a as Hn}from"./chunk-XXU4FZ4Q.js";import"./chunk-XZ77C7GC.js";import{a as Ye,b as Ze}from"./chunk-6NEZQN5R.js";import{$ as U,$a as N,$b as On,$f as zo,Ab as s,Aj as Nn,B as Fn,Ba as He,Bb as No,Bi as Ni,Bj as hi,Cb as $o,Cj as Rt,Dh as tt,Di as $i,E as le,Ec as qt,Ei as je,Ej as dt,Fb as Bo,Fc as H,Fd as di,Fe as ee,Fi as Bi,Fj as qi,G as pe,Gd as ui,Ge as Pe,Gj as $n,Hi as Ae,Jg as ki,Ji as It,Kb as Y,Kd as _i,Kh as it,Ki as ze,Li as We,M as W,Mb as _,Mc as Ho,Mi as er,Mj as fe,Nb as y,Ob as O,Oi as Tt,Pb as vt,Q as ct,Qa as Rn,R as Oo,Ra as ko,Re as Ln,Rg as xi,Sb as Pn,Sd as ie,Se as J,Sh as kn,Sj as Bn,Tb as wn,Te as ji,Ua as a,Ub as An,Ud as re,Uf as G,Uj as Re,Vd as Mn,Vf as Fe,Vj as Dt,W as Mo,Wc as de,Wf as et,Wj as qn,X as Lo,Xf as St,Ya as f,Yb as oe,Yg as we,Yh as nt,Yj as tr,Zb as $,_ as jo,_b as be,a as b,aa as Et,ac as qo,b as I,ba as Li,bh as Wo,ca as F,cb as pi,db as ve,dh as Qo,dk as ut,ea as De,eb as u,ec as c,eh as Ge,fc as d,fk as Qe,g as Di,gc as _e,hc as jt,hh as ne,hk as Ke,ia as M,ib as m,ic as Vo,ie as X,ih as R,ik as Xe,jc as ae,je as Se,jh as Le,kc as Uo,ke,kh as ge,kj as Ft,kk as _t,l as Tn,la as k,lb as st,le as qe,m as li,ma as se,mh as Ie,mi as Yo,mk as Ve,ne as Go,nh as wi,o as Me,oh as jn,oi as Zo,p as K,pi as Ne,q as P,rb as p,rc as Pi,s as Ee,sa as C,sb as l,sh as Ko,t as lt,ta as v,tb as g,th as gi,tj as fi,ub as E,v as T,vb as S,vj as ue,w as ye,wa as ci,wb as Be,wc as yt,xb as j,xe as Z,yb as Dn,yc as xe,yi as Jo,zb as A,zc as Q,ze as z,zj as at}from"./chunk-IVN2VXRW.js";var dn=class t{constructor(r){this.transloco=r}transform(r){return r>=1&&r<2?this.transloco.translate("global.mark1"):r>=2&&r<3?this.transloco.translate("global.mark2"):r>=3&&r<4?this.transloco.translate("global.mark3"):r>=4&&r<5?this.transloco.translate("global.mark4"):r===5?this.transloco.translate("global.mark5"):"-"}static{this.\u0275fac=function(e){return new(e||t)(f(Z,16))}}static{this.\u0275pipe=pi({name:"resultName",type:t,pure:!0})}};K([Jn(),P("design:type",Function),P("design:paramtypes",[Number]),P("design:returntype",String)],dn.prototype,"transform",null);function um(t,r){if(t&1&&g(0,"neptun-router-contents",2),t&2){let e=r.$implicit,i=s().$implicit;m("title",i(e.stringResource))("icon",e.icon)("items",e.children)}}function _m(t,r){if(t&1&&(E(0),u(1,um,1,3,"neptun-router-contents",1),c(2,"async"),S()),t&2){let e=s();a(),m("ngForOf",d(2,1,e.examsMenuItems$))}}var Lr=(()=>{class t{constructor(){this.store=se(X),this.menuItems$=this.store.select(Xo.menuItems)}ngOnInit(){this.examsMenuItems$=this.menuItems$.pipe(T(e=>e.filter(i=>i.key==="Exams")))}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275cmp=N({type:t,selectors:[["neptun-exams"]],decls:1,vars:0,consts:[[4,"transloco"],["id","exams",3,"title","icon","items",4,"ngFor","ngForOf"],["id","exams",3,"title","icon","items"]],template:function(i,n){i&1&&u(0,_m,3,3,"ng-container",0)},dependencies:[z,xe,mr,H],encapsulation:2})}}return t})();var Hr=Di(Pi());var ro=Di(Pi());var jr=(()=>{class t{transform(e,i){return e?(0,ro.default)(e).local().utcOffset(-new Date().getTimezoneOffset(),!0).from((0,ro.default)(i)):""}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275pipe=pi({name:"momentSinceDate",type:t,pure:!0})}}return t})();var lo=Di(Pi());var kr=(()=>{class t{constructor(e){this.transloco=e}transform(e){return e.isWaiting?this.transloco.translate("exams.onWaitingList"):e.maxStrength===0?this.transloco.translate("exams.full"):e.maxStrength?e.strength>=e.maxStrength?this.transloco.translate("exams.full"):e.strength<e.maxStrength?this.transloco.translate("tasks.freePlaces",{count:e.maxStrength-e.strength}):"":this.transloco.translate("menu.exams.unlimitedSpotsAvailable")}static{this.\u0275fac=function(i){return new(i||t)(f(Z,16))}}static{this.\u0275pipe=pi({name:"availabilityText",type:t,pure:!0})}}return t})();var ft=(()=>{class t{constructor(e,i){this.http=e,this.facadeService=i}signUpForExam(e,i){return this.http.post(`${J.settings.apiServer.url}ExamRegistration/SignUpForExam`,{examId:e,courseId:i}).pipe(T(n=>n.data))}unSubscribe(e,i){return this.http.post(`${J.settings.apiServer.url}ExamRegistration/UnSubscribe`,{examId:e,examSignInId:i}).pipe(T(n=>n.data))}getAvailableRequestFormTemplateDetails(e){return this.http.get(`${J.settings.apiServer.url}ExamRegistration/GetAvailableRequestFormTemplateDetails`,{params:{requestFormTemplateId:e}}).pipe(T(i=>i.data))}getFormTemplateDetails(e,i){return this.http.get(`${J.settings.apiServer.url}ExamRegistration/GetAvailableRequestFormTemplateDetails`,{params:b({requestFormTemplateId:e},i)}).pipe(T(n=>n.data))}getStartedRequestFormTemplateDetails(e){return this.http.get(`${J.settings.apiServer.url}ExamRegistration/GetStartedRequestFormTemplateDetails`,{params:{requestFormId:e}}).pipe(T(i=>i.data))}getStartedFormDetails(e){return this.http.get(`${J.settings.apiServer.url}ExamRegistration/GetStartedRequestFormTemplateDetails`,{params:{requestFormId:e}}).pipe(T(i=>i.data))}getDialogDropExamData(){let e={controllerName:"ExamRegistration",actionName:"UnSubscribe"};return{title:this.facadeService.translate("exams.cancelExamConfirm"),actions:[new $i({text:this.facadeService.translate("button.cancel"),returnValue:!1}),new Ni({color:"error",text:this.facadeService.translate("button.withdrawal"),returnValue:!0,permission:e})]}}static{this.\u0275fac=function(i){return new(i||t)(k(de),k(dt))}}static{this.\u0275prov=M({token:t,factory:t.\u0275fac})}}return t})();var ot=(()=>{class t{constructor(e,i){this.http=e,this.termService=i,this.selectedTermSubject=ne
1w li(null),this.terms$=this.termService.getTermsWithActualTerm("Exam/GetTerms"),this.resultTerms$=this.termService.getTermsWithActualTerm("ExamResults/GetTermsForGetExamResultsList"),this.defaultTerm$=ye([this.selectedTermSubject,this.terms$.pipe(T(n=>this.getActualTerm(n)))]).pipe(T(([n,o])=>n??o),ct()),this.printableTemplateTypeId$=this.http.get(`${J.settings.apiServer.url}Exam/GetPrintableTemplateTypeId`).pipe(T(n=>n.data))}examSubjects(e,i){return Fn(()=>i!==null,this.http.get(`${J.settings.apiServer.url}${e}`,{params:{termId:i??""}}).pipe(T(n=>n.data),T(n=>n.map(o=>({text:`${o.subjectName} (${o.subjectCode})`,value:o.subjectId})))),Ee([]))}examDetailExamConditions(e){let i={examId:e};return this.http.get(`${J.settings.apiServer.url}Exam/GetExamDetailExamConditions`,{params:St(i)}).pipe(T(n=>n.data))}getRequestFormTemplateList(e,i,n,o=""){return n?this.getRequestFormTemplateListForSignedExams(e,i,o):this.getRequestFormTemplateListBySubjects(i)}getRequestFormTemplateListBySubjects(e){return this.http.get(`${J.settings.apiServer.url}Exam/GetRequestFormTemplateListBySubjects`,{params:{subjectId:e}}).pipe(T(i=>i.data))}getRequestFormTemplateListForSignedExams(e,i,n=""){return this.http.get(`${J.settings.apiServer.url}Exam/GetRequestFormTemplateListForSignedExams`,{params:{courseExamId:e,subjectId:i,termId:n}}).pipe(T(o=>o.data))}setSelectedTerm(e){this.selectedTermSubject.next(e)}getActualTerm(e){return e.some(i=>i.isActualTerm)?e.find(i=>i.isActualTerm)?.value??"":e?e[0]?.value:""}getSzevExamDetailsPdf(e){return this.http.get(`${J.settings.apiServer.url}ExamRegisteredExams/GetSzevExamDetailsPdf`,{params:{examSignInId:e},observe:"response",responseType:"blob"})}static{this.\u0275fac=function(i){return new(i||t)(k(de),k(Sr))}}static{this.\u0275prov=M({token:t,factory:t.\u0275fac,providedIn:"root"})}}return t})();var xm=["data",""];function gm(t,r){if(t&1&&(p(0,"div",4)(1,"dt",5),_(2),l(),p(3,"dd"),_(4),l()()),t&2){let e=s().$implicit,i=s();a(2),y(e("finances.titleOfPayment")),a(2),y(i.data.paymentTitleType.text)}}function fm(t,r){if(t&1&&(p(0,"div",4)(1,"dt",5),_(2),l(),p(3,"dd"),_(4),c(5,"hyphen"),l()()),t&2){let e=s().$implicit,i=s();a(2),y(e("finances.serviceType")),a(2),y(d(5,2,i.data.serviceTitle.serviceTitle.text))}}function hm(t,r){if(t&1&&(p(0,"div",4)(1,"dt",5),_(2),l(),p(3,"dd"),_(4),c(5,"hyphen"),l()()),t&2){let e=s().$implicit,i=s();a(2),y(e("global.semester")),a(2),y(d(5,2,i.data.term.text))}}function Em(t,r){if(t&1&&(p(0,"div",4)(1,"dt",5),_(2),l(),p(3,"dd"),_(4),c(5,"hyphen"),l()()),t&2){let e=s().$implicit,i=s();a(2),y(e("global.subject")),a(2),y(d(5,2,i.data.subject.text))}}function Sm(t,r){if(t&1&&(p(0,"div",1)(1,"div",2),u(2,gm,5,2,"div",3),p(3,"div",4)(4,"dt",5),_(5),l(),p(6,"dd",6),_(7),c(8,"neptunCurrency"),l()()(),u(9,fm,6,4,"div",3)(10,hm,6,4,"div",3)(11,Em,6,4,"div",3),l()),t&2){let e=r.$implicit,i=s();a(2),m("ngIf",i.data.paymentTitleType),a(3),y(e("finances.feeToPayLabel")),a(2),y(_e(8,6,i.data.fee.value,i.data.fee.currency)),a(2),m("ngIf",!i.data.paymentTitleType.isReExaminationFeeType&&i.data.serviceTitle),a(),m("ngIf",i.data.term==null?null:i.data.term.value),a(),m("ngIf",i.data.subject==null?null:i.data.subject.value)}}var Nr=(()=>{class t{static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275cmp=N({type:t,selectors:[["neptun-imposition-info-box","data",""]],inputs:{data:"data"},attrs:xm,decls:1,vars:0,consts:[["class","info",4,"transloco"],[1,"info"],[1,"info__first-row"],["class","info__column",4,"ngIf"],[1,"info__column"],[1,"details-title"],[1,"fee"]],template:function(i,n){i&1&&u(0,Sm,12,9,"div",0)},dependencies:[z,Q,Re,qn],styles:[".info[_ngcontent-%COMP%]{font-size:16px;margin-bottom:24px}.info__first-row[_ngcontent-%COMP%]{display:flex}.info[_ngcontent-%COMP%]   .details-title[_ngcontent-%COMP%]{font-weight:800}.info[_ngcontent-%COMP%]   .info__column[_ngcontent-%COMP%]{flex-basis:100%;margin-bottom:20px}.info[_ngcontent-%COMP%]   .fee[_ngcontent-%COMP%]{font-weight:900;font-family:Source Sans Pro,sans-serif;color:#213055;font-size:28px}@media only screen and (max-width:574px){.info__first-row[_ngcontent-%COMP%]{flex-direction:column}}"],changeDetection:0})}}return t})();function bm(t,r){if(t&1&&(p(0,"neptun-callout-box",8),_(1),l()),t&2){let e=s(2);m("icon",e.alertTriangleIcon)("id","cashin-notification"),a(),y(e.data.cashinWarning)}}function Cm(t,r){if(t&1){let e=j();p(0,"neptun-basic-dialog-layout"),E(1,1),p(2,"h2",2),_(3),l(),S(),E(4,3),u(5,bm,2,3,"neptun-callout-box",4),g(6,"neptun-imposition-info-box",5),S(),E(7,6),p(8,"neptun-imposition-payment-buttons",7),A("createImpositionEmitter",function(){C(e);let n=s();return v(n.create(!1,n.data))}
1)("createImpositionAndPayEmitter",function(){C(e);let n=s();return v(n.create(!0,n.data))}),l(),S(),l()}if(t&2){let e=r.$implicit,i=s();a(3),y(e("finances.transcribeItem")),a(2),m("ngIf",i.data.cashinWarning),a(),m("data",i.data),a(2),m("hasPayingOption",!i.data.cashinWarning)("createPermission",i.savePermission(i.data))}}var $r=(()=>{class t{constructor(e,i,n,o,x,h,D,B){this.data=e,this.paymentService=i,this.matDialogRef=n,this.permissionService=o,this.toBePaidService=x,this.store=h,this.transloco=D,this.newImpositionDialogStore=B,this.neptunCurrenyPipe=new qn,this.destroy$=new Tn,this.alertTriangleIcon=ee.AlertTriangle,this.createNewInvoicePermission={controllerName:"InsertImposition",actionName:"SaveImpositionServiceTitle"},this.saveDashboardImpositionReExaminationFeePermission={controllerName:"FinancialDashboardInsertImposition",actionName:"SaveImpositionReExaminationFee"},this.saveToBePaidImpositionReExaminationFee={controllerName:"FinancialToBePaidInsertImposition",actionName:"SaveImpositionReExaminationFee"},this.getAllowedPaymentMethodsPermission={controllerName:"FinancialItem",actionName:"GetAllowedPaymentMethods"}}savePermission(e){return e.serviceTitle?this.createNewInvoicePermission:e.impositionType===Jt.ToBePaid?this.saveToBePaidImpositionReExaminationFee:e.impositionType!==Jt.ExamRegistered?this.saveDashboardImpositionReExaminationFeePermission:null}create(e,i){let n;i.serviceTitle?(this.newImpositionDialogStore.saveImpositionServiceTitle({termId:i.term.value,subjectId:i.subject.value,impositionValue:i.fee.value||null,feeId:i.serviceTitle.serviceTitle.value}),n=this.newImpositionDialogStore.saveImpositionServiceTitleResponse$):(i.impositionType,this.newImpositionDialogStore.saveImpositionReExaminationFee({feeData:{termId:i.term.value,subjectId:i.subject.value||"",impositionValue:i.fee.value||null,organizationPaymentTitleId:null},impositionType:i.impositionType}),n=this.newImpositionDialogStore.saveImpositionReExaminationFeeResponse$),n.pipe(U(o=>ne(o)?this.permissionService.getAccessMode(this.getAllowedPaymentMethodsPermission.controllerName,this.getAllowedPaymentMethodsPermission.actionName).pipe(F(x=>{x.accessMode==="enabled"?(this.toBePaidService.refresh(),e?this.selectPayment(o.data,i.cashinWarning,i.fee):(this.store.dispatch(new Fe.AddSuccessPushNotification({title:this.transloco.translate("notification.successfulImpositionCreation"),description:this.transloco.translate("notification.impositionCreated")})),this.matDialogRef.close())):this.matDialogRef.close()})):Ee({})),Et(this.destroy$)).subscribe()}selectPayment(e,i,n){i||this.paymentService.getAllowedPaymentMethods([e.impositionId]).pipe(F(()=>this.matDialogRef.close()),F(o=>this.paymentService.selectPaymentMethod(o,{impositionIds:[e.impositionId],amount:this.neptunCurrenyPipe.transform(n.value,n.currency),currencyId:n.currencyId,isFromCreateImposition:!0})),Et(this.destroy$)).subscribe()}ngOnDestroy(){this.destroy$.next(),this.destroy$.complete()}static{this.\u0275fac=function(i){return new(i||t)(f(ui),f(Tr),f(di),f(gi),f(Ir),f(X),f(Z),f(sa))}}static{this.\u0275cmp=N({type:t,selectors:[["neptun-imposition-summary-dialog"]],features:[oe([sa])],decls:1,vars:0,consts:[[4,"transloco"],["title",""],[1,"mat-h2"],["content",""],["bgColor","warning-light",3,"icon","id",4,"ngIf"],[3,"data"],["actions",""],[3,"createImpositionEmitter","createImpositionAndPayEmitter","hasPayingOption","createPermission"],["bgColor","warning-light",3,"icon","id"]],template:function(i,n){i&1&&u(0,Cm,9,5,"neptun-basic-dialog-layout",0)},dependencies:[z,hi,Q,qi,Nr,Fr],styles:["neptun-callout-box[_ngcontent-%COMP%]{margin-bottom:16px}@media only screen and (max-width:574px){.mat-h2[_ngcontent-%COMP%]{font-size:28px}button[_ngcontent-%COMP%]{width:100%}}"],changeDetection:0})}}return t})();var ca=(()=>{class t extends ut{constructor(e,i,n,o,x,h,D,B,te,w,q){super({createImpositionState:R,isFileDownloading:R}),this.dialogService=e,this.fileService=i,this.examRegistrationService=n,this.globalErrorHandler=o,this.printableTemplateService=x,this.examService=h,this.impositionService=D,this.transloco=B,this.requestFormTemplateDialogService=te,this.router=w,this.errorHandler=q,this.createImpositionState$=this.select(V=>V.createImpositionState),this.isFileDownloading$=this.select(V=>V.isFileDownloading).pipe(T(V=>Ae(V))),this.setIsFileDownloading=this.updater((V,ce)=>I(b({},V),{isFileDownloading:ce})),this.openPrintCertificateDialog=this.effect(V=>V.pipe(U(ce=>this.examService.printableTemplateTypeId$.pipe(U(he=>this.printableTemplateService.getPrintableTemplatesList(he.formTypeId)),T(he=>he.map(Yt=>({primary:Yt.formsName,value:Yt.formsId,secondary:[]}))),U(he=>he.length>1?this.dialogService.openDialog(bi,this.printableTemplateService.getDialogData(he)).afterClosed():Ee(he[0])),le(he=>!!he),U(he=>this.printableTemplateService.printBlankExamFormPerStudent({examId:ce.examId,formsId:he.value,subFormType:""}).pipe(F(Yt=>this.fileService.downloadFile(Yt)))))))),this.openRequestFormTemplate=this.effect(V=>V.pipe(U(ce=>{let{subjectId:he,courseExamId:Yt,startedRequestFormId:ln,onlyOneRequestFormTemplateID:In}=ce.exam.requestFormInfo;return this.requestFormTemplateDialogService.openRequestFormTemplate(ce.templateList,{startedRequestFormId:ln||void 0,service:this.examRegistrationService},In,ln,void 0,void 0,{subjectId:he}).pipe(W(1),F(rt=>{rt&&rt.selectedFormTemplateId&&this.navigateToFormFilling(rt.selectedFormTemplateId,ce.exam,Yt)}))}))),this.getRequestFormTemplateList=this.effect(V=>V.pipe(U(ce=>this.examService.getRequestFormTemplateList(ce.exam.requestFormInfo.courseExamId,ce.exam.requestFormInfo.subjectId,ce.exam.examSignInId,ce.exam.termId).pipe(F(he=>{this.openRequestFormTemplate({templateList:he,exam:ce.exam})}))))),this.createImposition=this.effect(V=>V.pipe(F(()=>{this.patchState({createImpositionState:Le})}),U(({termId:ce,subjectId:he,examId:Yt,courseId:ln,impositionType:In})=>this.impositionService.getReExaminationFeeFromExam(ce,he,Yt,ln,In).pipe(F(()=>this.patchState({createImpositionState:{data:!0}
1})),T(rt=>({organizationPaymentTitleId:rt.organizationPaymentTitleId,term:{text:rt.termName,value:ce},subject:{text:rt.subjectName,value:he},fee:{value:Number(rt.feeValue),currency:rt.feeCurrency,currencyId:rt.feeCurrencyId},cashinWarning:rt.cashinWarning,serviceTitle:void 0})),U(rt=>this.dialogService.openDialog($r,I(b({},rt),{isOpenedFromExam:!0,paymentTitleType:{text:this.transloco.translate("finances.examFee"),value:0,isReExaminationFeeType:!0},hideStudentLoan:!0,termId:ce,subjectId:he,examId:Yt,courseId:ln,impositionType:In}),{panelClass:"dialog-overlay-wrapper",maxWidth:"100vw"}).afterClosed().pipe(le(dm=>dm))),pe(rt=>(this.patchState({createImpositionState:ge}),this.globalErrorHandler.handleError(rt),Me)))))),this.getSzevExamResult=this.effect(V=>V.pipe(F(()=>this.setIsFileDownloading(Le)),U(ce=>this.examService.getSzevExamDetailsPdf(ce).pipe(F(he=>{this.setIsFileDownloading(jn),this.fileService.downloadFile(he)}),pe(he=>(this.setIsFileDownloading(ge),this.errorHandler.handleError(he),Me))))))}navigateToFormFilling(e,i,n){this.router.navigate(["administrations","request-forms","filling",e,"exam",n],{queryParams:{subjectId:i.subjectId,examSignInId:i.examSignInId,courseCode:i.courseCode,courseTerm:i.termName,courseId:i.courseId,examDate:i.fromDate,examTutor:i.examTutors,examType:i.examType},queryParamsHandling:"merge"})}static{this.\u0275fac=function(i){return new(i||t)(k(Ve),k(Hn),k(ft),k(Ce),k(Gn),k(ot),k(Rr),k(Z),k(zn),k(re),k(Ce))}}static{this.\u0275prov=M({token:t,factory:t.\u0275fac})}}return t})();var Fm=()=>({year:"numeric",month:"long",day:"numeric"}),Rm=()=>({weekday:"long"}),Dm=()=>({timeStyle:"short"}),Br=t=>({count:t}),pa=()=>({iconClass:"icon-chevron-right",fontSize:"12px"});function Pm(t,r){if(t&1){let e=j();p(0,"button",14),A("click",function(){C(e);let n=s(3);return v(n.switchExam())}),_(1),l()}if(t&2){let e=s(2).$implicit,i=s();m("disabled",i.isInProgress)("permissionRequired",i.changePermission),a(),y(e("button.replace"))}}function wm(t,r){if(t&1){let e=j();p(0,"button",15),A("click",function(){C(e);let n=s(3);return v(n.dropExam())}),_(1),l()}if(t&2){let e=s(2).$implicit,i=s();m("disabled",i.isInProgress)("permissionRequired",i.dropExamPermission),a(),y(e("button.withdrawal"))}}function Am(t,r){if(t&1){let e=j();E(0),u(1,Pm,2,3,"button",11)(2,wm,2,3,"button",12),p(3,"button",13),A("click",function(){C(e);let n=s(2);return v(n.openPrintCertificateDialog())}),_(4),l(),S()}if(t&2){let e=s().$implicit,i=s();a(),m("ngIf",!i.currentDateIsAfterExamStart),a(),m("ngIf",i.isBeforeExamStart(i.summaryData.fromDate)),a(),m("disabled",i.isInProgress)("permissionRequired",i.printCertificatePermission)("postfixIcon",$(6,pa)),a(),y(e("exams.printCertificate"))}}function Om(t,r){if(t&1){let e=j();p(0,"button",18),A("click",function(){C(e);let n=s(3);return v(n.signUpForExam())}),_(1),l()}if(t&2){let e=s(2).$implicit,i=s();m("permissionRequired",i.signupPermission)("isLoadingButton",i.isInProgress),a(),O(" ",e("button.registerExam")," ")}}function Mm(t,r){if(t&1){let e=j();p(0,"button",20),A("click",function(){C(e);let n=s(4);return v(n.signUpForExam())}),_(1),l()}if(t&2){let e=s(3).$implicit,i=s();m("isLoadingButton",i.isInProgress)("permissionRequired",i.signupPermission),a(),O(" ",e("button.registerWaitingListExam")," ")}}function Lm(t,r){if(t&1&&u(0,Mm,2,3,"button",19),t&2){let e=s(3);m("ngIf",e.summaryData.waitingStrength<e.summaryData.maxWaitingStrength&&e.summaryData.maxWaitingStrength)}}function jm(t,r){if(t&1&&(p(0,"div",16),u(1,Om,2,3,"button",17)(2,Lm,1,1,"ng-template",null,1,ae),l()),t&2){let e=Y(3),i=s(2);a(),m("ngIf",!i.summaryData.maxStrength||i.summaryData.strength<i.summaryData.maxStrength)("ngIfElse",e)}}function km(t,r){if(t&1){let e=j();p(0,"button",21),A("click",function(){C(e);let n=s(2);return v(n.fillRequestForm(n.summaryData))}),_(1),l()}if(t&2){let e=s().$implicit,i=s();m("disabled",i.isInProgress)("permissionRequired",i.fillRequestFormPermission)("postfixIcon",$(4,pa)),a(),O("",e("requestForm.fillForm")," ")}}function Nm(t,r){if(t&1){let e=j();p(0,"button",22),c(1,"async"),A("click",function(){C(e);let n=s(2);return v(n.getSzevExamResult(n.summaryData.examSignInId))}),_(2),l()}if(t&2){let e=s().$implicit,i=s();m("disabled",i.isInProgress)("postfixIcon",$(7,pa))("permissionRequired",i.getSzevResultPermission)("loading",d(1,5,i.isFileDownloading$)===!0),a(2),O("",e("exams.downloadSzevResults")," ")}}function $m(t,r){if(t&1){let e=j();p(0,"button",23),c(1,"async"),A("click",function(){C(e);let n=s(2);return v(n.createImposition(n.summaryData.termId,n.summaryData.subjectId,n.summaryData.examId,n.summaryData.courseId,n.impositionFromType))}),_(2),l()}if(t&2){let e=s().$implicit,i=s();m("disabled",i.isInProgress)("loading",d(1,5,i.isCreateImpositionLoading$)===!0)("permissionRequired",i.createImpositionPermission)("postfixIcon",$(7,pa)),a(2),y(e("finances.prizeAnnouncement"))}}function Bm(t,r){if(t&1&&(E(0),p(1,"neptun-icon-detail-box",3),g(2,"neptun-icon-detail-item",4),c(3,"momentSinceDate"),c(4,"translocoDate"),c(5,"translocoDate"),g(6,"neptun-icon-detail-item",4),c(7,"hyphen"),c(8,"hyphen"),c(9,"intervalDateTimePipe"),c(10,"hyphen"),g(11,"neptun-icon-detail-item",4)(12,"neptun-icon-detail-item",4),c(13,"availabilityText"),E(14,5),u(15,Am,5,7,"ng-container",6)(16,jm,4,2,"ng-template",null,0,ae),p(18,"div",7),u(19,km,2,5,"button",8)(20,Nm,3,8,"button",9)(21,$m,3,8,"button",10),l(),S(),l(),S()),t&2){let e=r.$implicit,i=Y(17),n=s();a(2),m("icon",n.calendarIcon)("text",_e(3,17,n.summaryData.fromDate,n.summaryData.systemDate))("label",_e(4,20,n.summaryData.fromDate,$(39,Fm))+" "+_e(5,23,n.summaryData.fromDate,$(40,Rm))),a(4),m("icon",n.timeIcon)("text",n.examInterval+" "+e("exams.minute"))("label",d(10,35,Vo(9,30,d(7,26,n.summaryData.fromDate),d(8,28,n.summaryData.toDate),$(41,Dm),!1))),a(5),m("icon",n.pencilEditIcon)("text",n.summaryData.examType)("label",e("exams.type")),a(),m("icon",n.groupIcon)("text",d(13,37,n.summaryData))("label",(n.summaryData.minStrength>n.summaryData.strength?"<b>"+e("exams.minHeadcountNotMet")+"</b><br/>":"")+n.summaryData.strength+" "+e("exams.capita")+(n.summaryData.maxStrength?" / "+e("exams.maxStrength",be(42,Br,n.summaryData.maxStrength)):"")+"<br/>"+(n.summaryData.maxWaitingStrength?e("exams.waitingStrength",be(44,Br,n.summaryData.waitingStrength)):"")),a(3),m("ngIf",n.summaryData.examSignInId)("ngIfElse",i),a(4),m("ngIf",n.summaryData.requestFormInfo.hasRequestForm),a(),m("ngIf",n.summaryData.isSzevResultVisible),a(),m("ngIf",!n.summaryData.examSignInId)}}var _n=class t{constructor(r,e){this.activatedRoute=r,this.examDetailSummaryStore=e,this.signupPermission={controllerName:"ExamRegistration",actionName:"SignUpForExam"},this.changePermission={actionName:"",controllerName:"",permissionGuid:Pe.FrontEndOnly_ExamRegistration_ChangeExam},this.createImpositionPermission={controllerName:"",actionName:"",permissionGuid:Pe.ExamRegisteredInsertImposition_GetReExaminationFeeFromExam},this.printCertificatePermission={controllerName:"PrintableTemplates",actionName:"PrintBlankExamFormPerStudent"},this.dropExamPermission={controllerName:"ExamRegistration",actionName:"UnSubscribe"}
1,this.getSzevResultPermission={controllerName:"ExamRegisteredExams",actionName:"GetSzevExamDetailsPdf"},this.isCreateImpositionLoading$=this.examDetailSummaryStore.createImpositionState$.pipe(T(i=>Ae(i))),this.isFileDownloading$=this.examDetailSummaryStore.isFileDownloading$,this.isInProgress=!1,this.signUpForExamEmit=new He,this.getChangeExamsListEmit=new He,this.dropExamEmit=new He,this.examInterval="",this.calendarIcon=ee.Calendar,this.timeIcon=ee.Time,this.pencilEditIcon=ee.PencilEdit,this.groupIcon=ee.Group,this.currentDateIsAfterExamStart=!1,this.impositionFromType=null}ngOnInit(){this.examInterval=lo.default.duration((0,lo.default)(this.summaryData.toDate).diff(this.summaryData.fromDate)).asMinutes().toFixed(0),this.currentDateIsAfterExamStart=new Date(this.summaryData.fromDate).getTime()<new Date().getTime(),this.impositionFromType=this.activatedRoute.snapshot.queryParams.impositionFromType}signUpForExam(){this.signUpForExamEmit.emit()}switchExam(){this.getChangeExamsListEmit.emit()}dropExam(){this.dropExamEmit.emit()}openPrintCertificateDialog(){this.examDetailSummaryStore.openPrintCertificateDialog({examId:this.summaryData.examId})}get fillRequestFormPermission(){if(this.summaryData.requestFormInfo.hasRequestForm)return this.summaryData.requestFormInfo.onlyOneRequestFormTemplateID?this.summaryData.requestFormInfo.startedRequestFormId?{actionName:"GetStartedRequestFormTemplateDetails",controllerName:"ExamRegistration"}:{actionName:"GetAvailableRequestFormTemplateDetails",controllerName:"ExamRegistration"}:this.summaryData.examSignInId?{actionName:"GetRequestFormTemplateListForSignedExams",controllerName:"Exam"}:{actionName:"GetRequestFormTemplateListBySubjects",controllerName:"Exam"}}fillRequestForm(r){r.requestFormInfo.onlyOneRequestFormTemplateID?this.examDetailSummaryStore.openRequestFormTemplate({templateList:[],exam:r}):this.examDetailSummaryStore.getRequestFormTemplateList({exam:r})}createImposition(r,e,i,n,o){this.examDetailSummaryStore.createImposition({termId:r,subjectId:e,examId:i,courseId:n,impositionType:o})}getSzevExamResult(r){this.examDetailSummaryStore.getSzevExamResult(r)}isBeforeExamStart(r){return new Date<new Date(r)}static{this.\u0275fac=function(e){return new(e||t)(f(ie),f(ca))}}static{this.\u0275cmp=N({type:t,selectors:[["neptun-exam-detail-summary"]],inputs:{summaryData:"summaryData",isInProgress:"isInProgress"},outputs:{signUpForExamEmit:"signUpForExamEmit",getChangeExamsListEmit:"getChangeExamsListEmit",dropExamEmit:"dropExamEmit"},features:[oe([ca,ft,Ce])],decls:1,vars:0,consts:[["notSignedIn",""],["registerWaitingListExamButton",""],[4,"transloco"],[1,"icon-detail-box"],[3,"icon","text","label"],["buttons",""],[4,"ngIf","ngIfElse"],[1,"exam-actions"],["neptun-button","","class","exam-actions-fill-form","accent","link","color","primary","id","exam-detail-summary-fill-request-form-btn","test-id","fill-request-form-btn",3,"disabled","permissionRequired","postfixIcon","click",4,"ngIf"],["neptun-button","","class","exam-actions-fill-szev-results","accent","link","color","primary","id","exam-detail-summary-szev-results-btn","test-id","szev-results-btn",3,"disabled","postfixIcon","permissionRequired","loading","click",4,"ngIf"],["neptun-button","","accent","link","color","primary","id","exam-detail-summary-prize-announcement-btn","test-id","prize-announcement-btn",3,"disabled","loading","permissionRequired","postfixIcon","click",4,"ngIf"],["neptun-button","","accent","flat","color","primary","id","exam-detail-summary-switch-exam-btn","test-id","switch-exam-btn",3,"disabled","permissionRequired","click",4,"ngIf"],["neptun-button","","accent","flat","color","error","id","exam-detail-summary-drop-exam-btn","test-id","drop-exam-btn",3,"disabled","permissionRequired","click",4,"ngIf"],["neptun-button","","accent","link","color","primary","id","exam-detail-summary-print-certificate-btn","test-id","print-certificate-btn",1,"exam-action-print-certificate",3,"click","disabled","permissionRequired","postfixIcon"],["neptun-button","","accent","flat","color","primary","id","exam-detail-summary-switch-exam-btn","test-id","switch-exam-btn",3,"click","disabled","permissionRequired"],["neptun-button","","accent","flat","color","error","id","exam-detail-summary-drop-exam-btn","test-id","drop-exam-btn",3,"click","disabled","permissionRequired"],["test-id","exam-action-buttons",1,"exam-action-buttons"],["neptun-button","","accent","flat","color","primary","id","exam-detail-summary-sign-up-btn","test-id","sign-up-btn",3,"permissionRequired","isLoadingButton","click",4,"ngIf","ngIfElse"],["neptun-button","","accent","flat","color","primary","id","exam-detail-summary-sign-up-btn","test-id","sign-up-btn",3,"click","permissionRequired","isLoadingButton"],["neptun-button","","accent","flat","color","primary","id","exam-detail-summary-wait-list-btn","test-id","wait-list-btn",3,"isLoadingButton","permissionRequired","click",4,"ngIf"],["neptun-button","","accent","flat","color","primary","id","exam-detail-summary-wait-list-btn","test-id","wait-list-btn",3,"click","isLoadingButton","permissionRequired"],["neptun-button","","accent","link","color","primary","id","exam-detail-summary-fill-request-form-btn","test-id","fill-request-form-btn",1,"exam-actions-fill-form",3,"click","disabled","permissionRequired","postfixIcon"],["neptun-button","","accent","link","color","primary","id","exam-detail-summary-szev-results-btn","test-id","szev-results-btn",1,"exam-actions-fill-szev-results",3,"click","disabled","postfixIcon","permissionRequired","loading"],["neptun-button","","accent","link","color","primary","id","exam-detail-summary-prize-announcement-btn","test-id","prize-announcement-btn",3,"click","disabled","loading","permissionRequired","postfixIcon"]],template:function(e,i){e&1&&u(0,Bm,22,46,"ng-container",2)},dependencies:[z,oa,Ii,Q,we,Ne,$n,H,Ge,Dt,Re,jr,kr],styles:[".exam-actions[_ngcontent-%COMP%]{display:flex;justify-content:center;flex-direction:row;align-items:center}.icon-detail-box[_ngcontent-%COMP%]   .link[_ngcontent-%COMP%]:first-child{padding-left:0}@media only screen and (min-width:768px){.icon-detail-box[_ngcontent-%COMP%]   .link[_ngcontent-%COMP%]:first-child{margin-left:0}}@media only screen and (max-width:767px){.exam-action-buttons[_ngcontent-%COMP%]{flex-direction:column;width:100%}.exam-action-buttons[_ngcontent-%COMP%]   button[_ngcontent-%COMP%]{max-width:none!important}.exam-action-buttons[_ngcontent-%COMP%]   a[_ngcontent-%COMP%]{justify-content:center}.exam-actions[_ngcontent-%COMP%]{flex-direction:column;flex-grow:1;gap:16px;width:100%}.exam-actions[_ngcontent-%COMP%]   a[_ngcontent-%COMP%]{margin:0;width:100%;justify-content:center}.exam-actions-fill-form[_ngcontent-%COMP%], .exam-action-print-certificate[_ngcontent-%COMP%]{margin:auto}}"],changeDetection:0})}};K([Jn(),P("design:type",Function),P("design:paramtypes",[String]),P("design:returntype",Boolean)],_n.prototype,"isBeforeExamStart",null);var xn=(function(t){return t[t.Nincs_elkezdve=4102001]="Nincs_elkezdve",t[t.Elkezdve_de_nincs_befejezve=4102002]="Elkezdve_de_nincs_befejezve",t[t.Kitoltott=4102003]="Kitoltott",t[t.Elutasitott=4102004]="Elutasitott",t})(xn||{});var da=(()=>{class t{constructor(e){this.http=e}unipollExamUriStudent(e,i){return this.http.post(`${J.settings.apiServer.url}Exam/GetUnipollExamUriStudent`,{examId:e,unipollSurveyId:i}
1).pipe(T(n=>n.data))}static{this.\u0275fac=function(i){return new(i||t)(k(de))}}static{this.\u0275prov=M({token:t,factory:t.\u0275fac})}}return t})();var ua=(()=>{class t{constructor(e){this.http=e}changeExam(e,i,n,o,x){return this.http.post(`${J.settings.apiServer.url}Exam/ChangeExam`,{newExamId:e,oldExamSignInId:i,newCourseId:n,courseExamId:o,isSzevExam:x})}static{this.\u0275fac=function(i){return new(i||t)(k(de))}}static{this.\u0275prov=M({token:t,factory:t.\u0275fac})}}return t})();var qr="[ExamRegistration]",Vr={SetExamRegistrationState:`${qr} Set submitted request state`,ResetExamRegistrationState:`${qr} Reset to be completed request state`},ht;(function(t){class r{static{this.type=Vr.SetExamRegistrationState}constructor(n){this.examRegistration=n}}t.SetExamRegistration=r;class e{static{this.type=Vr.ResetExamRegistrationState}}t.ResetExamRegistrationState=e})(ht||(ht={}));var _a=(()=>{class t extends ut{get dropExamConfirmDialogData(){return{title:this.transloco.translate("exams.cancelExamConfirm"),actions:[new $i({text:this.transloco.translate("button.cancel")}),new Ni({color:"error",text:this.transloco.translate("button.withdrawal"),returnValue:!0,webRequestCallback:()=>this.exam$.pipe(W(1),U(e=>(ne(e)&&this.unsubscribe({examId:e.data.examId,courseExamId:e.data.courseExamId,examSignInId:e.data.examSignInId}),this.unsubscribeData$)))})]}}constructor(e,i,n,o,x,h,D,B,te){super({exam:R,otherInformations:R,unipollSurveyListForExam:R,unipollSurveyListForExamPractice:R,unipollExamUriStudent:R,signUpForExam:R,changeExamsList:R,changeExam:R,unsubscribe:R}),this.store=e,this.dataFetcherService=i,this.dialogService=n,this.globalErrorHandler=o,this.examUnipollService=x,this.examChangeService=h,this.examRegistrationService=D,this.transloco=B,this.dateLocalizationService=te,this.unipollExamViewingSystemParameter=Dr,this.exam$=this.select(w=>w.exam),this.otherInformations$=this.select(w=>w.otherInformations),this.unipollSurveyListForExam$=this.select(w=>w.unipollSurveyListForExam),this.unipollSurveyListForExamPractice$=this.select(w=>w.unipollSurveyListForExamPractice),this.unipollExamUriStudent$=this.select(w=>w.unipollExamUriStudent),this.signUpForExamData$=this.select(w=>w.signUpForExam),this.changeExamsListData$=this.select(w=>w.changeExamsList),this.changeExamData$=this.select(w=>w.changeExam),this.unsubscribeData$=this.select(w=>w.unsubscribe),this.addExam=this.updater((w,q)=>I(b({},w),{exam:q})),this.addOtherInformations=this.updater((w,q)=>I(b({},w),{otherInformations:q})),this.addUnipollSurveyListForExam=this.updater((w,q)=>I(b({},w),{unipollSurveyListForExam:q})),this.addUnipollSurveyListForExamPractice=this.updater((w,q)=>I(b({},w),{unipollSurveyListForExamPractice:q})),this.addUnipollExamUriStudent=this.updater((w,q)=>I(b({},w),{unipollExamUriStudent:q})),this.addSignUpForExam=this.updater((w,q)=>I(b({},w),{signUpForExam:q})),this.addChangeExamsList=this.updater((w,q)=>I(b({},w),{changeExamsList:q})),this.addChangeExam=this.updater((w,q)=>I(b({},w),{changeExam:q})),this.addUnsubscribe=this.updater((w,q)=>I(b({},w),{unsubscribe:q})),this.getExam=this.effect(w=>w.pipe(F(()=>{this.addExam(Le)}),U(q=>this.dataFetcherService.fetchItemFromServer("ExamRegistration/GetExamRegistrationDetail",q).pipe(F(V=>this.addExam({data:V})),pe(()=>(this.addExam(ge),Me)))))),this.getOtherInformations=this.effect(w=>w.pipe(F(()=>{this.addOtherInformations(Le)}),U(q=>this.dataFetcherService.fetchItemFromServer("Exam/GetExamDetailOtherInformations",q).pipe(F(V=>this.addOtherInformations({data:V})),pe(()=>(this.addOtherInformations(ge),Me)))))),this.getUnipollSurveyListForExam=this.effect(w=>w.pipe(F(()=>{this.addUnipollSurveyListForExam(Le)}),U(q=>this.dataFetcherService.fetchItemFromServer("Exam/GetUnipollSurveyListForExam",q).pipe(F(V=>{this.addUnipollSurveyListForExam({data:V})}),U(V=>this.dialogService.openDialog(bi,{dataSource:V.gridData.map(ce=>this.convertUnipollData(ce,V.additionalData.unipollExamViewing)),required:!0,currentValue:{value:"",primary:"",secondary:[]},title:this.transloco.translate("global.exam")}).afterClosed().pipe(le(ce=>ce?.value),T(ce=>V.gridData.find(he=>
1he.unipollSurveyId===ce.value)))),F(V=>{this.getUnipollExamUriStudent({examId:q.courseExamId,unipollSurveyId:V?.unipollSurveyId||""})}),pe(()=>(this.addUnipollSurveyListForExam(ge),Me)))))),this.getUnipollSurveyListForExamPractice=this.effect(w=>w.pipe(F(()=>{this.addUnipollSurveyListForExamPractice(Le)}),U(q=>this.dataFetcherService.fetchItemFromServer("Exam/GetUnipollSurveyListForExamPractice",q).pipe(F(V=>this.addUnipollSurveyListForExamPractice({data:V})),U(V=>this.dialogService.openDialog(bi,{dataSource:V.gridData.map(ce=>this.convertUnipollData(ce,V.additionalData.unipollExamViewing)),required:!0,currentValue:{value:"",primary:"",secondary:[]},title:this.transloco.translate("exams.unipollPractices")}).afterClosed().pipe(le(ce=>ce&&ce?.value),T(ce=>V.gridData.find(he=>he.unipollSurveyId===ce.value)))),F(V=>{this.getUnipollExamUriStudent({examId:q.courseExamId,unipollSurveyId:V?.unipollSurveyId||""})}),pe(()=>(this.addUnipollSurveyListForExamPractice(ge),Me)))))),this.getUnipollExamUriStudent=this.effect(w=>w.pipe(F(()=>{this.addUnipollExamUriStudent(Le)}),U(q=>this.examUnipollService.unipollExamUriStudent(q.examId,q.unipollSurveyId).pipe(F(V=>{this.addUnipollExamUriStudent({data:V}),this.openConfirmDialog("exams.openUnipollDescription"),window.open(V,"blank")}),pe(()=>(this.addUnipollExamUriStudent(ge),Me)))))),this.signUpForExam=this.effect(w=>w.pipe(F(()=>{this.addSignUpForExam(Le)}),U(q=>this.examRegistrationService.signUpForExam(q.examId,q.courseId).pipe(F(V=>{this.addSignUpForExam({data:V}),this.store.dispatch(new Fe.AddSuccessPushNotification({title:"exams.signInSuccessful"})),this.requestDetails(q.examId,q.courseExamId),this.store.dispatch(new ht.ResetExamRegistrationState)}),pe(V=>(this.addSignUpForExam(ge),this.globalErrorHandler.handleError(V),Me)))))),this.getChangeExamsList=this.effect(w=>w.pipe(F(()=>{this.addChangeExamsList(Le)}),U(q=>this.dataFetcherService.fetchItemFromServer("Exam/GetChangeExamsList",q).pipe(U(V=>{this.addChangeExamsList({data:V});let ce=this.getExamChangeListDialogData(V);return this.dialogService.openDialog(bi,this.getExamChangeDialogData(ce,q.subjectName)).afterClosed().pipe(le(he=>he),U(he=>(this.getChangeExam({newExamId:he.value.examId,oldExamSignInId:q.examSignInId,newCourseId:q.courseId,courseExamId:q.courseExamId,isSzevExam:q.isSzevExam}),this.changeExamData$)))}),pe(V=>(this.addChangeExamsList(ge),this.globalErrorHandler.handleError(V),Me)))))),this.getChangeExam=this.effect(w=>w.pipe(F(()=>{this.addChangeExam(Le)}),U(q=>this.examChangeService.changeExam(q.newExamId,q.oldExamSignInId,q.newCourseId,q.courseExamId,q.isSzevExam).pipe(F(V=>{this.addChangeExam({data:V}),V.notification.length===0&&this.store.dispatch(new Fe.AddSuccessPushNotification({title:"exams.switchSuccessful"})),this.requestDetails(q.newExamId,q.courseExamId),this.store.dispatch(new ht.ResetExamRegistrationState)}),pe(V=>(this.addChangeExam(ge),this.globalErrorHandler.handleError(V),Me)))))),this.unsubscribe=this.effect(w=>w.pipe(F(()=>{this.addUnsubscribe(Le)}),U(q=>this.examRegistrationService.unSubscribe(q.examId,q.examSignInId).pipe(F(V=>{if(!V.success){this.addUnsubscribe(ge);return}this.addUnsubscribe({data:V}),this.store.dispatch(new Fe.AddSuccessPushNotification({title:"exams.unSubscribeSuccessful"})),this.requestDetails(q.examId,q.courseExamId),this.store.dispatch(new ht.ResetExamRegistrationState)}),pe(V=>(this.addUnsubscribe(ge),this.globalErrorHandler.handleError(V),Me))))))}requestDetails(e,i){this.getExam({courseExamId:i}),this.getOtherInformations({examId:e})}getExamChangeDialogData(e,i){return{customBtnText:this.transloco.translate("exams.changeExam"),dataSource:e,required:!0,currentValue:{value:"",primary:"",secondary:[]},permission:{actionName:"",controllerName:"",permissionGuid:Pe.FrontEndOnly_ExamRegistration_ChangeExamModal},title:this.transloco.translate("exams.changeExam"),subTitle:i}}dropExam(){this.dialogService.openConfirmActionDialog(this.dropExamConfirmDialogData).afterClosed().subscribe()}getExamChangeListDialogData(e){return e.map(i=>({primary:`${this.dateLocalizationService.localizeDate(i.fromDate,void 0,{dateStyle:"long",timeStyle:"short"})} - ${this.dateLocalizationService.localizeDate(i.toDate,void 0,{dateStyle:"long",timeStyle:"short"})}`,secondary:[i.examTutors,i.bookedObjectCode],tertiary:[i.examType,`${i.strength||"-"} / ${i.maxStrength||"-"} / ${i.waitingStrength||"-"}`],value:{examId:i.examId}}))}convertUnipollData(e,i){return{isDisabled:i===this.unipollExamViewingSystemParameter.ExamVisibleAfterFillOutNotChangeable&&e.filloutStateId===xn.Kitoltott,primary:e.title,secondary:[`${this.dateLocalizationService.localizeDate(e.examFromDate,void 0,{dateStyle:"long",timeStyle:"short"})} - ${this.dateLocalizationService.localizeDate(e.examToDate,void 0,{dateStyle:"long",timeStyle:"short"})}
1`],tertiary:[e.filloutState],value:e.unipollSurveyId}}openConfirmDialog(e){let i={title:this.transloco.translate("questionnaire.viewOpened"),body:[this.transloco.translate(e)],actions:[{type:"stroked",color:G.Primary,text:this.transloco.translate("button.ok"),returnValue:!0}]};this.dialogService.openConfirmActionDialog(i)}static{this.\u0275fac=function(i){return new(i||t)(k(X),k(xi),k(Ve),k(Ce),k(da),k(ua),k(ft),k(Z),k(fe))}}static{this.\u0275prov=M({token:t,factory:t.\u0275fac})}}return t})();var Ur=()=>({dateStyle:"long",timeStyle:"short"}),Hm=()=>[];function Gm(t,r){t&1&&(E(0),p(1,"div",4),g(2,"neptun-request-error-indicator",5),l(),S())}function zm(t,r){t&1&&(E(0),p(1,"div",4),g(2,"neptun-details-loading-placeholder",6),l(),S())}function Wm(t,r){if(t&1){let e=j();p(0,"neptun-online-exam-banner",17),A("buttonClicked",function(){C(e);let n=s(2).ngIf,o=s(2);return v(o.webex.action(n.data.onlineMeetingLink))}),l()}if(t&2){let e=s(4);m("title",e.webex.title)("text",e.webex.text)("buttonTitle",e.webex.buttonTitle)("icon",e.webex.icon)("permission",e.webex.permission)}}function Qm(t,r){if(t&1){let e=j();p(0,"neptun-online-exam-banner",18),A("buttonClicked",function(){C(e);let n=s(2).ngIf,o=s(2);return v(o.unipollSurveyForPractice.action(n.data.courseExamId))}),l()}if(t&2){let e=s(4);m("title",e.unipollSurveyForPractice.title)("text",e.unipollSurveyForPractice.text)("buttonTitle",e.unipollSurveyForPractice.buttonTitle)("icon",e.unipollSurveyForPractice.icon)("permission",e.unipollSurveyForPractice.permission)}}function Km(t,r){if(t&1){let e=j();p(0,"neptun-online-exam-banner",19),A("buttonClicked",function(){C(e);let n=s(2).ngIf,o=s(2);return v(o.unipollSurveyForExam.action(n.data.courseExamId))}),l()}if(t&2){let e=s(4);m("title",e.unipollSurveyForExam.title)("text",e.unipollSurveyForExam.text)("buttonTitle",e.unipollSurveyForExam.buttonTitle)("icon",e.unipollSurveyForExam.icon)("permission",e.unipollSurveyForExam.permission)}}function Xm(t,r){if(t&1&&(p(0,"neptun-callout-box",20),_(1),l()),t&2){let e=s(3).$implicit,i=s();m("id","unipoll-exam-uri-notification")("icon",i.pageNotification.icon)("bgColor",i.calloutBoxColor),a(),O("",e("exams.isUnipollExamUriExists")," ")}}function Ym(t,r){if(t&1&&(p(0,"neptun-callout-box",21),_(1),l()),t&2){let e=s(3).$implicit,i=s();m("id","exam-date-and-room-usage-different-notification")("icon",i.pageNotification.icon)("bgColor","background-elements"),a(),O("",e("exams.examDateAndRoomUsageDateAreDifferent")," ")}}function Zm(t,r){if(t&1&&(E(0),g(1,"neptun-rating-card",26),S()),t&2){let e=r.ngIf,i=s(4).ngIf;a(),m("sign",i.data.resultValue)("text",i.data.resultName)("secondaryText",i.data.resultType)("color",e)}}function Jm(t,r){if(t&1&&(p(0,"div",25),u(1,Zm,2,4,"ng-container",3),c(2,"async"),l()),t&2){let e=s(5);a(),m("ngIf",d(2,1,e.ratingCardColor$))}}function el(t,r){if(t&1&&g(0,"neptun-navigation-button",27),t&2){let e=r.$implicit;m("link",e)}}function tl(t,r){if(t&1&&(u(0,Jm,3,3,"div",22),p(1,"div",23),u(2,el,1,1,"neptun-navigation-button",24),l()),t&2){let e=s(2).ngIf,i=s(2);m("ngIf",e.data.examResult),a(2),m("ngForOf",i.links)}}function il(t,r){if(t&1&&(p(0,"div",29)(1,"dt"),_(2),l(),p(3,"dd"),_(4),l()()),t&2){let e=s(4).$implicit;a(2),y(e("exams.szevExam")),a(2),O(" ",e("admin.true")," ")}}function nl(t,r){t&1&&(E(0),p(1,"div",4),g(2,"neptun-request-error-indicator",33),l(),S())}function al(t,r){t&1&&(E(0),p(1,"div",4),g(2,"neptun-details-loading-placeholder",34),l(),S())}function ol(t,r){if(t&1&&(p(0,"div",29)(1,"dt"),_(2),c(3,"hyphen"),l(),p(4,"dd"),_(5),l()()),t&2){let e=r.$implicit;a(2),y(d(3,2,e.translation)),a(3),y(e.value&&e.value.value?e.value.value:e.value)}}function rl(t,r){if(t&1&&(E(0),p(1,"neptun-data-view-gradient-mask",35),E(2),p(3,"dl")(4,"div",29)(5,"dt"),_(6),l(),p(7,"dd"),_(8),c(9,"hyphen"),l()(),p(10,"div",29)(11,"dt"),_(12),l(),p(13,"dd"),_(14),c(15,"hyphen"),l()(),p(16,"div",29)(17,"dt"),_(18),l(),p(19,"dd"),_(20),c(21,"hyphen"),l()(),p(22,"div",29)(23,"dt"),_(24),l(),p(25,"dd"),_(26),c(27,"hyphen"),l()(),p(28,"div",29)(29,"dt"),_(30),l(),p(31,"dd"),_(32),c(33,"hyphen"),l()()(),S(),E(34,30),p(35,"dl"),u(36,ol,6,4,"div",36),l(),S(),l(),S()),t&2){let e=s().ngIf,i=s(4).$implicit;a(6),y(i("global.minimumHeadcount")),a(2),O(" ",d(9,11,e.data.minStrength)," "),a(4),y(i("exams.strength")),a(2),O(" ",d(15,13,e.data.strength)," "),a(4),y(i("exams.courseMaxLimit")),a(2),O(" ",d(21,15,e.data.maxStrength)," "),a(4),y(i("exams.maxWaitingStrength")),a(2),O(" ",d(27,17,e.data.maxWaitingStrength)," "),a(4),y(i("exams.waitingStrengthText")),a(2),O(" ",d(33,19,e.data.waitingStrength)," "),a(4),m("ngForOf",e.data.extraFieldItems)}}function sl(t,r){if(t&1&&(p(0,"neptun-data-view"),u(1,nl,3,0,"ng-container",3),c(2,"hasError"),u(3,al,3,0,"ng-container",3),c(4,"isLoadingRequest"),u(5,rl,37,21,"ng-container",3),c(6,"isResultRequest"),l()),t&2){let e=r.ngIf;a(),m("ngIf",d(2,3,e)),a(2),m("ngIf",d(4,5,e)),a(2),m("ngIf",d(6,7,e))}}function ml(t,r){if(t&1&&(p(0,"h3"),_(1),l(),p(2,"neptun-data-view")(3,"neptun-data-view-gradient-mask",28),E(4),p(5,"dl")(6,"div",29)(7,"dt"),_(8),l(),p(9,"dd"),_(10),c(11,"hyphen"),l()(),p(12,"div",29)(13,"dt"),_(14),l(),p(15,"dd"),_(16),c(17,"hyphen"),l()(),p(18,"div",29)(19,"dt"),_(20),l(),p(21,"dd"),_(22),c(23,"hyphen"),l()(),p(24,"div",29)(25,"dt"),_(26),l(),p(27,"dd"),_(28),c(29,"hyphen"),l()(),p(30,"div",29)(31,"dt"),_(32),l(),p(33,"dd"),_(34),c(35,"hyphen"),l()(),p(36,"div",29)(37,"dt"),_(38),l(),p(39,"dd"),_(40),c(41,"hyphen"),l()()(),S(),E(42,30),p(43,"dl")(44,"div",29)(45,"dt"),_(46),l(),p(47,"dd"),_(48),c(49,"hyphen"),c(50,"translocoDate"),c(51,"hyphen"),l()(),p(52,"div",29)(53,"dt"),_(54),l(),p(55,"dd"),_(56),c(57,"hyphen"),c(58,"translocoDate"),c(59,"hyphen"),l()(),p(60,"div",29)(61,"dt"),_(62),l(),p(63,"dd"),_(64),c(65,"hyphen"),l()(),p(66,"div",29)(67,"dt"),_(68),l(),p(69,"dd"),_(70),c(71,"hyphen"),l()(),u(72,il,5,2,"div",31),p(73,"div",29)(74,"dt"),_(75),l(),p(76,"dd"),_(77),c(78,"hyphen"),l()()(),S(),l()(),g(79,"div",32),p(80,"h3"),_(81),l(),u(82,sl,7,9,"neptun-data-view",3),c(83,"async")),t&2){let e=s(2).ngIf,i=s().$implicit,n=s();a(),y(i("publication.baseData")),a(7),y(i("questionnaire.courseCode")),a(2),O(" ",d(11,26,e.data.courseCode)," "),a(4),y(i("global.identifier")),a(2),O(" ",d(17,28,e.data.examIdentifier)," "),a(4),y(i("exams.rooms")),a(2),O(" ",d(23,30,e.data.examRooms)," "),a(4),y(i("subjects.credit")),a(2),O(" ",d(29,32,e.data.credit)," "),a(4),y(i("exams.organizationDescription")),a(2),O(" ",d(35,34,e.data.organizationDescription)," "),a(4),y(i("exams.organizationCode")),a(2),O(" ",d(41,36,e.data.organizationCode)," "),a(6),y(i("exams.sign
1InFromDate")),a(2),O(" ",d(51,43,_e(50,40,d(49,38,e.data.signInFromDate),$(60,Ur)))," "),a(6),y(i("exams.signInToDate")),a(2),O(" ",d(59,50,_e(58,47,d(57,45,e.data.signInToDate),$(61,Ur)))," "),a(6),y(i("exams.preliminaryRequirementText")),a(2),O(" ",d(65,52,e.data.preliminaryRequirementText)," "),a(4),y(i("exams.finalLiminaryRequirementText")),a(2),O(" ",d(71,54,e.data.finalLiminaryRequirementText)," "),a(2),m("ngIf",e.data.isSzevExam),a(3),y(i("global.description")),a(2),O(" ",d(78,56,e.data.description)," "),a(4),y(i("exams.headcountAndOtherData")),a(),m("ngIf",d(83,58,n.otherInformations$))}}function ll(t,r){if(t&1){let e=j();E(0),g(1,"neptun-primary-title",7),u(2,Wm,1,5,"neptun-online-exam-banner",8)(3,Qm,1,5,"neptun-online-exam-banner",9)(4,Km,1,5,"neptun-online-exam-banner",10),p(5,"div",11),u(6,Xm,2,4,"neptun-callout-box",12)(7,Ym,2,4,"neptun-callout-box",13),l(),p(8,"div",4)(9,"neptun-exam-detail-summary",14),c(10,"async"),A("signUpForExamEmit",function(){C(e);let n=s().ngIf,o=s(2);return v(o.signUpForExamEmit(n.data.courseId))})("getChangeExamsListEmit",function(){C(e);let n=s().ngIf,o=s(2);return v(o.getChangeExamsListEmit(n.data.subjectId,n.data.courseId,n.data.examTypeId,n.data.subjectName,n.data.examSignInId,n.data.isSzevExam))})("dropExamEmit",function(){C(e);let n=s(3);return v(n.dropExamEmit())}),l(),p(11,"neptun-basic-layout"),u(12,tl,3,2,"ng-template",15)(13,ml,84,62,"ng-template",16),l()(),S()}if(t&2){let e=s().ngIf,i=s(2);a(),m("title",e.data.subjectName)("description",e.data.subjectCode),a(),m("ngIf",e.data.onlineMeetingLink),a(),m("ngIf",e.data.hasUnipollSurveyForExamPractice),a(),m("ngIf",e.data.hasUnipollSurveyForExam),a(2),m("ngIf",e.data.isElectronicExam&&(e.data.hasUnipollSurveyForExam||e.data.hasUnipollSurveyForExamPractice)&&!e.data.isUnipollExamUriExists),a(),m("ngIf",e.data.examDateAndRoomUsageDateAreDifferent),a(2),m("summaryData",e.data)("isInProgress",d(10,9,i.isInProgress$)===!0)}}function cl(t,r){if(t&1&&(E(0),u(1,Gm,3,0,"ng-container",3),c(2,"hasError"),u(3,zm,3,0,"ng-container",3),c(4,"isLoadingRequest"),u(5,ll,14,11,"ng-container",3),c(6,"isResultRequest"),S()),t&2){let e=r.ngIf;a(),m("ngIf",d(2,3,e)),a(2),m("ngIf",d(4,5,e)),a(2),m("ngIf",d(6,7,e))}}function pl(t,r){t&1&&g(0,"neptun-icon-detail-item",41),t&2&&m("loadingPlaceholder",!0)}function dl(t,r){t&1&&(p(0,"div",4)(1,"div",37),g(2,"neptun-rectangle-placeholder",38)(3,"neptun-rectangle-placeholder",39),l(),p(4,"neptun-icon-detail-box"),u(5,pl,1,1,"neptun-icon-detail-item",40),l()(),g(6,"neptun-details-with-cards-left-placeholder")),t&2&&(a(5),m("ngForOf",$(1,Hm).constructor(4)))}function ul(t,r){if(t&1&&(E(0),u(1,cl,7,9,"ng-container",2),c(2,"async"),u(3,dl,7,2,"ng-template",null,0,ae),S()),t&2){let e=Y(4),i=s();a(),m("ngIf",d(2,2,i.exam$))("ngIfElse",e)}}var Gr=(()=>{class t{constructor(e,i,n,o){this.router=e,this.route=i,this.transloco=n,this.examDetailStore=o,this.exam$=this.examDetailStore.exam$.pipe(F(x=>{ne(x)&&(x.data.systemDate=Hr.default.parseZone(x.data.systemDate).format("YYYY-MM-DDTHH:mm:ss"),this.addNavigationLinks(x.data),this.addOnlineMeetingLink(x.data))})),this.ratingCardColor$=this.examDetailStore.exam$.pipe(T(x=>ne(x)?x.data.resultValue===1?"warning":"secondary":null)),this.otherInformations$=this.examDetailStore.otherInformations$,this.unipollFilloutStates=xn,this.webex={title:this.transloco.translate("onlineOccasions.available"),text:this.transloco.translate("onlineOccasions.clickForWebexMeeting",{buttonText:this.transloco.translate("button.join")}),buttonTitle:this.transloco.translate("button.join"),buttonType:"flat",icon:ee.Phone,permission:{actionName:"",controllerName:"",permissionGuid:Pe.FrontEndOnly_ExamRegistration_OpenWebex},action:x=>{this.examDetailStore.openConfirmDialog("exams.newWebexTab"),window.open(x,"blank")}},this.unipollSurveyForExam={title:this.transloco.translate("tasks.electronicExamAvailable"),text:this.transloco.translate("exams.startOnlineExamDescription"),buttonTitle:this.transloco.translate("button.startExam"),buttonType:"flat",icon:ee.PencilCreate,permission:{actionName:"",controllerName:"",permissionGuid:Pe.Exam_GetUnipollSurveyListForExam},action:x=>{this.examDetailStore.getUnipollSurveyListForExam({examId:this.examId,courseExamId:x})}},this.unipollSurveyForPractice={title:this.transloco.translate("tasks.practiceAvailable"),text:this.transloco.translate("exams.practiceAvailable2"),buttonTitle:this.transloco.translate("exams.unipollPractices"),buttonType:"stroked",icon:ee.RefreshCw,iconColor:G.Secondary,permission:{actionName:"",controllerName:"",permissionGuid:Pe.Exam_GetUnipollSurveyListForExamPractice},action:x=>{this.examDetailStore.getUnipollSurveyListForExamPractice({examId:this.examId,courseExamId:x})}},this.pageNotification={icon:ee.AlertTriangle,iconColor:G.Error},this.calloutBoxColor="warning-light",this.links=[],this.filledFormLink={text:this.transloco.translate("exams.submittedRequests"),subTitle:this.transloco.translate("exams.requestFormCaption"),icon:ee.PaperClip},this.isInProgress$=ye([this.examDetailStore.signUpForExamData$,this.examDetailStore.changeExamsListData$,this.examDetailStore.changeExamData$,this.examDetailStore.unsubscribeData$]).pipe(T(([x,h,D,B])=>
1Ae(x)||Ae(h)||Ae(D)||Ae(B)))}ngOnInit(){this.examId=this.route.snapshot.params.examId,this.courseExamId=this.route.snapshot.queryParams.courseExamId,this.examSignInId=this.route.snapshot.queryParams.examSignInId,this.requestDetails()}requestDetails(){this.examDetailStore.requestDetails(this.examId,this.courseExamId)}signUpForExamEmit(e){this.examDetailStore.signUpForExam({examId:this.examId,courseId:e,courseExamId:this.courseExamId})}getChangeExamsListEmit(e,i,n,o,x,h){this.examDetailStore.getChangeExamsList({subjectId:e,courseId:i,examTypeId:n,examSignInId:x,courseExamId:this.courseExamId,subjectName:o,isSzevExam:h})}dropExamEmit(){this.examDetailStore.dropExam()}addNavigationLinks(e){let i=this.getTutorsLinks(e),n=this.getStudentsLinks(e),o=this.getRequestFormLinks(e),x=this.getRoomsLinks(e),h=this.getHistoryLinks(e);e.tutorVisibility?this.links=[n,i,x,h]:this.links=[n,x,h],this.links=[...this.links,o]}getHistoryLinks(e){return{text:this.transloco.translate("exams.history"),icon:ee.TimeHistory,permission:{actionName:"GetExamPreviousHistoryList",controllerName:"Exam"},callback:()=>this.router.navigate(["history"],{queryParams:{subjectCode:e.subjectCode,examSignInId:this.examSignInId?this.route.snapshot.params.examSignInId:this.examSignInId},queryParamsHandling:"merge",relativeTo:this.route})}}getRoomsLinks(e){return{text:this.transloco.translate("exams.rooms"),icon:ee.CalendarDelete,badgeData:e.examRoomCount,permission:{actionName:"GetExamRoomsList",controllerName:"Exam"},callback:()=>this.router.navigate(["rooms"],{queryParamsHandling:"merge",queryParams:{examSignInId:this.examSignInId?this.route.snapshot.params.examSignInId:this.examSignInId},relativeTo:this.route})}}getRequestFormLinks(e){return{text:this.transloco.translate("exams.submittedRequests"),icon:ee.PaperClip,badgeData:e.numberOfSubmittedRequestForms,permission:{actionName:"GetSubmittedRequestForms",controllerName:"Exam"},callback:()=>this.router.navigate(["submitted-requests"],{queryParamsHandling:"merge",queryParams:{subjectId:e.requestFormInfo.subjectId,courseExamId:e.requestFormInfo.courseExamId},relativeTo:this.route})}}getStudentsLinks(e){return{text:this.transloco.translate("exams.registeredStudents"),icon:ee.User,badgeData:e.sumOfStrengthAndWaitingStrength,permission:{actionName:"",controllerName:"",permissionGuid:Pe.Exam_GetExamSignInStudentsList},callback:()=>this.router.navigate(["subjects"],{queryParamsHandling:"merge",queryParams:{examSignInId:this.examSignInId?this.route.snapshot.params.examSignInId:this.examSignInId},relativeTo:this.route})}}getTutorsLinks(e){return{text:this.transloco.translate("exams.examiners"),icon:ee.Glasses,badgeData:e.examTutorCount,permission:{actionName:"GetExamTutors",controllerName:"Exam"},callback:()=>this.router.navigate(["examiners"],{queryParamsHandling:"merge",queryParams:{examSignInId:this.examSignInId?this.route.snapshot.params.examSignInId:this.examSignInId},relativeTo:this.route})}}addOnlineMeetingLink(e){if(e.onlineMeetingCount){let i={text:this.transloco.translate("exams.onlineExamOccasions"),icon:ee.Phone,badgeData:e.onlineMeetingCount,callback:()=>this.router.navigate(["online"],{queryParamsHandling:"merge",relativeTo:this.route,queryParams:{startDate:e.fromDate,endDate:e.toDate}})};this.links=[i,...this.links]}}getExtraFields(e){return e.map(i=>new br({label:i.translation,value:i.value,noTranslation:!0}))}getUnipollDialogData(e,i){return{component:bi,componentData:{dataSource:i,currentValue:{value:"",primary:"",secondary:[]}},title:this.transloco.translate(e),actions:[new $i({text:this.transloco.translate("button.cancel")}),new Ni({text:this.transloco.translate("button.select"),returnValue:!0})],filters:null}}navigateToStartedRequestForm(e,i,n){this.router.navigate(["request-form-started",e,this.examId],{relativeTo:this.route,queryParams:{requestFormName:n,subjectId:i},queryParamsHandling:"merge"})}navigateToRequestForm(e,i){this.router.navigate(["request-form-to-be-completed",e,this.examId],{relativeTo:this.route,queryParams:{requestFormName:i},queryParamsHandling:"merge"})}static{this.\u0275fac=function(i){return new(i||t)(f(re),f(ie),f(Z),f(_a))}}static{this.\u0275cmp=N({type:t,selectors:[["neptun-exam-detail"]],features:[oe([_a,da,Ce])],decls:1,vars:0,consts:[["loadingPlaceholder",""],[4,"transloco"],[4,"ngIf","ngIfElse"],[4,"ngIf"],[1,"neptun-wrapper"],["test-id","error"],["test-id","loading"],["test-id","title",3,"title","description"],["test-id","exam-details-onl
1ine-meeting-banner","iconColor","primary","backgroundColor","warning-light","buttonId","exam-details-online-meeting-btn",3,"title","text","buttonTitle","icon","permission","buttonClicked",4,"ngIf"],["test-id","exam-details-unipoll-practice-banner","backgroundColor","secondary-light","iconColor","secondary","buttonId","exam-details-unipoll-practice-btn",3,"title","text","buttonTitle","icon","permission","buttonClicked",4,"ngIf"],["test-id","exam-details-unipoll-exam-banner","iconColor","primary","backgroundColor","background-elements","buttonId","exam-details-unipoll-exam-btn",3,"title","text","buttonTitle","icon","permission","buttonClicked",4,"ngIf"],[1,"neptun-wrapper-padding"],["test-id","unipoll-exam-uri-notification",3,"id","icon","bgColor",4,"ngIf"],["test-id","exam-date-and-room-usage-different-notification",3,"id","icon","bgColor",4,"ngIf"],[3,"signUpForExamEmit","getChangeExamsListEmit","dropExamEmit","summaryData","isInProgress"],["neptunBasicLayoutLeftContent",""],["neptunBasicLayoutRightContent",""],["test-id","exam-details-online-meeting-banner","iconColor","primary","backgroundColor","warning-light","buttonId","exam-details-online-meeting-btn",3,"buttonClicked","title","text","buttonTitle","icon","permission"],["test-id","exam-details-unipoll-practice-banner","backgroundColor","secondary-light","iconColor","secondary","buttonId","exam-details-unipoll-practice-btn",3,"buttonClicked","title","text","buttonTitle","icon","permission"],["test-id","exam-details-unipoll-exam-banner","iconColor","primary","backgroundColor","background-elements","buttonId","exam-details-unipoll-exam-btn",3,"buttonClicked","title","text","buttonTitle","icon","permission"],["test-id","unipoll-exam-uri-notification",3,"id","icon","bgColor"],["test-id","exam-date-and-room-usage-different-notification",3,"id","icon","bgColor"],["class","result",4,"ngIf"],[1,"links"],["ngForTrackByIndex","",3,"link",4,"ngFor","ngForOf"],[1,"result"],["test-id","exam-result-card",3,"sign","text","secondaryText","color"],["ngForTrackByIndex","",3,"link"],["buttonId","base-data-show-more-btn"],["neptunDataViewItem",""],["moreDetail",""],["neptunDataViewItem","",4,"ngIf"],[1,"separator"],["test-id","other-informations-error"],["test-id","other-informations-loading"],["test-id","other-informations-data","buttonId","other-information-show-more-btn"],["neptunDataViewItem","",4,"ngFor","ngForOf"],[1,"exams-placeholder"],[1,"exams-placeholder__title"],[1,"exams-placeholder__subtitle"],[3,"loadingPlaceholder",4,"ngFor","ngForOf"],[3,"loadingPlaceholder"]],template:function(i,n){i&1&&u(0,ul,5,4,"ng-container",1)},dependencies:[z,Q,Ye,Ui,ue,lr,qi,_n,At,Pt,Ti,xe,Vi,Jo,wt,xt,yr,gt,It,oa,Ii,Yi,H,Ge,Re,Ze,We,ze],styles:["[_nghost-%COMP%]     .neptun-data-view-item+.neptun-data-view-item{margin-top:24px}.exam-detail[_ngcontent-%COMP%]{display:flex}.exam-detail__dataview[_ngcontent-%COMP%]{margin-top:32px}neptun-callout-box[_ngcontent-%COMP%]{margin-bottom:24px}neptun-online-exam-banner[_ngcontent-%COMP%]{margin-top:16px;margin-bottom:16px}h3[_ngcontent-%COMP%]{margin-bottom:20px}neptun-data-view[_ngcontent-%COMP%]{padding:0}.links[_ngcontent-%COMP%]   *[_ngcontent-%COMP%]{margin-bottom:16px}.exams-placeholder[_ngcontent-%COMP%]{display:flex;justify-content:unset;align-items:unset;flex-direction:column;gap:8px;margin-top:32px}.exams-placeholder__title[_ngcontent-%COMP%]{width:50%;height:62px}.exams-placeholder__subtitle[_ngcontent-%COMP%]{width:30%;height:32px}@media only screen and (max-width:767px){h3[_ngcontent-%COMP%], neptun-data-view[_ngcontent-%COMP%]{padding:0 20px}}"],changeDetection:0})}}return t})();var zr=(()=>{class t extends pt{constructor(e){super(),this.http=e,this.columns=[]}getItemsFromServer(e,i,n,o){let x=I(b({},n),{firstRow:e,lastRow:o||e+this.listItemCount});return this.http.get(`${J.settings.apiServer.url}Exam/GetExamTutors`,{params:St(x)}).pipe(T(h=>h.data))}static{this.\u0275fac=function(i){return new(i||t)(k(de))}}static{this.\u0275prov=M({token:t,factory:t.\u0275fac,providedIn:"root"})}}return t})();var po="[ExamExaminers]",Wr={FetchExamExaminersList:`${po} Set Fetch exam examiners subjects`,SetExamExaminersListState:`${po} Set judgement exam examiners table state`,ResetExamExaminersListState:`${po} Reset judgement exam examiners table state`},Ut;(function(t){class r{static{this.type=Wr.SetExamExaminersListState}constructor(n){this.examExaminersListState=n}}t.SetExamExaminersListState=r;class e{static{this.type=Wr.ResetExamExaminersListState}}t.ResetExamExaminersListState=e})(Ut||(Ut={}));var xl=9999,uo={entities:R,selectedEntities:[],orderBy:R,contracts:{firstRow:0,lastRow:xl,filterModel:{examId:""}},keepFilterOpen:!1,isFilterOpen:!1,interfaceIdentity:me.ExamExaminers,defaultColumns:[],columns:R,displayedColumns:R,isMoreFilterOpen:!1,isMultiMobileActionSupported:!1,canReduceSortableColumns:!0,isNextVisible:!1,tableFunctionTypes:[],previousFilters:R,hiddenFilters:{examId:""}};var ei=class xa{static getExamExaminersListState(r){return r.examExaminersList}setExamExamniersListState(r,e){r.patchState({examExaminersList:e.examExaminersListState})}resetExamExaminersListState(r){r.patchState({examExaminersList:uo})}static{this.\u0275fac=function(e){return new(e||xa)}}static{this.\u0275prov=M({token:xa,factory:xa.\u0275fac})}};K([Se(Ut.SetExamExaminersListState),P("design:type",Function),P("design:paramtypes",[Object,Ut.SetExamExaminersListState]),P("design:returntype",void 0)],ei.prototype,"setEx
1amExamniersListState",null);K([Se(Ut.ResetExamExaminersListState),P("design:type",Function),P("design:paramtypes",[Object]),P("design:returntype",void 0)],ei.prototype,"resetExamExaminersListState",null);K([qe(),P("design:type",Function),P("design:paramtypes",[Object]),P("design:returntype",Object)],ei,"getExamExaminersListState",null);ei=K([ke({name:"examexaminers",defaults:{examExaminersList:uo}})],ei);var Qr=9999,ga=(()=>{class t extends Qe{constructor(){super({entities:R,selectedEntities:[],isNextVisible:!1,keepFilterOpen:!1,isFilterOpen:!1,isMoreFilterOpen:!1,orderBy:R,contracts:{firstRow:0,lastRow:Qr,filterModel:{examId:""}},interfaceIdentity:me.ExamExaminers,isMultiMobileActionSupported:!1,canReduceSortableColumns:!0,defaultColumns:[{text:"menu.profile",key:"tutorName",exportHeader:"global.name"}],columns:R,displayedColumns:R,tableActions:[],tableFunctionTypes:[],previousFilters:R,hiddenFilters:{examId:""}}),this.endPoint="Exam/GetExamTutors",this.defaultPagingNumber=Qr,this.store=se(X),this.saveListState=this.effect(e=>e.pipe(De(this.state$),F(([,i])=>{this.store.dispatch(new Ut.SetExamExaminersListState(i))})))}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275prov=M({token:t,factory:t.\u0275fac})}}return t})();var hl=()=>[];function El(t,r){if(t&1){let e=j();p(0,"neptun-basic-table-view",1),c(1,"async"),c(2,"async"),c(3,"async"),c(4,"async"),c(5,"async"),c(6,"async"),A("tableAction",function(n){C(e);let o=s();return v(o.callActionCallback(n))})("itemSelected",function(n){C(e);let o=s();return v(o.setSelectedItems(n))})("getNextItems",function(n){C(e);let o=s();return v(o.getNextItems(n))})("itemAction",function(n){C(e);let o=s();return v(o.itemAction(n))}),l()}if(t&2){let e,i,n=r.$implicit,o=s();m("isSelectable",!0)("tableActions",(e=d(1,9,o.tableActions$))!==null&&e!==void 0?e:$(21,hl))("selectedCount",(i=(i=d(2,11,o.selectedEntities$))==null?null:i.length)!==null&&i!==void 0?i:0)("data",d(3,13,o.dataSource$))("title",n("exams.examiners"))("columns",d(4,15,o.displayedColumns$))("tableId","exam-examiners-list")("isNextVisible",d(5,17,o.isNextVisible$)===!0)("isListLoading",d(6,19,o.isListLoading$)===!0)}}var Kr=(()=>{class t extends Ke{constructor(e,i,n,o,x,h,D){super(h),this.service=e,this.transloco=i,this.route=n,this.dialogService=o,this.addToGroupDialogService=x,this.examExaminersStore=h,this.store=D,this.isAllFeaturesAvailable=Ln.isAllFeaturesAvailable,this.examId=this.route.snapshot.params.examId,this.isOrderBySaving$=this.examExaminersStore.isOrderBySaving$,this.dataSource$=this.entities$.pipe(T(B=>ne(B)?Ie(B.data.map(te=>this.convertToTableRow(te)),B.isPagingLoading??!1):B))}initialize(){this.examExaminersStore.updateHiddenFilters({examId:this.examId}),ne(this.listState.entities)?this.examExaminersStore.updateState(I(b({},this.listState),{contracts:I(b({},this.listState.contracts),{filterModel:{examId:this.examId}})})):(this.examExaminersStore.getColumns(),this.examExaminersStore.loadOrderBy(),this.listStore.updateFilterModel(I(b({},this.listState.contracts.filterModel),{examId:this.examId})),this.loadDataAfterOrderingReady())}loadModuleState(){return this.store.selectSnapshot(ei.getExamExaminersListState)}resetModuleState(){this.store.dispatch(new Ut.ResetExamExaminersListState)}get cancelAction(){return{text:this.transloco.translate("button.cancel"),icon:ee.PlayerStop,type:Ci.Cancel,callback:()=>this.examExaminersStore.updateSelectedEntities([])}}setSelectedItems(e){let i=[this.cancelAction,this.addToGroupAction(e),this.sendMessage(e)];this.examExaminersStore.updateTableActions(i),super.setSelectedItems(e)}sendMessage(e){return{text:this.transloco.translate("button.sendMessage"),icon:ee.Comment,type:Ci.SendMessage,callback:()=>this.openNewMessageDialog(e),permission:{actionName:"",controllerName:"",permissionGuid:Pe.Exam_ExamTutorsSendMessage}}}convertToTableRow(e){let i=this.setColumnsGetExtraFields(e);return{data:b(b({},e),i),actions:this.isAllFeaturesAvailable?{register:{text:"subjects.addToGroup",hasArrow:!0,color:G.Primary,callback:()=>this.openAddToGroupDialog([e]),permission:{actionName:"",controllerName:"",permissionGuid:Pe.FrontEndOnly_ExamRegistration_TutorListAddToGroup}}}:{},imageData:{printName:e.userAvatar.printName,fallbackColorCodeInHexa:e.userAvatar.fallbackColorCodeInHexa,image:e.userAvatar.thumbnailImage??"",avatarType:null}}}setColumnsGetExtraFields(e){let i=[{text:"menu.profile",key:"tutorName",disableSort:!0}],n={};
1return e.extraFieldItems.forEach(o=>{i.push({key:o.field,text:o.translation,disableSort:!0}),n[o.field]=o.value}),this.examExaminersStore.updateColumns({columns:{data:i},displayedColumns:{data:i}}),n}openNewMessageDialog(e){let i=e.map(x=>({userName:x.tutorName,userId:x.tutorId})),o=aa(this.route.snapshot.queryParams.isRegisteredExam)?"exam/registered/examiners/send":"exam/registration/examiners/send";this.dialogService.openDialog(ia,{targetUsers:i,endpoint:o}).afterClosed().pipe(F(()=>this.examExaminersStore.updateSelectedEntities([])),W(1)).subscribe()}addToGroupAction(e){return{text:this.transloco.translate("subjects.addToGroup"),icon:ee.Group,type:Ci.AddToGroup,callback:()=>this.openAddToGroupDialog(e),permission:{actionName:"",controllerName:"",permissionGuid:Pe.FrontEndOnly_ExamRegistration_TutorListAddToGroup}}}openAddToGroupDialog(e){let i=e.map(n=>n.tutorId);this.addToGroupDialogService.openAddToGroupDialog(i).subscribe(()=>this.service.filterActions([],[]))}loadDataAfterOrderingReady(){this.examExaminersStore.isServerOrderLoaded$.pipe(le(Boolean),W(1),F(()=>this.examExaminersStore.fetchItemsFromServer({firstRow:0,lastRow:this.examExaminersStore.defaultPagingNumber}))).subscribe()}static{this.\u0275fac=function(i){return new(i||t)(f(zr),f(Z),f(ie),f(Ve),f(ra),f(ga),f(X))}}static{this.\u0275cmp=N({type:t,selectors:[["neptun-exam-examiners"]],features:[oe([ga]),ve],decls:1,vars:0,consts:[["class","neptun-wrapper",3,"isSelectable","tableActions","selectedCount","data","title","columns","tableId","isNextVisible","isListLoading","tableAction","itemSelected","getNextItems","itemAction",4,"transloco"],[1,"neptun-wrapper",3,"tableAction","itemSelected","getNextItems","itemAction","isSelectable","tableActions","selectedCount","data","title","columns","tableId","isNextVisible","isListLoading"]],template:function(i,n){i&1&&u(0,El,7,22,"neptun-basic-table-view",0)},dependencies:[z,yi,H],encapsulation:2,changeDetection:0})}}return t})();var _o="[ExamHistory]",Xr={FetchExamHistoryList:`${_o} Set Fetch exam history subjects`,SetExamHistoryListState:`${_o} Set judgement exam history table state`,ResetExamHistoryListState:`${_o} Reset judgement exam history table state`},Ht;(function(t){class r{static{this.type=Xr.SetExamHistoryListState}constructor(n){this.examHistoryListState=n}}t.SetExamHistoryListState=r;class e{static{this.type=Xr.ResetExamHistoryListState}}t.ResetExamHistoryListState=e})(Ht||(Ht={}));var xo={entities:R,selectedEntities:[],orderBy:R,contracts:{firstRow:0,lastRow:10,filterModel:{subjectCode:""}},keepFilterOpen:!1,isFilterOpen:!1,interfaceIdentity:me.ExamHistory,defaultColumns:[],columns:R,displayedColumns:R,isMoreFilterOpen:!1,isMultiMobileActionSupported:!1,canReduceSortableColumns:!0,isNextVisible:!1,tableFunctionTypes:[],previousFilters:R,hiddenFilters:{subjectCode:""}};var ti=class fa{static getExamHistoryListState(r){return r.examHistoryList}setExamHistoryTableState(r,e){r.patchState({examHistoryList:e.examHistoryListState})}resetExamHistoryListState(r){r.patchState({examHistoryList:xo})}static{this.\u0275fac=function(e){return new(e||fa)}}static{this.\u0275prov=M({token:fa,factory:fa.\u0275fac})}};K([Se(Ht.SetExamHistoryListState),P("design:type",Function),P("design:paramtypes",[Object,Ht.SetExamHistoryListState]),P("design:returntype",void 0)],ti.prototype,"setExamHistoryTableState",null);K([Se(Ht.SetExamHistoryListState),P("design:type",Function),P("design:paramtypes",[Object]),P("design:returntype",void 0)],ti.prototype,"resetExamHistoryListState",null);K([qe(),P("design:type",Function),P("design:paramtypes",[Object]),P("design:returntype",Object)],ti,"getExamHistoryListState",null);ti=K([ke({name:"examhistory",defaults:{examHistoryList:xo}})],ti);var ha=(()=>{class t extends Qe{constructor(){super({entities:R,selectedEntities:[],isNextVisible:!1,keepFilterOpen:!1,isFilterOpen:!1,isMoreFilterOpen:!1,orderBy:R,contracts:{firstRow:0,lastRow:10,filterModel:{subjectCode:""}},interfaceIdentity:me.ExamHistory,isMultiMobileActionSupported:!1,canReduceSortableColumns:!0,defaultColumns:[{text:"exams.type",key:"examType",disableSort:!0},{text:"global.time",key:"fromDate",disableSort:!0,type:"date",dateStyle:"long",timeStyle:"short"},{text:"exams.grade",key:"examResult",disableSort:!0},{text:"exams.examiner",key:"examTutors",disableSort:!0},{text:"exams.courseCode",key:"courseCode",disableSort:!0}],columns:R,displayedColumns:R,tableActions:[],tableFunctionTypes:[],previousFilters:R,hiddenFilters:{subjectCode:""}}),this.endPoint="Exam/GetExamPreviousHistoryList",this.defaultPagingNumber=10,this.store=se(X),this.saveListState=this.effect(e=>e.pipe(De(this.state$),F(([,i])=>{this.store.dispatch(new Ht.SetExamHistoryListState(i))})))}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275prov=M({token:t,factory:t.\u0275fac})}}return t})();function bl(t,r){if(t&1){let e=j();E(0),g(1,"neptun-primary-title",1)(2,"neptun-secondary-title",2),p(3,"neptun-basic-table-view",3),c(4,"async"),c(5,"async"),c(6,"async"),c(7,"async"),A("getNextItems",function(n){C(e);let o=s();return v(o.getNextItems(n))})("itemAction",function(n){C(e);let o=s();return v(o.itemAction(n))}),l(),S()}if(t&2){let e=r.$implicit,i=s();a(),m("title",e("exams.history")),a(),m("title",i.subjectName)("description",i.subjectCode),a(),m("isSelectable",!1)("data",d(4,10,i.dataSource$))("title","")("columns",d(5,12,i.displayedColumns$))("tableId","exam-online-list")("isNextVisible",d(6,14,i.isNextVisible$)===!0)("isListLoading",d(7,16,i.isListLoading$)===!0)}}var Yr=(()=>{class t extends Ke{constructor(e,i,n,o,x,h){super(x),this.router=e,this.route=i,this.translocoService=n,this.dateLocalizationService=o,this.examHistoryStore=x,this.store=h,this.subjectName=this.route.
1snapshot.queryParams.subjectName,this.subjectCode=this.route.snapshot.queryParams.subjectCode,this.isOrderBySaving$=this.examHistoryStore.isOrderBySaving$,this.dataSource$=this.entities$.pipe(T(D=>ne(D)?Ie(D.data.map(B=>this.convertToTableRow(B)),D.isPagingLoading??!1):D))}initialize(){this.examHistoryStore.updateHiddenFilters({subjectCode:this.subjectCode}),ne(this.listState.entities)?this.examHistoryStore.updateState(I(b({},this.listState),{contracts:I(b({},this.listState.contracts),{filterModel:{subjectCode:this.subjectCode}})})):(this.examHistoryStore.getColumns(),this.examHistoryStore.loadOrderBy(),this.listStore.updateFilterModel(I(b({},this.listState.contracts.filterModel),{subjectCode:this.subjectCode})),this.loadDataAfterOrderingReady())}loadModuleState(){return this.store.selectSnapshot(ti.getExamHistoryListState)}resetModuleState(){this.store.dispatch(new Ht.ResetExamHistoryListState)}convertToTableRow(e){e.uiDisplayState.type===3&&(e.uiDisplayState.reasons[0]+=` ${this.translocoService.translate("exams.at")}  -${this.dateLocalizationService.localizeDate(e.signOutDate,void 0,{dateStyle:"long",timeStyle:"short"})}`);let i=()=>this.router.navigate(["exams","overview","registration",e.examId],{queryParams:{subjectName:e.subjectName,examSignInId:e.examSignInId,courseExamId:e.courseExamId}}),n={actionName:"GetExamRegistrationDetail",controllerName:"ExamRegistration"};return{data:e,detailsCallback:i,detailsPermission:n,actions:{details:{text:"button.details",hasArrow:!0,color:G.Primary,callback:i,permission:n}}}}loadDataAfterOrderingReady(){this.examHistoryStore.isServerOrderLoaded$.pipe(le(Boolean),W(1),F(()=>this.examHistoryStore.fetchItemsFromServer({firstRow:0,lastRow:this.examHistoryStore.defaultPagingNumber}))).subscribe()}static{this.\u0275fac=function(i){return new(i||t)(f(re),f(ie),f(Z),f(fe),f(ha),f(X))}}static{this.\u0275cmp=N({type:t,selectors:[["neptun-exam-history"]],features:[oe([ha]),ve],decls:1,vars:0,consts:[[4,"transloco"],[3,"title"],[3,"title","description"],[1,"neptun-wrapper",3,"getNextItems","itemAction","isSelectable","data","title","columns","tableId","isNextVisible","isListLoading"]],template:function(i,n){i&1&&u(0,bl,8,18,"ng-container",0)},dependencies:[z,ue,Vt,yi,H],encapsulation:2,changeDetection:0})}}return t})();var Cl=9999,go={entities:R,selectedEntities:[],orderBy:R,contracts:{firstRow:0,lastRow:Cl,filterModel:{examId:""}},keepFilterOpen:!1,isFilterOpen:!1,interfaceIdentity:me.ExamOnline,defaultColumns:[],columns:R,displayedColumns:R,isMoreFilterOpen:!1,isMultiMobileActionSupported:!1,canReduceSortableColumns:!0,isNextVisible:!1,tableFunctionTypes:[],previousFilters:R,hiddenFilters:{examId:""}};var fo="[ExamOnline]",Zr={FetchExamOnlineList:`${fo} Set Fetch exam online subjects`,SetExamOnlineListState:`${fo} Set judgement exam online table state`,ResetExamOnlineListState:`${fo} Reset judgement exam online table state`},Gt;(function(t){class r{static{this.type=Zr.SetExamOnlineListState}constructor(n){this.examOnlineListState=n}}t.SetExamOnlineListState=r;class e{static{this.type=Zr.ResetExamOnlineListState}}t.ResetExamOnlineListState=e})(Gt||(Gt={}));var ii=class Ea{static getExamOnlineListState(r){return r.examOnlineList}setExamOnlineTableState(r,e){r.patchState({examOnlineList:e.examOnlineListState})}resetExamOnlineListState(r){r.patchState({examOnlineList:go})}static{this.\u0275fac=function(e){return new(e||Ea)}}static{this.\u0275prov=M({token:Ea,factory:Ea.\u0275fac})}};K([Se(Gt.SetExamOnlineListState),P("design:type",Function),P("design:paramtypes",[Object,Gt.SetExamOnlineListState]),P("design:returntype",void 0)],ii.prototype,"setExamOnlineTableState",null);K([Se(Gt.ResetExamOnlineListState),P("design:type",Function),P("design:paramtypes",[Object]),P("design:returntype",void 0)],ii.prototype,"resetExamOnlineListState",null);K([qe(),P("design:type",Function),P("design:paramtypes",[Object]),P("design:returntype",Object)],ii,"getExamOnlineListState",null);ii=K([ke({name:"examonline",defaults:{examOnlineList:go}})],ii);var Jr=9999,Sa=(()=>{class t extends Qe{constructor(){super({entities:R,selectedEntities:[],isNextVisible:!1,keepFilterOpen:!1,isFilterOpen:!1,isMoreFilterOpen:!1,orderBy:R,contracts:{firstRow:0,lastRow:Jr,filterModel:{examId:""}},interfaceIdentity:me.ExamOnline,isMultiMobileActionSupported:!1,canReduceSortableColumns:!0,defaultColumns:[{text:"global.name",key:"subjectName",disableSort:!0},{text:"global.interval",key:"interval",disableSort:!0},{text:"global.lecturer",key:"examTutor",disableSort:!0}],columns:R,displayedColumns:R,tableActions:[],tableFunctionTypes:[],previousFilters:R,hiddenFilters:{examId:""}}),this.endPoint="Exam/GetOnlineOccasionsForExam",this.defaultPagingNumber=Jr,this.store=se(X),this.saveListState=this.effect(e=>e.pipe(De(this.state$),F(([,i])=>{this.store.dispatch(new Gt.SetExamOnlineListState(i))})))}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275prov=M({token:t,factory:t.\u0275fac})}}return t})();function yl(t,r){if(t&1){let e=j();p(0,"div",1)(1,"neptun-basic-table-view",2),c(2,"async"),c(3,"async"),c(4,"async"),c(5,"async"),A("getNextItems",function(n){C(e);let o=s();return v(o.getNextItems(n))})("itemAction",function(n){C(e);let o=s();return v(o.itemAction(n))}),l()()}if(t&2){let e=r.$implicit,i=s();a(),m("isSelectable",!1)("data",d(2,8,i.dataSource$))("title",e("exams.onlineExamOccasions"))("description",i.subjectName)("columns",d(3,10,i.displayedColumns$))("tableId","exam-online-list")("isNextVisible",d(4,12,i.isNextVisible$)===!0)("isListLoading",d(5,14,i.isListLoading$)===!0)}}var es=(()=>{class t extends Ke{constructor(e,i,n,o,x){super(o),this.router=e,this.dateLocalizationService=i,this.route=n,this.examOnlineStore=o,this.store=x,this.examId=this.route.
1snapshot.params.examId,this.subjectName=this.route.snapshot.queryParams.subjectName,this.isOrderBySaving$=this.examOnlineStore.isOrderBySaving$,this.dataSource$=this.entities$.pipe(T(h=>ne(h)?Ie(h.data.map(D=>this.convertToTableRow(D)),h.isPagingLoading??!1):h))}initialize(){this.examOnlineStore.updateHiddenFilters({examId:this.examId}),ne(this.listState.entities)?this.examOnlineStore.updateState(I(b({},this.listState),{contracts:I(b({},this.listState.contracts),{filterModel:{examId:this.examId}})})):(this.examOnlineStore.getColumns(),this.examOnlineStore.loadOrderBy(),this.listStore.updateFilterModel(I(b({},this.listState.contracts.filterModel),{examId:this.examId})),this.loadDataAfterOrderingReady())}loadModuleState(){return this.store.selectSnapshot(ii.getExamOnlineListState)}resetModuleState(){this.store.dispatch(new Gt.ResetExamOnlineListState)}convertToTableRow(e){let i=()=>{this.router.navigate([e.id],{queryParamsHandling:"merge",relativeTo:this.route,queryParams:{onlineOccasionName:e.title}})};return{data:I(b({},e),{interval:`${this.dateLocalizationService.localizeDate(e.startDate,void 0,{dateStyle:"short",timeStyle:"short"})} - ${this.dateLocalizationService.localizeDate(e.endDate,void 0,{timeStyle:"short"})}`}),detailsCallback:i,actions:{details:{text:"button.details",hasArrow:!0,color:G.Primary,callback:i}}}}loadDataAfterOrderingReady(){this.examOnlineStore.isServerOrderLoaded$.pipe(le(Boolean),W(1),F(()=>this.examOnlineStore.fetchItemsFromServer({firstRow:0,lastRow:this.examOnlineStore.defaultPagingNumber}))).subscribe()}static{this.\u0275fac=function(i){return new(i||t)(f(re),f(fe),f(ie),f(Sa),f(X))}}static{this.\u0275cmp=N({type:t,selectors:[["neptun-exam-online"]],features:[oe([Sa]),ve],decls:1,vars:0,consts:[["class","neptun-wrapper",4,"transloco"],[1,"neptun-wrapper"],[1,"neptun-wrapper",3,"getNextItems","itemAction","isSelectable","data","title","description","columns","tableId","isNextVisible","isListLoading"]],template:function(i,n){i&1&&u(0,yl,6,16,"div",0)},dependencies:[z,yi,H],encapsulation:2,changeDetection:0})}}return t})();var ts=(()=>{class t extends Qn{constructor(e){super(e),this.formDetailsApiUrl=`${J.settings.apiServer.url}Exam/GetSentBackToCorrectionRequestFormDetails`}static{this.\u0275fac=function(i){return new(i||t)(k(de))}}static{this.\u0275prov=M({token:t,factory:t.\u0275fac,providedIn:"root"})}}return t})();var is=(()=>{class t{static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275cmp=N({type:t,selectors:[["ng-component"]],features:[oe([{provide:Wn,useClass:ts}])],decls:1,vars:0,template:function(i,n){i&1&&g(0,"neptun-sent-back-request-form-details-view")},dependencies:[Kn],encapsulation:2,changeDetection:0})}}return t})();var ns=(()=>{class t extends Yn{constructor(){super(...arguments),this._formDetailsApiUrl="Exam/GetSubmittedRequestFormDetails"}static{this.\u0275fac=(()=>{let e;return function(n){return(e||(e=ci(t)))(n||t)}})()}static{this.\u0275prov=M({token:t,factory:t.\u0275fac,providedIn:"root"})}}return t})();var as=(()=>{class t{static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275cmp=N({type:t,selectors:[["ng-component"]],features:[oe([{provide:Xn,useClass:ns}])],decls:1,vars:0,template:function(i,n){i&1&&g(0,"neptun-submitted-request-form-details-view")},dependencies:[Zn],encapsulation:2,changeDetection:0})}}return t})();var ba=(()=>{class t extends ut{constructor(e){super({details:R}),this.dataFetcherService=e,this.endPoint="Exam/GetExamRoomDetail",this.details$=this.select(i=>i.details),this.addDetail=this.updater((i,n)=>I(b({},i),{details:n})),this.getDetails=this.effect(i=>i.pipe(F(()=>{this.addDetail(Le)}),U(n=>this.dataFetcherService.fetchItemFromServer(this.endPoint,n).pipe(F(o=>this.addDetail({data:o})),pe(o=>(this.addDetail(ge),lt(()=>o)))))))}static{this.\u0275fac=function(i){return new(i||t)(k(xi))}}static{this.\u0275prov=M({token:t,factory:t.\u0275fac})}}return t})();var os=()=>({dateStyle:"long",timeStyle:"short"});function Tl(t,r){t&1&&(E(0),p(1,"div",2),g(2,"neptun-request-error-indicator",3),l(),S())}function Fl(t,r){t&1&&(E(0),p(1,"div",2),g(2,"neptun-details-loading-placeholder",4),l(),S())}function Rl(t,r){if(t&1&&(E(0),g(1,"neptun-primary-title",5),p(2,"div",6)(3,"neptun-data-view",7)(4,"dl")(5,"div",8)(6,"dt"),_(7),l(),p(8,"dd"),_(9),c(10,"hyphen"),c(11,"translocoDate"),c(12,"hyphen"),c(13,"hyphen"),c(14,"translocoDate"),c(15,"hyphen"),l()(),p(16,"div",8)(17,"dt"),_(18),l(),p(19,"dd"),_(20),c(21,"hyphen"),l()(),p(22,"div",8)(23,"dt"),_(24),l(),p(25,"dd"),_(26),c(27,"hyphen"),l()(),p(28,"div",8)(29,"dt"),_(30),l(),p(31,"dd"),_(32),c(33,"hyphen"),l()(),p(34,"div",8)(35,"dt"),_(36),l(),p(37,"dd"),_(38),c(39,"hyphen"),l()(),p(40,"div",8)(41,"dt"),_(42),l(),p(43,"dd"),_(44),c(45,"hyphen"),l()(),p(46,"div",8)(47,"dt"),_(48),l(),p(49,"dd"),_(50),c(51,"hyphen"),l()()()()(),S()),t&2){let e=s().ngIf,i=s().$implicit;a(),m("title",e.data.roomName)("description",e.data.roomCode),a(6),y(i("global.interval")),a(2),vt(" ",d(12,22,_e(11,19,d(10,17,e.data.usageDateFrom),$(43,os)))," - ",d(15,29,_e(14,26,d(13,24,e.data.usageDateTo),$(44,os)))," "),a(9),y(i("global.site")),a(2),O(" ",d(21,31,e.data.siteName)," "),a(4),y(i("personal.building")),a(2),O(" ",d(27,33,e.data.buildingName)," "),a(4),y(i("internship.address")),a(2),O(" ",d(33,35,e.data.addressData?e.data.addressData.city+" "+e.data.addressData.street+" "+e.data.addressData.door:"")," "),a(4),y(i("global.capacity")),a(2),O(" ",d(39,37,e.data.roomCapacity)," "),a(4),y(i("roomManagement.isAccessible")),a(2),O(" ",d(45,39,e.data.barrierFreeAccess)," "),a(4),y(i("publication.comment")),a(2),O(" ",d(51,41,e.data.roomCode)," ")}}function Dl(t,r){if(t&1&&(E(0),u(1,Tl,3,0,"ng-container",1),c(2,"hasError"),u(3,Fl,3,0,"ng-container",1),c(4,"isLoadingRequest"),u(5,Rl,52,45,"ng-container",1),c(6,"isResultRequest"),S()),t&2){let e=r.ngIf;a(),m("ngIf",d(2,3,e)),a(2),m("ngIf",d(4,5,e)),a(2),m("ngIf",d(6,7,e))}}function Pl(t,r){if(t&1&&(E(0),u(1,Dl,7,9,"ng-container",1),c(2,"async"),S()),t&2){let e=s();a(),m("ngIf",d(2,1,e.details$))}}var rs=(()=>{class t{constructor(e,i){this.route=e,this.examRoomDetailsStore=i,this.examId=this.route.
1snapshot.params.examId,this.examRoomUsageGroupId=this.route.snapshot.params.id,this.details$=this.examRoomDetailsStore.details$}ngOnInit(){this.examRoomDetailsStore.getDetails({examId:this.examId,examRoomUsageGroupId:this.examRoomUsageGroupId})}static{this.\u0275fac=function(i){return new(i||t)(f(ie),f(ba))}}static{this.\u0275cmp=N({type:t,selectors:[["neptun-exam-room-details"]],features:[oe([ba])],decls:1,vars:0,consts:[[4,"transloco"],[4,"ngIf"],[1,"neptun-wrapper"],["test-id","error"],["test-id","loading"],[3,"title","description"],["test-id","details",1,"neptun-wrapper"],[1,"details"],["neptunDataViewItem",""]],template:function(i,n){i&1&&u(0,Pl,3,3,"ng-container",0)},dependencies:[z,Q,Ye,Ui,ue,xt,gt,H,Ge,Re,Ze,We,ze],styles:["@media only screen and (max-width:767px){neptun-data-view[_ngcontent-%COMP%]{padding:0 20px}}"]})}}return t})();var ho="[ExamRooms]",ss={FetchExamRoomsList:`${ho} Set Fetch exam rooms subjects`,SetExamRoomsListState:`${ho} Set judgement exam rooms table state`,ResetExamRoomsListState:`${ho} Reset judgement exam rooms table state`},zt;(function(t){class r{static{this.type=ss.SetExamRoomsListState}constructor(n){this.examRoomsListState=n}}t.SetExamRoomsListState=r;class e{static{this.type=ss.ResetExamRoomsListState}}t.ResetExamRoomsListState=e})(zt||(zt={}));var wl=9999,Eo={entities:R,selectedEntities:[],orderBy:R,contracts:{firstRow:0,lastRow:wl,filterModel:{examId:""}},keepFilterOpen:!1,isFilterOpen:!1,interfaceIdentity:me.ExamRooms,defaultColumns:[],columns:R,displayedColumns:R,isMoreFilterOpen:!1,isMultiMobileActionSupported:!1,canReduceSortableColumns:!0,isNextVisible:!1,tableFunctionTypes:[],previousFilters:R,hiddenFilters:{examId:""}};var ni=class Ca{static getExamRoomsListState(r){return r.examRoomsList}setExamRoomsTableState(r,e){r.patchState({examRoomsList:e.examRoomsListState})}resetExamRoomsListState(r){r.patchState({examRoomsList:Eo})}static{this.\u0275fac=function(e){return new(e||Ca)}}static{this.\u0275prov=M({token:Ca,factory:Ca.\u0275fac})}};K([Se(zt.SetExamRoomsListState),P("design:type",Function),P("design:paramtypes",[Object,zt.SetExamRoomsListState]),P("design:returntype",void 0)],ni.prototype,"setExamRoomsTableState",null);K([Se(zt.ResetExamRoomsListState),P("design:type",Function),P("design:paramtypes",[Object]),P("design:returntype",void 0)],ni.prototype,"resetExamRoomsListState",null);K([qe(),P("design:type",Function),P("design:paramtypes",[Object]),P("design:returntype",Object)],ni,"getExamRoomsListState",null);ni=K([ke({name:"examrooms",defaults:{examRoomsList:Eo}})],ni);var ms=9999,va=(()=>{class t extends Qe{constructor(){super({entities:R,selectedEntities:[],isNextVisible:!1,keepFilterOpen:!1,isFilterOpen:!1,isMoreFilterOpen:!1,orderBy:R,contracts:{firstRow:0,lastRow:ms,filterModel:{examId:""}},interfaceIdentity:me.ExamRooms,isMultiMobileActionSupported:!1,canReduceSortableColumns:!0,defaultColumns:[{text:"global.name",key:"roomName",disableSort:!0},{text:"global.code",key:"roomCode",disableSort:!0},{text:"global.interval",key:"interval",disableSort:!0},{text:"global.capacity",key:"roomCapacity",disableSort:!0},{text:"global.site",key:"siteName",disableSort:!0}],columns:R,displayedColumns:R,tableActions:[],tableFunctionTypes:[],previousFilters:R,hiddenFilters:{examId:""}}),this.endPoint="Exam/GetExamRoomsList",this.defaultPagingNumber=ms,this.store=se(X),this.saveListState=this.effect(e=>e.pipe(De(this.state$),F(([,i])=>{this.store.dispatch(new zt.SetExamRoomsListState(i))})))}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275prov=M({token:t,factory:t.\u0275fac})}}return t})();function Ol(t,r){if(t&1){let e=j();p(0,"neptun-basic-table-view",1),c(1,"async"),c(2,"async"),c(3,"async"),c(4,"async"),A("getNextItems",function(n){C(e);let o=s();return v(o.getNextItems(n))})("itemAction",function(n){C(e);let o=s();return v(o.itemAction(n))}),l()}if(t&2){let e=r.$implicit,i=s();m("isSelectable",!1)("data",d(1,7,i.dataSource$))("title",e("exams.rooms"))("columns",d(2,9,i.displayedColumns$))("tableId","exam-rooms-list")("isNextVisible",d(3,11,i.isNextVisible$)===!0)("isListLoading",d(4,13,i.isListLoading$)===!0)}}var ls=(()=>{class t extends Ke{constructor(e,i,n,o,x){super(x),this.router=e,this.route=i,this.dateLocalizationService=n,this.store=o,this.examRoomsStore=x,this.examId=this.route.
1snapshot.params.examId,this.isOrderBySaving$=this.examRoomsStore.isOrderBySaving$,this.dataSource$=this.entities$.pipe(T(h=>ne(h)?Ie(h.data.map(D=>this.convertToTableRow(D)),h.isPagingLoading??!1):h))}initialize(){this.examRoomsStore.updateHiddenFilters({examId:this.examId}),ne(this.listState.entities)?this.examRoomsStore.updateState(I(b({},this.listState),{contracts:I(b({},this.listState.contracts),{filterModel:{examId:this.examId}})})):(this.examRoomsStore.getColumns(),this.examRoomsStore.loadOrderBy(),this.listStore.updateFilterModel(I(b({},this.listState.contracts.filterModel),{examId:this.examId})),this.loadDataAfterOrderingReady())}loadModuleState(){return this.store.selectSnapshot(ni.getExamRoomsListState)}resetModuleState(){this.store.dispatch(new zt.ResetExamRoomsListState)}convertToTableRow(e){let i=()=>this.router.navigate([e.examRoomUsageGroupId],{relativeTo:this.route,queryParamsHandling:"merge",queryParams:{roomName:e.roomName}}),n={actionName:"GetExamRoomDetail",controllerName:"Exam"};return{data:I(b({},e),{interval:`${this.dateLocalizationService.localizeDate(e.usageDateFrom,void 0,{dateStyle:"long",timeStyle:"short"})} - ${this.dateLocalizationService.localizeDate(e.usageDateTo,void 0,{timeStyle:"short"})}`}),detailsCallback:i,detailsPermission:n,actions:{details:{text:"button.details",hasArrow:!0,color:G.Primary,callback:i,permission:n}}}}loadDataAfterOrderingReady(){this.examRoomsStore.isServerOrderLoaded$.pipe(le(Boolean),W(1),F(()=>this.examRoomsStore.fetchItemsFromServer({firstRow:0,lastRow:this.examRoomsStore.defaultPagingNumber}))).subscribe()}static{this.\u0275fac=function(i){return new(i||t)(f(re),f(ie),f(fe),f(X),f(va))}}static{this.\u0275cmp=N({type:t,selectors:[["neptun-exam-rooms"]
1],features:[oe([va]),ve],decls:1,vars:0,consts:[["class","neptun-wrapper",3,"isSelectable","data","title","columns","tableId","isNextVisible","isListLoading","getNextItems","itemAction",4,"transloco"],[1,"neptun-wrapper",3,"getNextItems","itemAction","isSelectable","data","title","columns","tableId","isNextVisible","isListLoading"]],template:function(i,n){i&1&&u(0,Ol,5,15,"neptun-basic-table-view",0)},dependencies:[z,yi,H],encapsulation:2,changeDetection:0})}}return t})();var cs=(()=>{class t extends pt{constructor(e,i){super(),this.http=e,this.transloco=i,this.columns=[{text:"menu.profile",key:"studentName",exportHeader:"global.name"},{text:"login.nickName",key:"nickName",onlyExport:!0},{text:"exams.signInDate",key:"signInDate",type:"date",dateStyle:"short",timeStyle:"short"},{text:"exams.subjectName",key:"subjectName"},{text:"exams.subjectCode",key:"subjectCode"},{text:"exams.courseCode",key:"courseCode"},{text:"exams.courseExamType",key:"courseExamType",exportHeader:"exams.examType"},{text:"global.status",key:"status",type:"computed",onlyExport:!0,compute:n=>n.isWaiting?this.transloco.translate("subjects.willBeOnWaitingList"):""}]}getItemsFromServer(e,i,n,o){let x={request:b({examId:this.examId},n),sortModel:this.getSortModel(e,i,o)};return this.http.get(`${J.settings.apiServer.url}Exam/GetExamSignInStudentsList`,{params:St(x)}).pipe(T(h=>h.data))}static{this.\u0275fac=function(i){return new(i||t)(k(de),k(Z))}}static{this.\u0275prov=M({token:t,factory:t.\u0275fac,providedIn:"root"})}}return t})();var gn="[ExamStudents]",So={SetExamStudentsFilterModel:`${gn} Set exam students Filter Model`,FetchExamStudents:`${gn} Set Fetch exam students`,SetExamStudentsListState:`${gn} Set exam students table state`,ResetExamStudentsListState:`${gn} Reset exam students table state`,ResetEntites:`${gn} Reset Entites`},$t;(function(t){class r{static{this.type=So.SetExamStudentsListState}constructor(o){this.examStudentsListState=o}}t.SetExamStudentsListState=r;class e{static{this.type=So.ResetExamStudentsListState}}t.ResetExamStudentsListState=e;class i{static{this.type=So.ResetEntites}}t.ResetEntites=i})($t||($t={}));var bo={entities:R,selectedEntities:[],orderBy:R,contracts:{firstRow:0,lastRow:10,filterModel:{subjectName:"",studentName:""}},keepFilterOpen:!1,isFilterOpen:!1,interfaceIdentity:me.ExamStudents,defaultColumns:[],columns:R,displayedColumns:R,isMoreFilterOpen:!1,isMultiMobileActionSupported:!1,canReduceSortableColumns:!0,isNextVisible:!1,tableFunctionTypes:[je.Export,je.EditColumns],tableActions:[],previousFilters:R,hiddenFilters:{examId:""}};var Wt=class ya{static getExamStudentsListState(r){return r.examStudentsList}setExamStudentsTableState(r,e){r.patchState({examStudentsList:e.examStudentsListState})}resetExamStudentsState(r){r.patchState({examStudentsList:bo})}resetEntities(r){r.patchState({examStudentsList:I(b({},r.getState().examStudentsList),{entities:R})})}static{this.\u0275fac=function(e){return new(e||ya)}}static{this.\u0275prov=M({token:ya,factory:ya.\u0275fac})}};K([Se($t.SetExamStudentsListState),P("design:type",Function),P("design:paramtypes",[Object,$t.SetExamStudentsListState]),P("design:returntype",void 0)],Wt.prototype,"setExamStudentsTableState",null);K([Se($t.ResetExamStudentsListState),P("design:type",Function),P("design:paramtypes",[Object]),P("design:returntype",void 0)],Wt.prototype,"resetExamStudentsState",null);K([Se($t.ResetEntites),P("design:type",Function),P("design:paramtypes",[Object]),P("design:returntype",void 0)],Wt.prototype,"resetEntities",null);K([qe(),P("design:type",Function),P("design:paramtypes",[Object]),P("design:returntype",Object)],Wt,"getExamStudentsListState",null);Wt=K([ke({name:"examstudents",defaults:{examStudentsList:bo}})],Wt);var Ia=(()=>{class t extends Qe{constructor(e){super({entities:R,selectedEntities:[],isNextVisible:!1,keepFilterOpen:!1,isFilterOpen:!1,isMoreFilterOpen:!1,defaultOrderBy:{sortablePropertyName:"fileName",sort:"asc"},orderBy:R,contracts:{firstRow:0,lastRow:10,filterModel:{subjectName:"",studentName:""}},interfaceIdentity:me.ExamStudents,isMultiMobileActionSupported:!1,canReduceSortableColumns:!0,defaultColumns:[{text:"menu.profile",key:"studentName",exportHeader:"global.name"}
1,{text:"login.nickName",key:"nickName",onlyExport:!0},{text:"exams.signInDate",key:"signInDate",type:"date",dateStyle:"short",timeStyle:"short"},{text:"exams.subjectName",key:"subjectName"},{text:"exams.subjectCode",key:"subjectCode"},{text:"exams.courseCode",key:"courseCode"},{text:"exams.courseExamType",key:"courseExamType",exportHeader:"exams.examType"},{text:"global.status",key:"status",type:"computed",onlyExport:!0,compute:i=>i.isWaiting?this.translocoService.translate("subjects.willBeOnWaitingList"):""}],columns:R,displayedColumns:R,tableActions:[],tableFunctionTypes:[je.Export,je.EditColumns],previousFilters:R,hiddenFilters:{examId:""}}),this.translocoService=e,this.endPoint="Exam/GetExamSignInStudentsList",this.defaultPagingNumber=10,this.store=se(X),this.saveListState=this.effect(i=>i.pipe(De(this.state$),F(([,n])=>{this.store.dispatch(new $t.SetExamStudentsListState(n))})))}static{this.\u0275fac=function(i){return new(i||t)(k(Z))}}static{this.\u0275prov=M({token:t,factory:t.\u0275fac})}}return t})();var jl=()=>[];function kl(t,r){if(t&1){let e=j();p(0,"neptun-filter-v2",5),c(1,"async"),c(2,"async"),c(3,"async"),c(4,"async"),A("filterClick",function(n){C(e);let o=s(3);return v(o.filterItems(n))})("closed",function(){C(e);let n=s(3);return v(n.toggleFilter())})("keepOpenChanged",function(){C(e);let n=s(3);return v(n.setKeepOpenChanged())})("latestFilterLoad",function(n){C(e);let o=s(3);return v(o.loadLatestFilter(n))})("resetFilter",function(){C(e);let n=s(3);return v(n.resetFilter())})("showMoreFilterChanged",function(n){C(e);let o=s(3);return v(o.setIsMoreFilterOpen(n))}),g(5,"neptun-form-input",6)(6,"neptun-form-input",7),l()}if(t&2){let e=s().ngIf,i=s().$implicit,n=s();m("hasMoreFilter",!1)("previousFilter",d(1,9,n.previousFilters$))("showMoreFilter",!!d(2,11,n.isMoreFilterOpen$))("keepOpen",d(3,13,n.keepFilterOpen$))("isLoading",d(4,15,n.isFiltering$)===!0),a(5),m("ngModel",e.studentName)("label",i("menu.exams.studentName")),a(),m("ngModel",e.subjectName)("label",i("exams.subjectName"))}}function Nl(t,r){if(t&1&&(E(0,3),u(1,kl,7,17,"neptun-filter-v2",4),c(2,"async"),S()),t&2){let e=s(2);a(),m("ngIf",d(2,1,e.isFilterOpen$))}}function $l(t,r){if(t&1){let e=j();p(0,"neptun-sortable-filterable-table-view",1),c(1,"async"),c(2,"async"),c(3,"async"),c(4,"async"),c(5,"async"),c(6,"async"),c(7,"async"),c(8,"async"),c(9,"async"),A("tableAction",function(n){C(e);let o=s();return v(o.callActionCallback(n))})("itemSelected",function(n){C(e);let o=s();return v(o.setSelectedItems(n))})("sortItems",function(n){C(e);let o=s();return v(o.sortItems(n))})("toggleFilter",function(){C(e);let n=s();return v(n.toggleFilter())})("getNextItems",function(n){C(e);let o=s();return v(o.getNextItems(n))})("itemAction",function(n){C(e);let o=s();return v(o.itemAction(n))}),u(10,Nl,3,3,"ng-container",2),c(11,"async"),l()}if(t&2){let e,i,n=r.$implicit,o=s();m("data",d(1,13,o.dataSource$))("title",n("exams.registeredStudents"))("columns",d(2,15,o.displayedColumns$))("tableId","sent-back-request-form-table")("filterCount",d(3,17,o.filterCount$))("isSelectable",!0)("headerActions",d(4,19,o.moreActionsMenuItems$))("tableActions",(e=d(5,21,o.tableActions$))!==null&&e!==void 0?e:$(33,jl))("selectedCount",(i=(i=d(6,23,o.selectedEntities$))==null?null:i.length)!==null&&i!==void 0?i:0)("isNextVisible",d(7,25,o.isNextVisible$)===!0)("orderByMenu",d(8,27,o.orderByMenu$))("isListLoading",d(9,29,o.isListLoading$)===!0),a(10),m("ngIf",d(11,31,o.filterModel$))}}var ps=(()=>{class t extends Ke{constructor(e,i,n,o,x,h,D){super(D),this.examStudentsService=e,this.transloco=i,this.route=n,this.store=o,this.addToGroupDialogService=x,this.dialogService=h,this.examStudentsStore=D,this.isAllFeaturesAvailable=Ln.isAllFeaturesAvailable,this.exportTitle="exams.examRegisteredStudents",this.examId=this.route.snapshot.params.examId,this.isOrderBySaving$=this.examStudentsStore.isOrderBySaving$,this.dataSource$=ye([this.entities$,this.selectedEntities$]).pipe(T(([B,te])=>ne(B)?Ie(B.data.map(w=>this.convertToTableRow(w,te.some(q=>q.studentId===w.studentId&&q.signInDate===w.signInDate))),B.isPagingLoading??!1):B)
1)}initialize(){this.examStudentsStore.updateHiddenFilters({examId:this.examId}),ne(this.listState.entities)?this.examStudentsStore.updateState(I(b({},this.listState),{contracts:I(b({},this.listState.contracts),{filterModel:{examId:this.examId}})})):(this.examStudentsStore.getColumns(),this.examStudentsStore.loadOrderBy(),this.examStudentsStore.getPreviousFilters(),this.listStore.updateFilterModel(I(b({},this.listState.contracts.filterModel),{examId:this.examId})),this.loadDataAfterOrderingReady())}loadModuleState(){return this.store.selectSnapshot(Wt.getExamStudentsListState)}resetModuleState(){this.store.dispatch(new $t.ResetExamStudentsListState)}get cancelAction(){return{text:this.transloco.translate("button.cancel"),icon:ee.PlayerStop,type:Ci.Cancel,callback:()=>this.examStudentsStore.updateSelectedEntities([])}}setSelectedItems(e){let i=[this.cancelAction,this.addToGroupAction(e),this.sendMessage(e)];this.examStudentsStore.updateTableActions(i),super.setSelectedItems(e)}sendMessage(e){return{text:this.transloco.translate("button.sendMessage"),icon:ee.Comment,type:Ci.SendMessage,callback:()=>this.openNewMessageDialog(e),permission:{actionName:"",controllerName:"",permissionGuid:Pe.Exam_ExamSignInStudentsListSendMessage}}}addToGroupAction(e){return{text:this.transloco.translate("subjects.addToGroup"),icon:ee.Group,type:Ci.AddToGroup,callback:()=>this.openAddToGroupDialog(e),permission:{actionName:"",controllerName:"",permissionGuid:Pe.FrontEndOnly_ExamRegistration_StudentListAddToGroup}}}openAddToGroupDialog(e){let i=e.map(n=>n.studentId).reduce((n,o)=>(n.includes(o)||n.push(o),n),[]);this.addToGroupDialogService.openAddToGroupDialog(i).subscribe(()=>this.examStudentsService.filterActions([],[]))}openNewMessageDialog(e){let i=e.map(x=>({userName:x.studentName,userId:x.studentId})).reduce((x,h)=>(x.some(D=>D.userId===h.userId)||x.push(h),x),[]),o=aa(this.route.snapshot.queryParams.isRegisteredExam)?"exam/registered/students/send":"exam/registration/students/send";this.dialogService.openDialog(ia,{targetUsers:i,endpoint:o}).afterClosed().pipe(F(()=>this.examStudentsService.filterActions([],[])),W(1)).subscribe()}convertToTableRow(e,i){return{data:I(b({},e),{uiDisplayState:{type:e.isWaiting?kt.Highlighted:kt.Default,reasons:[e.nickName,e.isWaiting?this.transloco.translate("subjects.willBeOnWaitingList"):""].filter(n=>!!n)}}),imageData:e.avatar,selected:i,actions:this.isAllFeaturesAvailable?{register:{text:"subjects.addToGroup",color:G.Primary,hasArrow:!0,callback:()=>this.openAddToGroupDialog([e]),permission:{actionName:"",controllerName:"",permissionGuid:Pe.FrontEndOnly_ExamRegistration_StudentListAddToGroup}}}:{}}}loadDataAfterOrderingReady(){this.examStudentsStore.isServerOrderLoaded$.pipe(le(Boolean),W(1),F(()=>this.examStudentsStore.fetchItemsFromServer({filterModel:I(b({},this.listState.contracts.filterModel),{examId:this.examId}),firstRow:0,lastRow:this.listState.contracts.lastRow?this.listState.contracts.lastRow:this.examStudentsStore.defaultPagingNumber}))).subscribe()}static{this.\u0275fac=function(i){return new(i||t)(f(cs),f(Z),f(ie),f(X),f(ra),f(Ve),f(Ia))}}static{this.\u0275cmp=N({type:t,selectors:[["neptun-exam-students"]],features:[oe([Ia]),ve],decls:1,vars:0,consts:[["class","neptun-wrapper",3,"data","title","columns","tableId","filterCount","isSelectable","headerActions","tableActions","selectedCount","
1isNextVisible","orderByMenu","isListLoading","tableAction","itemSelected","sortItems","toggleFilter","getNextItems","itemAction",4,"transloco"],[1,"neptun-wrapper",3,"tableAction","itemSelected","sortItems","toggleFilter","getNextItems","itemAction","data","title","columns","tableId","filterCount","isSelectable","headerActions","tableActions","selectedCount","isNextVisible","orderByMenu","isListLoading"],["filters","",4,"ngIf"],["filters",""],["test-id","filter","class","neptun-wrapper-padding",3,"hasMoreFilter","previousFilter","showMoreFilter","keepOpen","isLoading","filterClick","closed","keepOpenChanged","latestFilterLoad","resetFilter","showMoreFilterChanged",4,"ngIf"],["test-id","filter",1,"neptun-wrapper-padding",3,"filterClick","closed","keepOpenChanged","latestFilterLoad","resetFilter","showMoreFilterChanged","hasMoreFilter","previousFilter","showMoreFilter","keepOpen","isLoading"],["id","studentName","name","studentName",1,"filter-element",3,"ngModel","label"],["id","subjectName","name","subjectName",1,"filter-element",3,"ngModel","label"]],template:function(i,n){i&1&&u(0,$l,12,34,"neptun-sortable-filterable-table-view",0)},dependencies:[z,dr,Q,Tt,Ft,nt,tt,it,H],styles:["neptun-data-table>table>tbody>tr.mat-row.cdk-row.table-row.primary.row-selectable.ng-star-inserted>td.mat-cell.cdk-cell.table-data-cell.cdk-column-studentName.mat-column-studentName.table-data-cell--image.ng-star-inserted>div>div>neptun-string-list>div>span:not(:first-child){color:#0943d9}"],changeDetection:0})}}return t})();var on={entities:R,selectedEntities:[],contracts:{firstRow:0,lastRow:9999,filterModel:{termId:"",subjectId:"",examTypeId:"",examPrerequisiteType:"",tutorName:""}},keepFilterOpen:!1,isFilterOpen:!1,isMoreFilterOpen:!1,canReduceSortableColumns:!0,interfaceIdentity:me.ExamRegistration,defaultColumns:[{text:"global.time",key:"fromDate",dateStyle:"long",timeStyle:"short",type:"date",disableSort:!0},{text:"exams.type",key:"examType",disableSort:!0}
1,{text:"exams.headcountLimit",key:"counts",type:"counts",counts:["strength","maxStrength"],disableSort:!0},{text:"global.lecturer",key:"examTutors",disableSort:!0},{text:"exams.courseCode",key:"courseCode",disableSort:!0},{text:"subjectsCourses.examCondition",key:"examPrerequisiteType",disableSort:!0},{text:"global.description",key:"description",disableSort:!0}],columns:R,displayedColumns:R,isMultiMobileActionSupported:!1,isNextVisible:!1,tableActions:[],tableFunctionTypes:[je.EditColumns,je.Export],previousFilters:R,terms:R,examSubjects:R,examTypes:R,examPrerequisiteTypes:R,examOperation:R,availableExams:R,isCallAvailableExamsCount:!0,isTableVisible:!1,selectedTerm:null};var ai=class Ta{static getExamRegistrationState(r){return r.examRegistration}setExamRegistrationState(r,e){r.patchState({examRegistration:e.examRegistration})}resetExamRegistrationState(r){r.patchState({examRegistration:on})}static{this.\u0275fac=function(e){return new(e||Ta)}}static{this.\u0275prov=M({token:Ta,factory:Ta.\u0275fac})}};K([Se(ht.SetExamRegistration),P("design:type",Function),P("design:paramtypes",[Object,ht.SetExamRegistration]),P("design:returntype",void 0)],ai.prototype,"setExamRegistrationState",null);K([Se(ht.ResetExamRegistrationState),P("design:type",Function),P("design:paramtypes",[Object]),P("design:returntype",void 0)],ai.prototype,"resetExamRegistrationState",null);K([qe(),P("design:type",Function),P("design:paramtypes",[Object]),P("design:returntype",Object)],ai,"getExamRegistrationState",null);ai=K([ke({name:"examRegistration",defaults:{examRegistration:on}})],ai);var Fa=(()=>{class t{constructor(e){this.http=e,this.availableExamsCount$=this.http.get(`${J.settings.apiServer.url}ExamOverview/GetAvailableExamsCount`).pipe(T(i=>i.data)),this.dashboardExamEntries$=this.http.get(`${J.settings.apiServer.url}ExamOverview/GetDashboardExamEntries`).pipe(T(i=>i.data)),this.dashboardActualTermExamEntries$=this.http.get(`${J.settings.apiServer.url}ExamOverview/GetDashboardActualTermExamEntries`).pipe(T(i=>i.data)),this.dashboardExamEntriesInActualTerm$=this.http.get(`${J.settings.apiServer.url}ExamOverview/GetDashboardExamEntriesInActualTerm`).pipe(T(i=>i.data))}static{this.\u0275fac=function(i){return new(i||t)(k(de))}}static{this.\u0275prov=M({token:t,factory:t.\u0275fac,providedIn:"root"})}}return t})();var Ra=(()=>{class t extends Qe{constructor(e,i,n){super(on),this.examRegistrationService=e,this.examOverviewService=i,this.globalErrorHandler=n,this.generalService=se(ji),this.examService=se(ot),this.dialogService=se(Ve),this.endPoint="ExamRegistration/GetExamsList",this.defaultPagingNumber=on.contracts.lastRow,this.store=se(X),this.actualTerm={text:"",value:"",isActualTerm:!1},this.examTypes$=this.select(o=>o.examTypes),this.selectedTerm$=this.select(o=>o.selectedTerm),this.examPrerequisiteTypes$=this.select(o=>o.examPrerequisiteTypes),this.terms$=this.select(o=>o.terms),this.examSubjects$=this.select(o=>o.examSubjects),this.examOperation$=this.select(o=>o.examOperation),this.availableExams$=this.select(o=>o.availableExams),this.isCallAvailableExamsCount$=this.select(o=>o.isCallAvailableExamsCount),this.isTableVisible$=this.select(o=>o.isTableVisible),this.updateSelectedTerm=this.updater((o,x)=>I(b({},o),{selectedTerm:x})),this.updateIsCallAvailableExamsCount=this.updater((o,x)=>I(b({},o),{isCallAvailableExamsCount:x})),this.updateIsTableVisible=this.updater((o,x)=>I(b({},o),{isTableVisible:x})),this.updateExamOperation=this.updater((o,x)=>I(b({},o),{examOperation:x})),this.signUpForExam=this.effect(o=>o.pipe(F(({examId:x,courseId:h})=>{this.updateExamOperation(wi({examId:x,courseOrSignInId:h}))}),U(({examId:x,courseId:h})=>this.examRegistrationService.signUpForExam(x,h).pipe(W(1),De(this.state$),F(([D,B])=>{this.store.dispatch(new Fe.AddSuccessPushNotification({title:"exams.signInSuccessful"})),this.updateEntityLine(x,h,B.entities,D),this.updateExamOperation(Ie(!0))}),pe(D=>(this.updateExamOperation(ge),this.globalErrorHandler.handleError(D),Me)))))),this.dropExam=this.effect(o=>o.pipe(F(({examId:x,examSignInId:h})=>{this.updateExamOperation(wi({examId:x,courseOrSignInId:h}))}),U(({examId:x,examSignInId:h})=>this.dialogService.openConfirmActionDialog(this.examRegistrationService.getDialogDropExamData()).afterClosed().pipe(U(D=>D?this.examRegistrationService.unSubscribe(x,h).pipe(W(1),De(this.state$),F(([B,te])=>{if(!B.success){this.updateExamOperation(ge);return}this.store.dispatch(new Fe.AddSuccessPushNotification({title:"exams.unSub
1scribeSuccessful"})),this.updateEntityLine(x,h,te.entities,B),this.updateExamOperation(Ie(!0))}),pe(B=>(this.updateExamOperation(ge),this.globalErrorHandler.handleError(B),Me))):(this.updateExamOperation(Ie(!0)),Me)))))),this.saveListState=this.effect(o=>o.pipe(De(this.state$),F(([,x])=>{this.store.dispatch(new ht.SetExamRegistration(x))}))),this.getTerms=this.getGetterFunction(this.examService.terms$.pipe(W(1),le(o=>!!o.length),F(o=>{this.actualTerm=o.find(x=>x.isActualTerm)??o[0],this.updateSelectedTerm(this.actualTerm.value),this.resetFilter()})),this.updater((o,x)=>I(b({},o),{terms:x}))),this.getExamSubjects=this.getGetterFunction(this.selectedTerm$.pipe(ct(),U(o=>this.examService.examSubjects("ExamRegistration/GetExamSubjects",o))),this.updater((o,x)=>I(b({},o),{examSubjects:x}))),this.getExamTypes=this.getGetterFunction(this.generalService.getDictionaryItem(Zt.ExamType),this.updater((o,x)=>I(b({},o),{examTypes:x}))),this.getExamPrerequisiteTypes=this.getGetterFunction(this.generalService.getDictionaryItem(Zt.VizsgaFeltetelTipusEnum),this.updater((o,x)=>I(b({},o),{examPrerequisiteTypes:x}))),this.getAvailableExamsCount=this.getGetterFunction(this.examOverviewService.availableExamsCount$.pipe(Lo()),this.updater((o,x)=>I(b({},o),{availableExams:x})))}updateEntityLine(e,i,n,o){let x=this.findExam(e,i,n);this.updateExam(x,o),this.updateEntities(n)}findExam(e,i,n){if(!ne(n))return null;for(let o of n.data){let x=o.examList.findIndex(h=>h.examId===e&&(h.courseId===i||h.examSignInId===i));if(x>-1)return{exam:o,index:x}}return null}updateExam(e,i){e&&(e.exam.examList[e.index]=b(b({},e.exam.examList[e.index]),i))}resetFilter(){this.updateFilterModel({termId:this.actualTerm.value,subjectId:"",examTypeId:"",examPrerequisiteType:"",tutorName:""})}resetSubjectFilter(e){let i=this.state();this.updateState(I(b({},i),{contracts:I(b({},i.contracts),{filterModel:I(b({},i.contracts.filterModel),{termId:e,subjectId:""})})}))}static{this.\u0275fac=function(i){return new(i||t)(k(ft),k(Fa),k(Ce))}}static{this.\u0275prov=M({token:t,factory:t.\u0275fac})}}return t})();var us=t=>({value:t}),ql=()=>["termId"],Da=()=>[],Vl=t=>({data:t});function Ul(t,r){if(t&1){let e=j();p(0,"neptun-table-header-actions",8),c(1,"async"),c(2,"async"),c(3,"async"),c(4,"async"),A("itemAction",function(n){C(e);let o=s(3);return v(o.itemAction(n))})("toggleFilter",function(){C(e);let n=s(3);return v(n.toggleFilter())}),l()}if(t&2){let e=s(3);m("actionsMenu",d(1,5,e.moreActionsMenuItems$))("filterCount",d(2,7,e.filterCount$))("isFilterOpen",d(3,9,e.isFilterOpen$))("isListDataLoading",d(4,11,e.isListLoading$)===!0)("hasFilter",!0)}}function Hl(t,r){t&1&&(E(0),p(1,"div",10),g(2,"neptun-request-error-indicator",11),l(),S())}function Gl(t,r){if(t&1&&Be(0,12),t&2){s(5);let e=Y(4);m("ngTemplateOutlet",e)}}function zl(t,r){t&1&&(E(0),p(1,"div",10),g(2,"neptun-request-error-indicator",13),l(),S())}function Wl(t,r){if(t&1&&Be(0,12),t&2){s(6);let e=Y(4);m("ngTemplateOutlet",e)}}function Ql(t,r){if(t&1&&Be(0,12),t&2){s(7);let e=Y(6);m("ngTemplateOutlet",e)}}function Kl(t,r){if(t&1&&Be(0,12),t&2){s(7);let e=Y(8);m("ngTemplateOutlet",e)}}function Xl(t,r){if(t&1&&(E(0),u(1,Ql,1,1,"ng-container",9)(2,Kl,1,1,"ng-container",9),S()),t&2){let e=s(3).ngIf;a(),m("ngIf",e.data.isThereNowExamPeriod===!1&&e.data.examsCount===0),a(),m("ngIf",e.data.isThereNowExamPeriod===!0&&e.data.examsCount===0)}}function Yl(t,r){if(t&1&&Be(0,12),t&2){s();let e=Y(9);m("ngTemplateOutlet",e)}}function Zl(t,r){if(t&1&&(E(0),g(1,"neptun-filter-field-error-indicator",17),S()),t&2){let e=s(12).$implicit;a(),m("fieldName",e("global.semester"))}}function Jl(t,r){t&1&&(E(0),g(1,"neptun-rectangle-placeholder",18),S())}function ec(t,r){if(t&1){let e=j();E(0),p(1,"neptun-form-select",19),A("ngModelChange",function(n){C(e);let o=s(13);return v(o.setSelectedTermId(n))}),l(),S()}if(t&2){let e=s().ngIf,i=s(2).ngIf,n=s(9).$implicit;a(),m("label",n("global.semester"))("ngModel",i.termId)("dataSource",e.data)("required",!0)}}function tc(t,r){if(t&1&&(E(0),u(1,Zl,2,1,"ng-container",5),c(2,"hasError"),u(3,Jl,2,0,"ng-container",5),c(4,"isLoadingRequest"),u(5,ec,2,4,"ng-container",5),c(6,"isResultRequest"),S()),t&2){let e=r.ngIf;a(),m("ngIf",d(2,3,e)),a(2),m("ngIf",d(4,5,e)),a(2),m("ngIf",d(6,7,e))}}function ic(t,r){if(t&1&&(E(0),g(1,"neptun-filter-field-error-indicator",21),S()),t&2){let e=s(12).$implicit;a(),m("fieldName",e("internship.subject"))}}function nc(t,r){t&1&&(E(0),g(1,"neptun-rectangle-placeholder",22),S())}function ac(t,r){if(t&1&&(E(0),u(1,ic,2,1,"ng-container",5),c(2,"hasError"),u(3,nc,2,0,"ng-container",5),c(4,"isLoadingRequest"),g(5,"neptun-form-select",20),c(6,"isResultRequest"),c(7,"isResultRequest"),S()),t&2){let e=r.ngIf,i=s(2).ngIf,n=s(9).$implicit;a(),m("ngIf",d(2,8,e)),a(2),m("ngIf",d(4,10,e)),a(2),st(d(6,12,e)?"filter-element":"display-none"),m("label",n("internship.subject"))("isAllItemsAnOption",!0)("ngModel",i.subjectId)("dataSource",d(7,14,e)?e.data:$(16,Da))}}function oc(t,r){if(t&1&&(E(0),g(1,"neptun-filter-field-error-indicator",24),S()),t&2){let e=s(12).$implicit;a(),m("fieldName",e("exams.type"))}}function rc(t,r){t&1&&(E(0),g(1,"neptun-rectangle-placeholder",25),S())}function sc(t,r){if(t&1&&(E(0),u(1,oc,2,1,"ng-container",5),c(2,"hasError"),u(3,rc,2,0,"ng-container",5),c(4,"isLoadingRequest"),g(5,"neptun-form-select",23),c(6,"isResultRequest"),c(7,"isResultRequest"),S()),t&2){let e=r.ngIf,i=s(2).ngIf,n=s(9).$implicit;a(),m("ngIf",d(2,8,e)),a(2),m("ngIf",d(4,10,e)),a(2),st(d(6,12,e)?"filter-element":"display-none"),m("label",n("exams.type"))("isAllItemsAnOption",!0)("ngModel",i.examTypeId)("dataSource",d(7,14,e)?e.data:$(16,Da))}}function mc(t,r){if(t&1&&(E(0),g(1,"neptun-filter-field-error-indicator",27),S()),t&2){let e=s(12).$implicit;a(),m("fieldName",e("subjectsCourses.examCondition"))}}function lc(t,r){t&1&&(E(0),g(1,"neptun-rectangle-placeholder",28),S())}function cc(t,r){if(t&1&&(E(0),u(1,mc,2,1,"ng-container",5),c(2,"hasError"),u(3,lc,2,0,"ng-container",5),c(4,"isLoadingRequest"),g(5,"neptun-form-select",26),c(6,"isResultRequest"),c(7,"isResultRequest"),S()),t&2){let e=r.ngIf,i=s(2).ngIf,n=s(9).$implicit;a(),m("ngIf",d(2,8,e)),a(2),m("ngIf",d(4,10,e)),a(2),st(d(6,12,e)?"filter-element":"display-none"),m("label",n("subjectsCourses.examCondition"))("isAllItemsAnOption",!0)("ngModel",i.examPrerequisiteType)("dataSource",d(7,14,e)?e.data:$(16,Da))}}function pc(t,r){if(t&1){let e=j();p(0,"neptun-filter-v2",15),c(1,"async"),c(2,"async"),c(3,"async"),A("latestFilterLoad",function(n){C(e);let o=s(11);return v(o.loadLatestFilter(n))})("keepOpenChanged",function(){C(e);let n=s(11);return v(n.setKeepOpenChanged())})("filterClick",function(n){C(e);let o=s(11);return v(o.filterItems(n))})("closed",function(){C(e);let n=s(11);return v(n.toggleFilter())})("resetFilter",function(){C(e);let n=s(11);return v(n.resetFilter())}),u(4,tc,7,9,"ng-container",5),c(5,"async"),u(6,ac,8,17,"ng-container",5),c(7,"async"),u(8,sc,8,17,"ng-container",5),c(9,"async"),u(10,cc,8,17,"ng-container",5),c(11,"async"),g(12,"neptun-form-input",16),l()}if(t&2){let e,i=s().ngIf,n=s(9).$implicit,o=s();m("previousFilter",d(1,10,o.previousFilters$))("defaultInputKeys",$(24,ql))("keepOpen",d(2,12,o.keepFilterOpen$))("isLoading",d(3,14,o.isFiltering$)===!0),a(4),m("ngIf",d(5,16,o.terms$)),a(2),m("ngIf",(e=d(7,18,o.examSubjects$))!==null&&e!==void 0?e:be(26,Vl,$(25,Da))),a(2),m("ngIf",d(9,20,o.examTypes$)),a(2),m("ngIf",d(11,22,o.examPrerequisiteTypes$)),a(2),m("ngModel",i.tutorName)("label",n("finalExams.examLecturer"))}}function dc(t,r){if(t&1&&(E(0),u(1,pc,13,28,"neptun-filter-v2",14),c(2,"async"),S()),t&2){let e=s(10);a(),m("ngIf",d(2,1,e.isFilterOpen$))}}function uc(t,r){if(t&1&&Be(0,12),t&2){s(9);let e=Y(4);m("ngTemplateOutlet",e)}}function _c(t,r){if(t&1&&(p(0,"div"),g(1,"neptun-secondary-title",31),p(2,"div",10),g(3,"neptun-data-table",32),c(4,"async"),l()()),t&2){let e=r.$implicit,i=s(4).ngIf,n=s(8);a(),m("title",e.subjectName)("description",e.subjectCode),a(2),m("dataSource",e.result)("columns",i.data)("isFilterOpen",d(4,6,n.isFilterOpen$))("backToTopEnabled",!1)}}function xc(t,r){if(t&1&&(E(0),u(1,_c,5,8,"div",30),S()),t&2){let e=s(8).ngIf;a(),m("ngForOf",e.data)}}function gc(t,r){if(t&1&&(E(0),u(1,xc,2,1,"ng-container",29),S()),t&2){let e=s(7).ngIf;s(2);let i=Y(8);a(),m("ngIf",e.data.length>0)("ngIfElse",i)}}function fc(t,r){if(t&1&&(E(0),u(1,dc,3,3,"ng-container",5),c(2,"async"),u(3,uc,1,1,"ng-container",9),c(4,"isLoadingRequest"),u(5,gc,2,2,"ng-container",5),c(6,"isResultRequest"),S()),t&2){let e=s(6).ngIf,i=s(3);
1a(),m("ngIf",d(2,3,i.filterModel$)),a(2),m("ngIf",d(4,5,e)),a(2),m("ngIf",d(6,7,e))}}function hc(t,r){if(t&1&&(E(0),u(1,fc,7,9,"ng-container",5),c(2,"isResultRequest"),S()),t&2){let e=r.ngIf;a(),m("ngIf",d(2,1,e))}}function Ec(t,r){if(t&1&&(u(0,hc,3,3,"ng-container",5),c(1,"async")),t&2){let e=s(7);m("ngIf",d(1,1,e.customColumns$))}}function Sc(t,r){if(t&1&&(E(0),u(1,zl,3,0,"ng-container",5),c(2,"hasError"),u(3,Wl,1,1,"ng-container",9),c(4,"isLoadingRequest"),u(5,Xl,3,2,"ng-container",5),c(6,"isResultRequest"),u(7,Yl,1,1,"ng-container",9)(8,Ec,2,3,"ng-template",null,3,ae),S()),t&2){let e=s(2).ngIf,i=s(2).ngIf;a(),m("ngIf",d(2,4,e)),a(2),m("ngIf",d(4,6,e)),a(2),m("ngIf",d(6,8,e)),a(2),m("ngIf",i.value)}}function bc(t,r){if(t&1&&(E(0),u(1,Hl,3,0,"ng-container",5),c(2,"hasError"),u(3,Gl,1,1,"ng-container",9),c(4,"isLoadingRequest"),u(5,Sc,10,10,"ng-container",5),c(6,"isResultRequest"),c(7,"isLoadingRequest"),S()),t&2){let e=r.ngIf,i=s(2).ngIf;a(),m("ngIf",d(2,3,i)),a(2),m("ngIf",d(4,5,i)&&e.value),a(2),m("ngIf",d(6,7,i)||d(7,9,i))}}function Cc(t,r){if(t&1&&(E(0),u(1,bc,8,11,"ng-container",5),c(2,"async"),S()),t&2){let e=s(4);a(),m("ngIf",be(3,us,d(2,1,e.isCallAvailableExamsCount$)))}}function vc(t,r){if(t&1&&(E(0),u(1,Cc,3,5,"ng-container",5),c(2,"async"),S()),t&2){let e=s(3);a(),m("ngIf",d(2,1,e.availableExams$))}}function yc(t,r){if(t&1&&(E(0),p(1,"neptun-primary-title",6),u(2,Ul,5,13,"neptun-table-header-actions",7),l(),u(3,vc,3,3,"ng-container",5),c(4,"async"),S()),t&2){let e=r.ngIf,i=s().$implicit,n=s();a(),m("title",i("exams.takeExam")),a(),m("ngIf",e.value),a(),m("ngIf",d(4,3,n.subjectsWithExams$))}}function Ic(t,r){t&1&&(p(0,"div",33),g(1,"neptun-data-table-placeholder",34),l()),t&2&&(a(),m("loading",!0))}function Tc(t,r){if(t&1&&(p(0,"div",35),g(1,"neptun-data-missing-placeholder",36),c(2,"assetUrl"),l()),t&2){let e=s().$implicit;a(),m("title",e("exams.currentlyNoApplyAvailable"))("subTitle",e("exams.noExamPeriodConclusion"))("imageUrl",d(2,5,"assets/images/no-data/exams_placeholder.svg"))("buttonText",e("exams.backToOverview"))("buttonRouterLink","/exams/overview")}}function Fc(t,r){if(t&1&&(p(0,"div",37),g(1,"neptun-data-missing-placeholder",36),c(2,"assetUrl"),l()),t&2){let e=s().$implicit;a(),m("title",e("exams.noExams"))("subTitle",e("exams.noExamPeriodConclusion"))("imageUrl",d(2,5,"assets/images/no-data/empty-room-request.svg"))("buttonText",e("exams.backToOverview"))("buttonRouterLink","/exams/overview")}}function Rc(t,r){if(t&1&&(E(0),u(1,yc,5,5,"ng-container",5),c(2,"async"),u(3,Ic,2,1,"ng-template",null,0,ae)(5,Tc,3,7,"ng-template",null,1,ae)(7,Fc,3,7,"ng-template",null,2,ae),S()),t&2){let e=s();a(),m("ngIf",be(3,us,d(2,1,e.isTableVisible$)))}}var _s=(()=>{class t extends Ke{constructor(e,i,n){super(i),this.store=e,this.examRegistrationStore=i,this.router=n,this.exportTitle="menu.exams.title",this.availableExams$=this.examRegistrationStore.availableExams$,this.isCallAvailableExamsCount$=this.examRegistrationStore.isCallAvailableExamsCount$,this.isTableVisible$=this.examRegistrationStore.isTableVisible$,this.subjectsWithExams$=ye([this.entities$,this.examRegistrationStore.examOperation$,this.availableExams$,this.isCallAvailableExamsCount$,this.isTableVisible$]).pipe(T(([o,x,h,D,B])=>ne(o)?(o.data.length===0&&D&&ar(h)&&this.examRegistrationStore.getAvailableExamsCount(),D&&this.examRegistrationStore.updateIsCallAvailableExamsCount(!1),!B&&(o.data.length>0||ne(h)&&h.data.examsCount>0)&&this.examRegistrationStore.updateIsTableVisible(!0),Ie(o.data.map(te=>({subjectName:te.subjectName,subjectCode:te.subjectCode,result:te.examList.map(w=>this.convertToTableRow(w,te.subjectName,x))})),o.isPagingLoading??!1)):o)),this.examTypes$=this.examRegistrationStore.examTypes$,this.examPrerequisiteTypes$=this.examRegistrationStore.examPrerequisiteTypes$,this.terms$=this.examRegistrationStore.terms$,this.examSubjects$=this.examRegistrationStore.examSubjects$,this.exportNestedData={nestedArrayDataKey:"examList",nestedArrayTitleKey:"subjectName"}}initialize(){ne(this.listState.entities)?this.examRegistrationStore.updateState(I(b({},this.listState),{isFilterOpen:this.listState.keepFilterOpen})):(this.examRegistrationStore.getColumns(),this.examRegistrationStore.loadOrderBy(),this.examRegistrationStore.getPreviousFilters(),this.examRegistrationStore.getTerms(),this.isFilterOpen$.pipe(le(Boolean),F(()=>{this.examRegistrationStore.getExamSubjects(),this.examRegistrationStore.getExamTypes(),this.examRegistrationStore.getExamPrerequisiteTypes()}),Li(e=>!e)).subscribe(),this.examRegistrationStore.isServerOrderLoaded$.pipe(le(Boolean),W(1),F(()=>this.fetchItemsFromServer())).subscribe())}fetchItemsFromServer(){this.examRegistrationStore.fetchItemsFromServer(I(b({},this.listState.contracts.filterModel),{firstRow:0,lastRow:this.examRegistrationStore.defaultPagingNumber}))}loadModuleState(){return this.store.selectSnapshot(ai.getExamRegistrationState)}resetModuleState(){this.store.dispatch(new ht.ResetExamRegistrationState)}ngOnInit(){super.ngOnInit(),this.customColumns$=ye([this.displayedColumns$,this.entities$]).pipe(ct(),Et(this.destroy$),T(([e,i])=>{if(!ne(e)||!ne(i))return e;let n=[...e.data];if(i.data.some(o=>o.examList.some(x=>!!x.waitingStrength))){let o=e.data.findIndex(x=>x.key==="counts");o>-1&&n.splice(o,1,{disableSort:!0,text:"subjects.personWaitLimit",ke
1y:"counts",type:"counts",counts:["strength","waitingStrength","maxStrength"]})}return Ie(n)}))}setSelectedTermId(e){this.examRegistrationStore.updateSelectedTerm(e),this.examRegistrationStore.resetSubjectFilter(e??"")}resetFilter(){this.examRegistrationStore.resetFilter()}conditionalNavigateToDetails(e,i,n){Ae(n)||(this.examRegistrationStore.saveListState(),this.router.navigate(["exams","overview","registration",e.examId],{queryParamsHandling:"merge",queryParams:{courseExamId:e.courseExamId,subjectName:i,impositionFromType:Jt.ExamRegistration}}))}convertToTableRow(e,i,n){let o=()=>this.conditionalNavigateToDetails(e,i,n),x={controllerName:"ExamRegistration",actionName:"GetExamRegistrationDetail"},h={};return e.examSignInId?h.takeDropExam={text:"button.withdrawal",color:G.Error,callback:()=>this.handleDropExam(e),permission:{controllerName:"ExamRegistration",actionName:"UnSubscribe"},isLoading$:Ee(Ae(n)&&n.loadingContext?.examId===e.examId&&n.loadingContext.courseOrSignInId===e.examSignInId),disabled:Ae(n)}:this.examNotStartedYet(e)&&(h.takeDropExam={text:"button.admission",color:G.Primary,callback:()=>this.handleSignUpForExam(e),permission:{controllerName:"ExamRegistration",actionName:"SignUpForExam"},isLoading$:Ee(Ae(n)&&n.loadingContext?.examId===e.examId&&n.loadingContext.courseOrSignInId===e.courseId),disabled:Ae(n)}),h.details={color:G.Primary,text:"button.details",hasArrow:!0,callback:o,permission:x,disabled:Ae(n)},{data:e,detailsCallback:o,detailsPermission:x,actions:h}}examNotStartedYet(e){return new Date<new Date(e.fromDate)}handleSignUpForExam(e){this.examRegistrationStore.signUpForExam({examId:e.examId,courseId:e.courseId})}handleDropExam(e){this.examRegistrationStore.dropExam({examId:e.examId,examSignInId:e.examSignInId})}static{this.\u0275fac=function(i){return new(i||t)(f(X),f(Ra),f(re))}}static{this.\u0275cmp=N({type:t,selectors:[["neptun-exam-registration"]],features:[oe([Ra,Ce]),ve],decls:1,vars:0,consts:[["loadingPlaceholder",""],["noExamPeriod",""],["noExamsAvailable",""],["examTables",""],[4,"transloco"],[4,"ngIf"],["test-id","exam-registration-title",3,"title"],["class","neptun-wrapper",3,"actionsMenu","filterCount","isFilterOpen","isListDataLoading","hasFilter","itemAction","toggleFilter",4,"ngIf"],[1,"neptun-wrapper",3,"itemAction","toggleFilter","actionsMenu","filterCount","isFilterOpen","isListDataLoading","hasFilter"],[3,"ngTemplateOutlet",4,"ngIf"],[1,"neptun-wrapper"],["test-id","subjects-with-exams-error"],[3,"ngTemplateOutlet"],["test-id","available-exams-error"],["class","neptun-wrapper-padding",3,"previousFilter","defaultInputKeys","keepOpen","isLoading","latestFilterLoad","keepOpenChanged","filterClick","closed","resetFilter",4,"ngIf"],[1,"neptun-wrapper-padding",3,"latestFilterLoad","keepOpenChanged","filterClick","closed","resetFilter","previousFilter","defaultInputKeys","keepOpen","isLoading"],["id","tutorName","name","tutorName",1,"filter-element",3,"ngModel","label"],["test-id","terms-error",3,"fieldName"],["test-id","terms-loading",1,"placeholder"],["id","termId","name","termId",1,"filter-element",3,"ngModelChange","label","ngModel","dataSource","required"],["id","subjectId","name","subjectId",3,"label","isAllItemsAnOption","ngModel","dataSource"],["test-id","exam-subjects-error",3,"fieldName"],["test-id","exam-subjects-loading",1,"placeholder"],["id","examTypeId","name","examTypeId",3,"label","isAllItemsAnOption","ngModel","dataSource"],["test-id","exam-types-error",3,"fieldName"],["test-id","exam-types-loading",1,"placeholder"],["id","examPrerequisiteType","name","examPrerequisiteType",3,"label","isAllItemsAnOption","ngModel","dataSource"],["test-id","exam-prerequisite-types-error",3,"fieldName"],["test-id","exam-prerequisite-types-loading",1,"placeholder"],[4,"ngIf","ngIfElse"],[4,"ngFor","ngForOf"],[3,"title","description"],["test-id","exam-subject-table",3,"dataSource","columns","isFilterOpen","backToTopEnabled"],["test-id","exam-registration-loading",1,"neptun-wrapper"],[3,"loading"],["test-id","no-exam-period",1,"neptun-wrapper","data-missing-placeholder"],[3,"title","subTitle","imageUrl","buttonText","buttonRouterLink"],["test-id","no-exams-available",1,"neptun-wrapper","data-missing-placeholder"]],template:function(i,n){i&1&&u(0,Rc,9,5,"ng-container",4)},dependencies:[z,Q,ue,at,Ye,qt,Tt,vi,It,fi,nt,tt,kn,it,Ft,xe,Vt,Ue,Ei,_t,H,et,Ze,We,ze],styles:[".exam-code[_ngcontent-%COMP%]{font-size:13px;color:#666;margin-top:8px}.mat-mdc-cell.row-applied[_ngcontent-%COMP%]{color:#00dea4;text-align:center;
1border-left:8px solid #00dea4}.mat-mdc-cell.row-applied[_ngcontent-%COMP%]   i[_ngcontent-%COMP%]{font-size:24px}.exams-placeholder[_ngcontent-%COMP%]{display:flex;justify-content:unset;align-items:unset;flex-direction:column;gap:20px;margin-top:32px}.exams-placeholder__title[_ngcontent-%COMP%]{width:50%;height:62px}.exams-placeholder__subtitle[_ngcontent-%COMP%]{width:30%;height:32px}.data-missing-placeholder[_ngcontent-%COMP%]{margin-top:32px}.display-none[_ngcontent-%COMP%]{display:none}"],changeDetection:0})}}return t})();var xs="[ExamRemaining]",gs={SetExamRemainingState:`${xs} Set submitted request state`,ResetExamRemainingState:`${xs} Reset to be completed request state`},Qt;(function(t){class r{static{this.type=gs.SetExamRemainingState}constructor(n){this.examRemaining=n}}t.SetExamRemainingState=r;class e{static{this.type=gs.ResetExamRemainingState}}t.ResetExamRemainingState=e})(Qt||(Qt={}));var rn={entities:R,selectedEntities:[],contracts:{firstRow:0,lastRow:9999,filterModel:{subjectId:"",examType:"",examPrerequisiteType:"",tutorName:""}},keepFilterOpen:!1,isFilterOpen:!1,isMoreFilterOpen:!1,canReduceSortableColumns:!0,interfaceIdentity:me.ExamRemaining,defaultColumns:[{text:"global.time",key:"fromDate",dateStyle:"long",timeStyle:"short",type:"date",disableSort:!0},{text:"exams.type",key:"examType",disableSort:!0}
1,{text:"exams.headcountLimit",key:"counts",type:"counts",counts:["strength","maxStrength"],disableSort:!0},{text:"global.lecturer",key:"examTutors",disableSort:!0},{text:"exams.courseCode",key:"courseCode",disableSort:!0},{text:"global.minimumCount",key:"minStrength",disableSort:!0},{text:"exams.examRegistrationType",key:"examSigninType",disableSort:!0},{text:"exams.memberLimitCourseLimit",key:"memberLimitCourses",type:"counts",counts:["courseExamStrength","courseExamMaxStrength"],disableSort:!0},{text:"subjectsCourses.examCondition",key:"examPrerequisiteType",disableSort:!0},{text:"global.description",key:"description",disableSort:!0}],columns:R,displayedColumns:R,isMultiMobileActionSupported:!1,isNextVisible:!1,tableActions:[],tableFunctionTypes:[je.EditColumns,je.Export],previousFilters:R,terms:R,examSubjects:R,examTypes:R,examPrerequisiteTypes:R,examOperation:R,selectedTerm:null};var oi=class Pa{static getExamRemainingState(r){return r.examRemaining}setExamRemainingState(r,e){r.patchState({examRemaining:e.examRemaining})}resetExamRemainingState(r){r.patchState({examRemaining:rn})}static{this.\u0275fac=function(e){return new(e||Pa)}}static{this.\u0275prov=M({token:Pa,factory:Pa.\u0275fac})}};K([Se(Qt.SetExamRemainingState),P("design:type",Function),P("design:paramtypes",[Object,Qt.SetExamRemainingState]),P("design:returntype",void 0)],oi.prototype,"setExamRemainingState",null);K([Se(Qt.ResetExamRemainingState),P("design:type",Function),P("design:paramtypes",[Object]),P("design:returntype",void 0)],oi.prototype,"resetExamRemainingState",null);K([qe(),P("design:type",Function),P("design:paramtypes",[Object]),P("design:returntype",Object)],oi,"getExamRemainingState",null);oi=K([ke({name:"examRemaining",defaults:{examRemaining:rn}})],oi);var wa=(()=>{class t extends Qe{constructor(e,i){super(rn),this.examRegistrationService=e,this.globalErrorHandler=i,this.generalService=se(ji),this.examService=se(ot),this.dialogService=se(Ve),this.endPoint="ExamRemainingExams/GetRemainingRegisteredExamsList",this.defaultPagingNumber=rn.contracts.lastRow,this.store=se(X),this.examTypes$=this.select(n=>n.examTypes),this.selectedTerm$=this.select(n=>n.selectedTerm),this.examPrerequisiteTypes$=this.select(n=>n.examPrerequisiteTypes),this.examSubjects$=this.select(n=>n.examSubjects),this.examOperation$=this.select(n=>n.examOperation),this.updateExamOperation=this.updater((n,o)=>I(b({},n),{examOperation:o})),this.dropExam=this.effect(n=>n.pipe(F(({examId:o,examSignInId:x})=>{this.updateExamOperation(wi({examId:o,courseOrSignInId:x}))}),U(({examId:o,examSignInId:x})=>this.dialogService.openConfirmActionDialog(this.examRegistrationService.getDialogDropExamData()).afterClosed().pipe(le(Boolean),U(()=>this.examRegistrationService.unSubscribe(o,x).pipe(W(1),De(this.state$),F(([h,D])=>{this.store.dispatch(new Fe.AddSuccessPushNotification({title:"exams.unSubscribeSuccessful"})),this.fetchItemsFromServer(I(b({},D.contracts.filterModel),{firstRow:0,lastRow:this.defaultPagingNumber})),this.updateExamOperation(Ie(!0))}),pe(h=>(this.updateExamOperation(ge),this.globalErrorHandler.handleError(h),Me)))))))),this.saveListState=this.effect(n=>n.pipe(De(this.state$),F(([,o])=>{this.store.dispatch(new Qt.SetExamRemainingState(o))}))),this.getExamSubjects=this.getGetterFunction(this.examService.defaultTerm$.pipe(ct(),U(n=>this.examService.examSubjects("ExamRemainingExams/GetExamSubjects",n))),this.updater((n,o)=>I(b({},n),{examSubjects:o}))),this.getExamTypes=this.getGetterFunction(this.generalService.getDictionaryItem(Zt.ExamType),this.updater((n,o)=>I(b({},n),{examTypes:o}))),this.getExamPrerequisiteTypes=this.getGetterFunction(this.generalService.getDictionaryItem(Zt.VizsgaFeltetelTipusEnum),this.updater((n,o)=>I(b({},n),{examPrerequisiteTypes:o})))}resetFilter(){this.updateFilterModel({subjectId:"",examType:"",examPrerequisiteType:"",tutorName:""})}static{this.\u0275fac=function(i){return new(i||t)(k(ft),k(Ce))}}static{this.\u0275prov=M({token:t,factory:t.\u0275fac})}}return t})();var fs=()=>[];function Pc(t,r){if(t&1&&(E(0),g(1,"neptun-filter-field-error-indicator",9),S()),t&2){let e=s(4).$implicit;a(),m("fieldName",e("internship.subject"))}}function wc(t,r){t&1&&(E(0),g(1,"neptun-rectangle-placeholder",10),S())}function Ac(t,r){if(t&1&&(E(0),g(1,"neptun-form-select",11),S()),t&2){let e=s().ngIf,i=s(2).ngIf,n=s().$implicit;a(),m("label",n("internship.subject"))("ngModel",i.subjectId)("isAllItemsAnOption",!0)("dataSource",e.data)}}function Oc(t,r){if(t&1&&(E(0),u(1,Pc,2,1,"ng-container",5),c(2,"hasError"),u(3,wc,2,0,"ng-container",5),c(4,"isLoadingRequest"),u(5,Ac,2,4,"ng-container",5),c(6,"isResultRequest"),S()),t&2){let e=r.ngIf;a(),m("ngIf",d(2,3,e)),a(2),m("ngIf",d(4,5,e)),a(2),m("ngIf",d(6,7,e))}}function Mc(t,r){if(t&1&&(E(0),g(1,"neptun-filter-field-error-indicator",13),S()),t&2){let e=s(4).$implicit;a(),m("fieldName",e("exams.type"))}}function Lc(t,r){t&1&&(E(0),g(1,"neptun-rectangle-placeholder",14),S())}function jc(t,r){if(t&1&&(E(0),u(1,Mc,2,1,"ng-container",5),c(2,"hasError"),u(3,Lc,2,0,"ng-container",5),c(4,"isLoadingRequest"),g(5,"neptun-form-select",12),c(6,"isResultRequest"),c(7,"isResultRequest"),S()),t&2){let e=r.ngIf,i=s(2).ngIf,n=s().$implicit;a(),m("ngIf",d(2,8,e)),a(2),m("ngIf",d(4,10,e)),a(2),st(d(6,12,e)?"filter-element":"display-none"),m("label",n("exams.type"))("ngModel",i.examType)("isAllItemsAnOption",!0)("dataSource",d(7,14,e)?e.data:$(16,fs))}}function kc(t,r){if(t&1&&(E(0),g(1,"neptun-filter-field-error-indicator",16),S()),t&2){let e=s(4).$implicit;a(),m("fieldName",e("subjectsCourses.examCondition"))}}function Nc(t,r){t&1&&(E(0),g(1,"neptun-rectangle-placeholder",17),S())}function $c(t,r){if(t&1&&(E(0),u(1,kc,2,1,"ng-container",5),c(2,"hasError"),u(3,Nc,2,0,"ng-container",5),c(4,"isLoadingRequest"),g(5,"neptun-form-select",15),c(6,"isResultRequest"),c(7,"isResultRequest"),S()),t&2){let e=r.ngIf,i=s(2).ngIf,n=s().$implicit;a(),m("ngIf",d(2,8,e)),a(2),m("ngIf",d(4,10,e)),a(2),st(d(6,12,e)?"filter-element":"display-none"),m("label",n("subjectsCourses.examCondition"))("isAllItemsAnOption",!0)("ngModel",i.examPrerequisiteType)("dataSource",d(7,14,e)?e.data:$(16,fs))}}function Bc(t,r){if(t&1){let e=j();p(0,"neptun-filter-v2",7),c(1,"async"),c(2,"async"),c(3,"async"),A("keepOpenChanged",function(){C(e);let n=s(3);return v(n.setKeepOpenChanged())})("latestFilterLoad",function(n){C(e);let o=s(3);return v(o.loadLatestFilter(n))})("filterClick",function(n){C(e);let o=s(3);return v(o.filterItems(n))})("closed",function(){C(e);let n=s(3);return v(n.toggleFilter())})("resetFilter",function(){C(e);let n=s(3);return v(n.resetFilter())}),u(4,Oc,7,9,"ng-container",5),c(5,"async"),u(6,jc,8,17,"ng-container",5),c(7,"async"),u(8,$c,8,17,"ng-container",5),c(9,"async"),g(10,"neptun-form-input",8),l()}if(t&2){let e=s().ngIf,i=s().$implicit,n=s();m("previousFilter",d(1,8,n.previousFilters$))("keepOpen",d(2,10,n.keepFilterOpen$))("isLoading",d(3,12,n.isFiltering$)===!0),a(4),m("ngIf",d(5,14,n.examSubjects$)),a(2),m("ngIf",d(7,16,n.examTypes$)),a(2),m("ngIf",d(9,18,n.examPrerequisiteTypes$)),a(2),m("ngModel",e.tutorName)("label",i("finalExams.examLecturer"))}}function qc(t,r){if(t&1&&(E(0),u(1,Bc,11,20,"neptun-filter-v2",6),c(2,"async"),S()),t&2){let e=s(2);a(),m("ngIf",d(2,1,e.isFilterOpen$))}}function Vc(t,r){t&1&&(E(0),p(1,"div",19),g(2,"neptun-request-error-indicator",20),l(),S())}function Uc(t,r){if(t&1&&Be(0,21),t&2){s(2);let e=Y(12);m("ngTemplateOutlet",e)}}function Hc(t,r){if(t&1&&(p(0,"div",24),g(1,"neptun-secondary-title",25),p(2,"div",19),g(3,"neptun-data-table",26),l()()),t&2){let e=r.$implicit,i=s(3).ngIf;a(),m("title",e.subjectName)("description",e.subjectCode),a(2),m("dataSource",e.result)("columns",i.data)("backToTopEnabled",!1)}}function Gc(t,r){if(t&1&&(E(0),u(1,Hc,4,5,"div",23),S()),t&2){let e=s(4).ngIf;a(),m("ngForOf",e.data)}}function zc(t,r){if(t&1&&(E(0),u(1,Gc,2,1,"ng-container",22),S()),t&2){let e=s(3).ngIf;s();let i=Y(14);a(),m("ngIf",e.data.length)("ngIfElse",i)}}function Wc(t,r){if(t&1&&(E(0),u(1,zc,2,2,"ng-container",5),c(2,"isResultRequest"),S()),t&2){let e=r.ngIf;a(),m("ngIf",d(2,1,e))}}function Qc(t,r){if(t&1&&(E(0),u(1,Wc,3,3,"ng-container",5),c(2,"async"),S()),t&2){let e=s(3);a(),m("ngIf",d(2,1,e.customColumns$))}}function Kc(t,r){if(t&1&&(E(0),u(1,Vc,3,0,"ng-container",5),c(2,"hasError"),u(3,Uc,1,1,"ng-container",18),c(4,"isLoadingRequest"),u(5,Qc,3,3,"ng-container",5),c(6,"isResultRequest"),S()),t&2){let e=r.ngIf;a(),m("ngIf",d(2,3,e)),a(2),m("ngIf",d(4,5,e)),a(2),m("ngIf",d(6,7,e))}}function Xc(t,r){t&1&&(p(0,"div",19),g(1,"neptun-data-table-placeholder",27),l()),t&2&&(a(),m("loading",!0))}function Yc(t,r){if(t&1&&(g(0,"neptun-data-missing-placeholder",28),c(1,"assetUrl")),t&2){let e=s().$implicit;m("title",e("exams.noRegisteredExams"))("subTitle",e("exams.noRegisteredExamsDescription"))("imageUrl",d(1,5,"assets/images/no-data/no-taken-exams.svg"))("buttonText",e("exams.toTheExamRegistrationButton"))("buttonRouterLink","/exams/overview/registration")}}function Zc(t,r){if(t&1){let e=j();E(0),p(1,"neptun-primary-title",3)(2,"neptun-table-header-actions",4),c(3,"async"),c(4,"async"),c(5,"async"),c(6,"async"),A("toggleFilter",function(){C(e);let n=s();return v(n.toggleFilter())})("itemAction",function(n){C(e);let o=s();return v(o.itemAction(n))}),l()(),u(7,qc,3,3,"ng-container",5),c(8,"async"),u(9,Kc,7,9,"ng-container",5),c(10,"async"),u(11,Xc,2,1,"ng-template",null,0,ae)(13,Yc,2,7,"ng-template",null,1,ae),S()}if(t&2){let e=r.$implicit,i=s();a(),m("title",e("menu.exams.remainingRegisteredExams")),a(),m("hasFilter",!0)("filterCount",d(3,8,i.filterCount$))("isFilterOpen",d(4,10,i.isFilterOpen$))("isListDataLoading",d(5,12,i.isListLoading$)===!0)("actionsMenu",d(6,14,i.moreActionsMenuItems$)),a(5),m("ngIf",d(8,16,i.filterModel$)),a(2),m("ngIf",d(10,18,i.subjectsWithExams$))}}var hs=(()=>{class t extends Ke{constructor(e,i,n,o,x){super(e),this.examRemainingStore=e,this.store=i,this.examService=n,this.router=o,this.activatedRoute=x,this.exportTitle="menu.exams.remainingRegisteredExams",this.exportNestedData={nestedArrayDataKey:"remainingRegisteredExamList",nestedArrayTitleKey:"subjectName"},this.subjectsWithExams$=ye([this.entities$,this.examRemainingStore.examOperation$]).pipe(T(([h,D])=>ne(h)?Ie(h.data.map(B=>({subjectName:B.subjectName,subjectCode:B.subjectCode,result:B.remainingRegisteredExamList.map(te=>this.convertToTableRow(te,B.subjectName,D))})),h.isPagingLoading??!1):h)),this.examTypes$=this.examRemainingStore.examTypes$,this.examPrerequisiteTypes$=this.examRemainingStore.examPrerequisiteTypes$,this.examSubjects$=this.examRemainingStore.examSubjects$}
1initialize(){ne(this.listState.entities)?this.examRemainingStore.updateState(I(b({},this.listState),{isFilterOpen:this.listState.keepFilterOpen})):(this.examRemainingStore.getColumns(),this.examRemainingStore.loadOrderBy(),this.examRemainingStore.getPreviousFilters(),this.isFilterOpen$.pipe(le(Boolean),F(()=>{this.examRemainingStore.getExamSubjects(),this.examRemainingStore.getExamTypes(),this.examRemainingStore.getExamPrerequisiteTypes()}),Li(e=>!e)).subscribe(),this.examRemainingStore.isServerOrderLoaded$.pipe(le(Boolean),W(1),F(()=>this.fetchItemsFromServer())).subscribe())}fetchItemsFromServer(){this.examRemainingStore.fetchItemsFromServer(I(b({},this.listState.contracts.filterModel),{firstRow:0,lastRow:this.examRemainingStore.defaultPagingNumber}))}loadModuleState(){return this.store.selectSnapshot(oi.getExamRemainingState)}resetModuleState(){this.store.dispatch(new Qt.ResetExamRemainingState)}ngOnInit(){super.ngOnInit(),this.customColumns$=ye([this.displayedColumns$,this.entities$]).pipe(ct(),Et(this.destroy$),T(([e,i])=>{if(!ne(e)||!ne(i))return e;let n=[...e.data];if(i.data.some(o=>o.remainingRegisteredExamList.some(x=>!!x.waitingStrength))){let o=e.data.findIndex(x=>x.key==="counts");o>-1&&n.splice(o,1,I(b({},n[o]),{type:"counts",counts:["strength","waitingStrength","maxStrength"]}))}return Ie(n)}))}convertToTableRow(e,i,n){let o=()=>{this.router.navigate([e.examId],{relativeTo:this.activatedRoute,queryParamsHandling:"merge",queryParams:{courseExamId:e.courseExamId,subjectName:i,examSignInId:e.examSignInId,impositionFromType:Jt.ExamRemaining}})},x={controllerName:"ExamRegistration",actionName:"UnSubscribe"},h={controllerName:"ExamRegistration",actionName:"GetExamRegistrationDetail"},D={};return D.dropExamAction={text:"button.withdrawal",color:G.Error,callback:()=>this.examRemainingStore.dropExam({examId:e.examId,examSignInId:e.examSignInId}),permission:x,isLoading$:Ee(Ae(n)&&n.loadingContext?.examId===e.examId),disabled:Ae(n)},D.details={color:G.Primary,text:"button.details",hasArrow:!0,callback:o,permission:h},{data:e,detailsCallback:o,actions:D,detailsPermission:h}}static{this.\u0275fac=function(i){return new(i||t)(f(wa),f(X),f(ot),f(re),f(ie))}}static{this.\u0275cmp=N({type:t,selectors:[["neptun-exam-remaining"]],features:[oe([wa,Ce]),ve],decls:1,vars:0,consts:[["tableIsLoading",""],["noExamsData",""],[4,"transloco"],[3,"title"],[3,"toggleFilter","itemAction","hasFilter","filterCount","isFilterOpen","isListDataLoading","actionsMenu"],[4,"ngIf"],["class","neptun-wrapper-padding",3,"previousFilter","keepOpen","isLoading","keepOpenChanged","latestFilterLoad","filterClick","closed","resetFilter",4,"ngIf"],[1,"neptun-wrapper-padding",3,"keepOpenChanged","latestFilterLoad","filterClick","closed","resetFilter","previousFilter","keepOpen","isLoading"],["id","tutorName","name","tutorName",1,"filter-element",3,"ngModel","label"],["test-id","exam-subjects-error",3,"fieldName"],["test-id","exam-subjects-loading",1,"placeholder"],["id","subjectId","name","subjectId",1,"filter-element",3,"label","ngModel","isAllItemsAnOption","dataSource"],["id","examType","name","examType",3,"label","ngModel","isAllItemsAnOption","dataSource"],["test-id","exam-types-error",3,"fieldName"],["test-id","exam-types-loading",1,"placeholder"],["id","examPrerequisiteType","name","examPrerequisiteType",3,"label","isAllItemsAnOption","ngModel","dataSource"],["test-id","exam-prerequisite-types-error",3,"fieldName"],["test-id","exam-prerequisite-types-loading",1,"placeholder"],[3,"ngTemplateOutlet",4,"ngIf"],[1,"neptun-wrapper"],["test-id","subjects-with-exams-error"],[3,"ngTemplateOutlet"],[4,"ngIf","ngIfElse"],["class","subject",4,"ngFor","ngForOf"],[1,"subject"],[3,"title","description"],["test-id","exam-remaining-table",3,"dataSource","columns","backToTopEnabled"],["test-id","table-is-loading",3,"loading"],["test-id","no-exams-data",3,"title","subTitle","imageUrl","buttonText","buttonRouterLink"]],template:function(i,n){i&1&&u(0,Zc,15,20,"ng-container",2)},dependencies:[z,ue,at,Q,Tt,vi,It,fi,nt,tt,it,Ft,Ye,qt,xe,Vt,Ue,Ei,_t,H,et,Ze,We,ze],styles:[".display-none[_ngcontent-%COMP%]{display:none}"],changeDetection:0})}}return t})();var Aa=(()=>{class t extends ut{constructor(e){super({details:R}),this.dataFetcherService=e,this.details$=this.select(i=>i.details),this.addDetails=this.updater((i,n)=>I(b({},i),{details:n})),this.getDetails=this.effect(i=>i.pipe(F(()=>this.addDetails(Le)),U(n=>
1this.dataFetcherService.fetchItemFromServer("ExamResults/GetExamResultsDetail",{examId:n.examId,subjectId:n.subjectId}).pipe(F(o=>{this.addDetails({data:o})}),pe(o=>(this.addDetails(ge),lt(()=>o)))))))}static{this.\u0275fac=function(i){return new(i||t)(k(xi))}}static{this.\u0275prov=M({token:t,factory:t.\u0275fac})}}return t})();var Co=()=>({dateStyle:"long",timeStyle:"short"});function ep(t,r){t&1&&(E(0),p(1,"div",2),g(2,"neptun-request-error-indicator",3),l(),S())}function tp(t,r){t&1&&(E(0),p(1,"div",2),g(2,"neptun-details-with-cards-left-placeholder",4),l(),S())}function ip(t,r){if(t&1&&g(0,"neptun-navigation-button",16),t&2){let e=s(5);m("link",e.history)("permissionRequired",e.navigateToHistoryPermisision)}}function np(t,r){if(t&1&&(g(0,"neptun-rating-card",12),c(1,"rateSignIcon"),c(2,"rateSignColor"),p(3,"neptun-card",13)(4,"div",14)(5,"p"),_(6),l(),p(7,"h4"),_(8),l()(),p(9,"div",14)(10,"p"),_(11),l(),p(12,"h4"),_(13),c(14,"boolToString"),l()()(),u(15,ip,1,2,"neptun-navigation-button",15)),t&2){let e=s(2).ngIf,i=s().$implicit,n=s();m("icon",e.data.resultValue?null:d(1,10,e.data.resultIcon))("sign",e.data.resultValue?e.data.resultValue.toString():"")("secondaryText",e.data.typeName)("text",e.data.resultName)("color",d(2,12,e.data.resultColor)),a(6),O("",i("global.status"),":"),a(2),y(e.data.notEvaluable?i("exams.cannotBeAssessed"):e.data.missed?e.data.justifiedMissing?i("subjectsCourses.certifiedAbsence"):i("subjectsCourses.missed"):i("subjectsCourses.appeared")),a(3),O("",i("exams.examSignInCount"),":"),a(2),y(d(14,14,e.data.examSignInCount)),a(2),m("ngIf",n.canNavigateToDetails===!0)}}function ap(t,r){if(t&1&&(p(0,"div",17)(1,"dt"),_(2),l(),p(3,"dd",18),_(4),l()()),t&2){let e=s(3).ngIf,i=s().$implicit;a(2),y(i("exams.eExamResult")),a(2),O("",e.data.examResult2,"%")}}function op(t,r){if(t&1&&(p(0,"neptun-data-view")(1,"dl")(2,"div",17)(3,"dt"),_(4),l(),p(5,"dd",18),_(6),l()(),p(7,"div",17)(8,"dt"),_(9),l(),p(10,"dd",18),_(11),c(12,"translocoDate"),l()(),p(13,"div",17)(14,"dt"),_(15),l(),p(16,"dd",18),_(17),l()(),p(18,"div",17)(19,"dt"),_(20),l(),p(21,"dd",18),_(22),c(23,"hyphen"),c(24,"translocoDate"),l()(),p(25,"div",17)(26,"dt"),_(27),l(),p(28,"div",18),_(29),c(30,"hyphen"),c(31,"translocoDate"),l()(),p(32,"div",17)(33,"dt"),_(34),l(),p(35,"dd",18),_(36),l()(),p(37,"div",17)(38,"dt"),_(39),l(),p(40,"dd",18),_(41),l()(),p(42,"div",17)(43,"dt"),_(44),l(),p(45,"dd",18),_(46),l()(),p(47,"div",17)(48,"dt"),_(49),l(),p(50,"dd",18),_(51),l()(),p(52,"div",17)(53,"dt"),_(54),l(),p(55,"dd",18),_(56),l()(),p(57,"div",17)(58,"dt"),_(59),l(),p(60,"dd",18),_(61),l()(),u(62,ap,5,2,"div",19),l()()),t&2){let e=s(2).ngIf,i=s().$implicit;a(4),y(i("questionnaire.courseCode")),a(2),y(e.data.courseCode),a(3),y(i("exams.examDate")),a(2),y(_e(12,23,e.data.fromDate,$(36,Co))),a(4),y(i("exams.examType")),a(2),y(e.data.examType),a(3),y(i("exams.gradeEnteredDate")),a(2),y(_e(24,28,d(23,26,e.data.gradeEnteredDate),$(37,Co))),a(5),y(i("exams.entryDate")),a(2),y(_e(31,33,d(30,31,e.data.valueDate),$(38,Co))),a(5),y(i("exams.entryType")),a(2),y(e.data.typeName),a(3),y(i("global.semester")),a(2),y(e.data.term),a(3),y(i("tasks.subResult")),a(2),y(e.data.partialResult),a(3),y(i("consultations.lecturers")),a(2),y(e.data.examTutorName),a(3),y(i("exams.gradeSubmitter")),a(2),y(e.data.secretaryName),a(3),y(i("publication.comment")),a(2),y(e.data.description),a(),m("ngIf",e.data.isEexam)}}function rp(t,r){if(t&1&&(E(0),g(1,"neptun-primary-title",5),p(2,"div",6)(3,"div",7),_(4),l(),p(5,"div",8)(6,"neptun-basic-layout",9),u(7,np,16,16,"ng-template",10)(8,op,63,39,"ng-template",11),l()()(),S()),t&2){let e=s().ngIf;a(),m("title",e.data.subjectName),a(3),y(e.data.subjectCode),a(2),m("reverse",!0)}}function sp(t,r){if(t&1&&(E(0),u(1,ep,3,0,"ng-container",1),c(2,"hasError"),u(3,tp,3,0,"ng-container",1),c(4,"isLoadingRequest"),u(5,rp,9,3,"ng-container",1),c(6,"isResultRequest"),S()),t&2){let e=r.ngIf;a(),m("ngIf",d(2,3,e)),a(2),m("ngIf",d(4,5,e)),a(2),m("ngIf",d(6,7,e))}}function mp(t,r){if(t&1&&(E(0),u(1,sp,7,9,"ng-container",1),c(2,"async"),S()),t&2){let e=s();a(),m("ngIf",d(2,1,e.details$))}}var vo=(()=>{class t{constructor(e,i,n,o){this.router=e,this.activatedRoute=i,this.transloco=n,this.examResultDetailsStore=o,this.examId=this.activatedRoute.snapshot.params.id,this.subjectId=this.activatedRoute.snapshot.queryParams.subjectId,this.canNavigateToDetail
1s=!this.router.url.includes("result-history"),this.navigateToHistoryPermisision={controllerName:"ExamResults",actionName:"GetExamResultsHistoryList"},this.details$=this.examResultDetailsStore.details$.pipe(F(x=>{ne(x)&&(this.history={text:this.transloco.translate("exams.previousExams"),subTitle:this.transloco.translate("exams.previousExamResults"),badgeData:x.data.historyCount,icon:ee.TimeHistory,callback:()=>{this.router.navigate(["result-history",x.data.subjectCode],{queryParamsHandling:"merge",relativeTo:this.activatedRoute})}})}))}ngOnInit(){this.examResultDetailsStore.getDetails({examId:this.examId,subjectId:this.subjectId})}static{this.\u0275fac=function(i){return new(i||t)(f(re),f(ie),f(Z),f(Aa))}}static{this.\u0275cmp=N({type:t,selectors:[["neptun-exam-result-details"]],features:[oe([Aa])],decls:1,vars:0,consts:[[4,"transloco"],[4,"ngIf"],[1,"neptun-wrapper"],["test-id","error"],["test-id","loading"],[3,"title"],["test-id","details",1,"neptun-wrapper"],[1,"exam-result-code"],[1,"exam-result-details"],[3,"reverse"],["neptunBasicLayoutLeftContent",""],["neptunBasicLayoutRightContent",""],[3,"icon","sign","secondaryText","text","color"],[1,"status-card"],[1,"status-content"],[3,"link","permissionRequired",4,"ngIf"],[3,"link","permissionRequired"],["neptunDataViewItem","",1,"exam-result-item"],[1,"exam-result-item__text"],["neptunDataViewItem","","class","exam-result-item",4,"ngIf"]],template:function(i,n){i&1&&u(0,mp,3,3,"ng-container",0)},dependencies:[z,Q,Ye,Yi,ue,At,Pt,Ti,Xe,Vi,Ne,wt,xt,gt,Ji,en,H,Ge,Re,Bn,Ze,We,ze],styles:[".exam-result-details[_ngcontent-%COMP%]{margin-top:32px}.rating-element__text[_ngcontent-%COMP%]{margin-left:10px}.exam-result-code[_ngcontent-%COMP%]{font-weight:800}.result-card[_ngcontent-%COMP%]{padding:32px;display:flex;justify-content:center;align-items:center}.status-card[_ngcontent-%COMP%]{display:flex;flex-direction:column;justify-content:center;padding:24px;gap:24px}@media screen and (max-width:768px){.exam-result-code[_ngcontent-%COMP%]{padding:0 20px}neptun-data-view[_ngcontent-%COMP%]{padding:0 20px}.exam-result-item[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:0}.exam-result-item__text[_ngcontent-%COMP%]{margin-top:8px}}"],changeDetection:0})}}return t})();var Oa=(()=>{class t extends ut{constructor(e){super({examResultsHistoryList:R}),this.dataFetcherService=e,this.examResultsHistoryList$=this.select(i=>i.examResultsHistoryList),this.addExamResultsHistoryList=this.updater((i,n)=>I(b({},i),{examResultsHistoryList:n})),this.getExamResultsHistoryList=this.effect(i=>i.pipe(F(()=>this.addExamResultsHistoryList(Le)),U(n=>this.dataFetcherService.fetchItemFromServer("ExamResults/GetExamResultsHistoryList",{subjectCode:n}).pipe(F(o=>{this.addExamResultsHistoryList({data:o})}),pe(o=>(this.addExamResultsHistoryList(ge),lt(()=>o)))))))}static{this.\u0275fac=function(i){return new(i||t)(k(xi))}}static{this.\u0275prov=M({token:t,factory:t.\u0275fac})}}return t})();var Es=()=>({dateStyle:"long"});function cp(t,r){t&1&&(E(0),p(1,"div",2),g(2,"neptun-request-error-indicator",3),l(),S())}function pp(t,r){t&1&&(E(0),p(1,"div",2),g(2,"neptun-result-card-placeholder",4),l(),S()),t&2&&(a(2),m("loading",!0))}function dp(t,r){if(t&1){let e=j();
1p(0,"neptun-result-card",9),c(1,"rateSignIcon"),c(2,"rateSignColor"),c(3,"translocoDate"),c(4,"translocoDate"),A("buttonClicked",function(){let n=C(e).$implicit,o=s(4);return v(o.navigate(n))}),l()}if(t&2){let e,i=r.$implicit,n=r.index,o=s(3).$implicit,x=s();m("icon",d(1,12,i.resultIcon))("iconText",(e=i.resultValue==null?null:i.resultValue.toString())!==null&&e!==void 0?e:"")("iconDescription",i.resultName)("iconColor",d(2,14,i.resultColor))("primary",i.subjectName)("secondary",i.examTutors)("tertiary",i.examType)("quarterly",o("exams.examTime")+": "+_e(3,16,i.fromDate,$(22,Es)))("quinary",o("exams.gradeEntry")+": "+_e(4,19,i.gradeEnteredDate,$(23,Es)))("buttonText",o("button.details"))("permission",x.navigateToDetailsPermission)("cardIndex",n.toString())}}function up(t,r){if(t&1&&(E(0),g(1,"neptun-primary-title",5),p(2,"div",6)(3,"div",7),u(4,dp,5,24,"neptun-result-card",8),l()(),S()),t&2){let e=s().ngIf,i=s().$implicit;a(),m("title",i("exams.previousExams")),a(3),m("ngForOf",e.data)("ngForTrackByProperty","examId")}}function _p(t,r){if(t&1&&(E(0),u(1,cp,3,0,"ng-container",1),c(2,"hasError"),u(3,pp,3,1,"ng-container",1),c(4,"isLoadingRequest"),u(5,up,5,3,"ng-container",1),c(6,"isResultRequest"),S()),t&2){let e=r.ngIf;a(),m("ngIf",d(2,3,e)),a(2),m("ngIf",d(4,5,e)),a(2),m("ngIf",d(6,7,e))}}function xp(t,r){if(t&1&&(E(0),u(1,_p,7,9,"ng-container",1),c(2,"async"),S()),t&2){let e=s();a(),m("ngIf",d(2,1,e.examResultsHistoryList$))}}var Ss=(()=>{class t{constructor(e,i,n){this.examResultHistoryStore=e,this.activatedRoute=i,this.router=n,this.navigateToDetailsPermission={controllerName:"ExamResults",actionName:"GetExamResultsDetail"},this.examResultsHistoryList$=this.examResultHistoryStore.examResultsHistoryList$}ngOnInit(){let e=this.activatedRoute.snapshot.params.subjectCode;this.examResultHistoryStore.getExamResultsHistoryList(e)}navigate(e){this.router.navigate(["details"],{relativeTo:this.activatedRoute,queryParams:{resultName:e.subjectName,termId:e.termId,subjectId:this.activatedRoute.snapshot.queryParams.subjectId}})}static{this.\u0275fac=function(i){return new(i||t)(f(Oa),f(ie),f(re))}}static{this.\u0275cmp=N({type:t,selectors:[["neptun-exam-result-history"]],features:[oe([Oa])],decls:1,vars:0,consts:[[4,"transloco"],[4,"ngIf"],[1,"neptun-wrapper"],["test-id","error"],["test-id","loading",3,"loading"],[3,"title"],["test-id","details",1,"neptun-wrapper"],[1,"rating-list"],[3,"icon","iconText","iconDescription","iconColor","primary","secondary","tertiary","quarterly","quinary","buttonText","permission","cardIndex","buttonClicked",4,"ngFor","ngForOf","ngForTrackByProperty"],[3,"buttonClicked","icon","iconText","iconDescription","iconColor","primary","secondary","tertiary","quarterly","quinary","buttonText","permission","cardIndex"]],template:function(i,n){i&1&&u(0,xp,3,3,"ng-container",0)},dependencies:[z,Q,Ye,na,ue,xe,ir,Zi,Ji,en,H,Ge,Ze,We,ze],styles:[".rating-list[_ngcontent-%COMP%]{margin-top:16px;display:flex;gap:20px;flex-wrap:wrap}.rating-list__bottom[_ngcontent-%COMP%]{width:100%;display:flex;align-items:center}"],changeDetection:0})}}return t})();var bs="[ExamResults]",Cs={SetExamResultsState:`${bs} Set exam results state`,ResetExamResultsState:`${bs} Reset exam results state`},Kt;(function(t){class r{static{this.type=Cs.SetExamResultsState}constructor(n){this.examResults=n}}t.SetExamResultsState=r;
1class e{static{this.type=Cs.ResetExamResultsState}}t.ResetExamResultsState=e})(Kt||(Kt={}));var sn={entities:R,selectedEntities:[],contracts:{firstRow:0,lastRow:9999,filterModel:{termId:null,subjectName:"",subjectCode:""}},defaultOrderBy:{sortablePropertyName:"fromDate",sort:"desc"},keepFilterOpen:!1,isFilterOpen:!1,isMoreFilterOpen:!1,canReduceSortableColumns:!0,interfaceIdentity:me.ExamResults,defaultColumns:[{key:"subjectName",text:"subjects.subjectName"},{key:"fromDate",text:"exams.examDate"}],columns:R,displayedColumns:R,isMultiMobileActionSupported:!1,isNextVisible:!1,tableActions:[],tableFunctionTypes:[je.Export],previousFilters:R,terms:R,selectedTerm:null};var ri=class Ma{static getExamResultsState(r){return r.examResults}setExamResultsState(r,e){r.patchState({examResults:e.examResults})}resetExamResultsState(r){r.patchState({examResults:sn})}static{this.\u0275fac=function(e){return new(e||Ma)}}static{this.\u0275prov=M({token:Ma,factory:Ma.\u0275fac})}};K([Se(Kt.SetExamResultsState),P("design:type",Function),P("design:paramtypes",[Object,Kt.SetExamResultsState]),P("design:returntype",void 0)],ri.prototype,"setExamResultsState",null);K([Se(Kt.ResetExamResultsState),P("design:type",Function),P("design:paramtypes",[Object]),P("design:returntype",void 0)],ri.prototype,"resetExamResultsState",null);K([qe(),P("design:type",Function),P("design:paramtypes",[Object]),P("design:returntype",Object)],ri,"getExamResultsState",null);ri=K([ke({name:"examResults",defaults:{examResults:sn}})],ri);var La=(()=>{class t extends Qe{constructor(e){super(sn),this.globalErrorHandler=e,this.examService=se(ot),this.endPoint="ExamResults/GetExamResultsList",this.defaultPagingNumber=sn.contracts.lastRow,this.store=se(X),this.terms$=this.select(i=>i.terms),this.selectedTerm$=this.select(i=>i.selectedTerm),this.saveListState=this.effect(i=>i.pipe(De(this.state$),F(([,n])=>{this.store.dispatch(new Kt.SetExamResultsState(n))}))),this.getTerms=this.getGetterFunction(this.examService.resultTerms$,this.updater((i,n)=>I(b({},i),{terms:n}))),this.updateSelectedTerm=this.updater((i,n)=>(this.updateFilterModel(I(b({},i.contracts.filterModel),{termId:n||""})),I(b({},i),{selectedTerm:n})))}resetFilter(){this.updateFilterModel({termId:"",subjectName:"",subjectCode:""})}static{this.\u0275fac=function(i){return new(i||t)(k(Ce))}}static{this.\u0275prov=M({token:t,factory:t.\u0275fac})}}return t})();var fp=()=>[],hp=()=>["termId"],Ep=t=>({entities:t}),ja=()=>({dateStyle:"long"}),Sp=t=>({count:t});function bp(t,r){if(t&1){let e=j();E(0),p(1,"neptun-table-header-actions",8),c(2,"async"),c(3,"async"),c(4,"async"),c(5,"async"),c(6,"isResultRequest"),A("toggleFilter",function(){C(e);let n=s(2);return v(n.toggleFilter())})("orderBy",function(n){C(e);let o=s(2);return v(o.sortItems(n))})("itemAction",function(n){C(e);let o=s(2);return v(o.itemAction(n))}),l(),S()}if(t&2){let e=r.ngIf,i=s(2);a(),m("filterCount",d(2,6,i.filterCount$))("isFilterOpen",d(3,8,i.isFilterOpen$))("isListDataLoading",d(4,10,i.isListLoading$)===!0)("hasFilter",!0)("actionsMenu",d(5,12,i.moreActionsMenuItems$))("orderItems",d(6,14,e)?e.data:$(16,fp))}}function Cp(t,r){if(t&1&&(E(0),g(1,"neptun-filter-field-error-indicator",13),S()),t&2){let e=s(4).$implicit;a(),m("fieldName",e("global.semester"))}}function vp(t,r){t&1&&(E(0),g(1,"neptun-rectangle-placeholder",14),S())}function yp(t,r){if(t&1&&(E(0),g(1,"neptun-form-select",15),S()),t&2){let e=s().ngIf,i=s(2).ngIf,n=s().$implicit;a(),m("label",n("global.semester"))("ngModel",i.termId)("dataSource",e.data)("isAllItemsAnOption",!0)}}function Ip(t,r){if(t&1&&(E(0),u(1,Cp,2,1,"ng-container",5),c(2,"hasError"),u(3,vp,2,0,"ng-container",5),c(4,"isLoadingRequest"),u(5,yp,2,4,"ng-container",5),c(6,"isResultRequest"),S()),t&2){let e=r.ngIf;a(),m("ngIf",d(2,3,e)),a(2),m("ngIf",d(4,5,e)),a(2),m("ngIf",d(6,7,e))}}function Tp(t,r){if(t&1){let e=j();p(0,"neptun-filter-v2",10),c(1,"async"),c(2,"async"),c(3,"async"),A("keepOpenChanged",function(){C(e);let n=s(3);return v(n.setKeepOpenChanged())})("latestFilterLoad",function(n){C(e);let o=s(3);return v(o.loadLatestFilter(n))})("filterClick",function(n){C(e);let o=s(3);return v(o.filterItems(n))})("closed",function(){C(e);let n=s(3);return v(n.toggleFilter())})("resetFilter",function(){C(e);let n=s(3);return v(n.resetFilter())}),u(4,Ip,7,9,"ng-container",5),c(5,"async"),g(6,"neptun-form-input",11)(7,"neptun-form-input",12),l()}if(t&2){let e=s().ngIf,i=s().$implicit,n=s();m("previousFilter",d(1,9,n.previousFilters$))("keepOpen",d(2,11,n.keepFilterOpen$))("defaultInputKeys",$(17,hp))("isLoading",d(3,13,n.isFiltering$)===!0),a(4),m("ngIf",d(5,15,n.terms$)),a(2),m("label",i("tasks.subjectName"))("ngModel",e.subjectName),a(),m("label",i("exams.subjectCode"))("ngModel",e.subjectCode)}}function Fp(t,r){if(t&1&&(E(0),u(1,Tp,8,18,"neptun-filter-v2",9),c(2,"async"),S()),t&2){let e=s(2);a(),m("ngIf",d(2,1,e.isFilterOpen$))}}function Rp(t,r){t&1&&(E(0),g(1,"neptun-request-error-indicator",16),S())}function Dp(t,r){if(t&1){let e=j();
1p(0,"neptun-result-card",27),c(1,"rateSignIcon"),c(2,"rateSignColor"),c(3,"translocoDate"),c(4,"hyphen"),c(5,"translocoDate"),c(6,"hyphen"),A("buttonClicked",function(){let n=C(e).$implicit,o=s(8);return v(o.navigate(n.data))}),l()}if(t&2){let e=r.$implicit,i=r.index,n=s().index,o=s(6).$implicit,x=s();m("icon",e.data.resultValue?null:d(1,13,e.data.resultIcon))("iconText",e.data.resultValue?e.data.resultValue.toString():"")("iconTitle",e.data.resultName)("iconDescription",e.data.typeName||e.data.resultInfo)("iconColor",d(2,15,e.data.resultColor))("primary",e.data.subjectName)("secondary",e.data.examTutors)("tertiary",e.data.examType)("quarterly",o("exams.examTime")+": "+d(4,20,_e(3,17,e.data.fromDate,$(27,ja))))("quinary",o("exams.gradeEntry")+": "+d(6,25,_e(5,22,e.data.gradeEnteredDate,$(28,ja))))("buttonText",o("button.details"))("permissionRequired",x.navigateToDetailsPermission)("cardIndex","0_"+n.toString()+"_"+i.toString())}}function Pp(t,r){if(t&1){let e=j();p(0,"neptun-result-card",29),c(1,"rateSignIcon"),c(2,"rateSignColor"),c(3,"translocoDate"),c(4,"hyphen"),c(5,"translocoDate"),c(6,"hyphen"),A("buttonClicked",function(){let n=C(e).$implicit,o=s(9);return v(o.navigate(n.data))}),l()}if(t&2){let e,i=r.$implicit,n=r.index,o=s(2).index,x=s(6).$implicit,h=s();m("icon",i.data.resultValue?null:d(1,13,i.data.resultIcon))("iconTitle",i.data.resultName)("iconText",(e=i==null||i.data==null||i.data.resultValue==null?null:i.data.resultValue.toString())!==null&&e!==void 0?e:"")("iconDescription",i.data.typeName||i.data.resultInfo)("iconColor",d(2,15,i.data.resultColor))("primary",i.data.subjectName)("secondary",i.data.examTutors)("tertiary",i.data.examType)("quarterly",x("exams.examTime")+": "+d(4,20,_e(3,17,i.data.fromDate,$(27,ja))))("quinary",x("exams.gradeEntry")+": "+d(6,25,_e(5,22,i.data.gradeEnteredDate,$(28,ja))))("buttonText",x("button.details"))("permissionRequired",h.navigateToDetailsPermission)("cardIndex","1_"+o.toString()+"_"+n.toString())}}function wp(t,r){if(t&1&&(E(0),u(1,Pp,7,29,"neptun-result-card",28),S()),t&2){let e=s().$implicit;a(),m("ngForOf",e.examResultsListOthers)}}function Ap(t,r){if(t&1){let e=j();p(0,"button",30),A("click",function(){C(e);let n=s().$implicit,o=s(7);return v(o.showOthers(n))}),_(1),l()}if(t&2){let e=s().$implicit,i=s(6).$implicit;a(),O(" ",i("exams.loadMoreCount",be(1,Sp,e.examResultsListOthers.length))," ")}}function Op(t,r){if(t&1&&(p(0,"div",18)(1,"div",19)(2,"h3",20),_(3),l(),p(4,"p"),_(5),l()(),p(6,"div",21),u(7,Dp,7,29,"neptun-result-card",22)(8,wp,2,1,"ng-container",5),p(9,"div",23),u(10,Ap,2,3,"button",24),p(11,"button",25),g(12,"i",26),l()()()()),t&2){let e=r.$implicit,i=s(6).$implicit;a(3),y(e.termName),a(2),y(i("exams.semesterResults")),a(2),m("ngForOf",e.examResultListFirstThree),a(),m("ngIf",e.showOthers),a(2),m("ngIf",!e.showOthers&&e.examResultsListOthers.length)}}function Mp(t,r){if(t&1&&(E(0),u(1,Op,13,5,"div",17),S()),t&2){let e=s(4).ngIf;a(),m("ngForOf",e.terms)}}function Lp(t,r){if(t&1&&(E(0),u(1,Mp,2,1,"ng-container",7),S()),t&2){let e=s(3).ngIf;s();let i=Y(10);a(),m("ngIf",e.hasExamResults)("ngIfElse",i)}}function jp(t,r){if(t&1&&(E(0),u(1,Rp,2,0,"ng-container",5),c(2,"hasError"),u(3,Lp,2,2,"ng-container",7),c(4,"isResultRequest"),S()),t&2){let e=r.ngIf;s(3);let i=Y(12);a(),m("ngIf",e.entities&&d(2,3,e.entities)),a(2),m("ngIf",e.entities&&d(4,5,e.entities))("ngIfElse",i)}}function kp(t,r){if(t&1&&(E(0),u(1,jp,5,7,"ng-container",5),c(2,"async"),S()),t&2){let e=s(3);a(),m("ngIf",be(3,Ep,d(2,1,e.entities$)))}}function Np(t,r){if(t&1&&(E(0),u(1,kp,3,5,"ng-container",7),c(2,"async"),S()),t&2){s();let e=Y(12),i=s();a(),m("ngIf",d(2,2,i.isListLoading$)===!1)("ngIfElse",e)}}function $p(t,r){if(t&1&&(g(0,"neptun-data-missing-placeholder",32),c(1,"assetUrl")),t&2){let e=s(2).$implicit;m("title",e("exams.noExamResults"))("subTitle",e("exams.noExamResultsCondition"))("imageUrl",d(1,5,"assets/images/no-data/exam-results-placeholder.svg"))("buttonText",e("exams.backToOverview"))("buttonRouterLink","/exams/overview")}}function Bp(t,r){t&1&&g(0,"neptun-result-card-placeholder",33),t&2&&m("loading",!1)}function qp(t,r){if(t&1&&(u(0,$p,2,7,"neptun-data-missing-placeholder",31),c(1,"async"),u(2,Bp,1,1,"ng-template",null,2,ae)),t&2){let e=Y(3),i=s(2);m("ngIf",d(1,2,i.filterCount$)===0)("ngIfElse",e)}}function Vp(t,r){if(t&1){let e=j();p(0,"neptun-result-card-placeholder",34),A("toggleFilter",function(){C(e);let n=s(2);return v(n.toggleFilter())}),l()}t&2&&m("loading",!0)}function Up(t,r){if(t&1&&(E(0),p(1,"neptun-primary-title",4),u(2,bp,7,17,"ng-container",5),c(3,"async"),l(),u(4,Fp,3,3,"ng-container",5),c(5,"async"),p(6,"div",6),u(7,Np,3,4,"ng-container",7),c(8,"async"),u(9,qp,4,4,"ng-template",null,0,ae)(11,Vp,1,1,"ng-template",null,1,ae),l(),S()),t&2){let e=r.$implicit,i=Y(12),n=s();a(),m("title",e("menu.exams.results")),a(),m("ngIf",d(3,5,n.orderByMenu$)),a(2),m("ngIf",d(5,7,n.filterModel$)),a(3),m("ngIf",d(8,9,n.vm$))("ngIfElse",i)}}var yo=0,vs=3,Hp=4,ys=(()=>{class t extends Ke{constructor(e,i,n,o,x,h,D,B){super(e),this.examResultsStore=e,this.store=i,this.router=n,this.route=o,this.examService=x,this.exportExcelService=h,this.transloco=D,this.dateLocalizationService=B,this.exportTitle="menu.exams.results",this.navigateToDetail
1sPermission={controllerName:"ExamResults",actionName:"GetExamResultsDetail"},this.terms$=this.examResultsStore.terms$,this.moreActionsMenuItems$=Ee(Bi.getTableFunctions(je.Export)),this.vm$=ye([this.entities$,this.terms$]).pipe(T(([te,w])=>{if(!ne(te)||!ne(w))return{terms:[],hasExamResults:!1};let q=Pr(te.data,w.data);return{terms:q.map(V=>I(b({},V),{termName:`${V.termName}${V.isActualTerm?` - ${this.transloco.translate("global.actual").toLowerCase()}`:""}`,examResultListFirstThree:V.examResultsList.slice(yo,vs).map(ce=>this.convertToTableRow(ce)),showOthers:V.examResultsList.length<Hp,examResultsListOthers:V.examResultsList.slice(vs).map(ce=>this.convertToTableRow(ce))})),hasExamResults:q.some(V=>V.examResultsList.length>yo)}}))}initialize(){ne(this.listState.entities)?this.examResultsStore.updateState(I(b({},this.listState),{isFilterOpen:this.listState.keepFilterOpen})):(this.examResultsStore.getColumns(),this.examResultsStore.loadOrderBy(),this.examResultsStore.getPreviousFilters(),this.examResultsStore.getTerms(),ye([this.examService.resultTerms$,this.route.queryParams]).pipe(W(ki.ONE)).subscribe(([e,i])=>{let n=!!i.showAllTerms,o=e.find(x=>x.isActualTerm)?.value;i.termId?this.examResultsStore.updateSelectedTerm(i.termId):!n&&o?this.examResultsStore.updateSelectedTerm(o):this.examResultsStore.updateSelectedTerm("")}),this.fetchItemsFromServer())}fetchItemsFromServer(){ye([this.examResultsStore.filterModel$,this.examResultsStore.isServerOrderLoaded$]).pipe(le(([e,i])=>e.termId!==null&&!!i),W(1),F(()=>this.examResultsStore.fetchItemsFromServer(I(b({},this.listState.contracts.filterModel),{firstRow:yo,lastRow:this.examResultsStore.defaultPagingNumber})))).subscribe()}loadModuleState(){return this.store.selectSnapshot(ri.getExamResultsState)}resetModuleState(){this.store.dispatch(new Kt.ResetExamResultsState)}navigate(e){this.examResultsStore.saveListState(),this.router.navigate([e.examId],{queryParamsHandling:"merge",relativeTo:this.route,queryParams:{resultName:e.subjectName,subjectId:e.subjectId,termId:this.listState.contracts.filterModel.termId}})}convertToTableRow(e){return{data:e,actions:{}}}itemAction(e){this.vm$.pipe(Et(this.destroy$),F(i=>{let n=Array.prototype.concat(...i.terms.map(x=>[...x.examResultsList.map(h=>I(b({},h),{formattedSignDate:this.dateLocalizationService.localizeDate(h.gradeEnteredDate,void 0,{dateStyle:"long",timeStyle:"short"}),formattedFromDate:this.dateLocalizationService.localizeDate(h.fromDate,void 0,{dateStyle:"long",timeStyle:"short"}),termName:x.termName}))])),o={title:this.transloco.translate("menu.exams.results"),data:n,headers:[{text:this.transloco.translate("subjects.subjectName"),key:"subjectName"},{text:this.transloco.translate("personal.term"),key:"termName"},{text:this.transloco.translate("exams.examiner"),key:"examTutors"},{text:this.transloco.translate("exams.examType2"),key:"examType"},{text:this.transloco.translate("exams.examDate"),key:"formattedFromDate"},{text:this.transloco.translate("exams.gradeEnteredDate2"),key:"formattedSignDate"},{text:this.transloco.translate("global.result"),key:"resultName"}]};this.exportExcelService.exportExcel(o)})).subscribe()}resetFilter(){this.examResultsStore.resetFilter()}showOthers(e){e.showOthers=!0}static{this.\u0275fac=function(i){return new(i||t)(f(La),f(X),f(re),f(ie),f(ot),f(tr),f(Z),f(fe))}}static{this.\u0275cmp=N({type:t,selectors:[["neptun-exam-results"]],features:[oe([La,Ce]),ve],decls:1,vars:0,consts:[["noExamsData",""],["loadingPlaceholder",""],["noDataAfterFilter",""],[4,"transloco"],[3,"title"],[4,"ngIf"],[1,"neptun-wrapper"],[4,"ngIf","ngIfElse"],[3,"toggleFilter","orderBy","itemAction","filterCount","isFilterOpen","isListDataLoading","hasFilter","actionsMenu","orderItems"],["class","neptun-wrapper-padding",3,"previousFilter","keepOpen","defaultInputKeys","isLoading","keepOpenChanged","latestFilterLoad","filterClick","closed","resetFilter",4,"ngIf"],[1,"neptun-wrapper-padding",3,"keepOpenChanged","latestFilterLoad","filterClick","closed","resetFilter","previousFilter","keepOpen","defaultInputKeys","isLoading"],["id","subjectName","name","subjectName",1,"filter-element",3,"label","ngModel"],["id","subjectCode","name","subjectCode",1,"filter-element",3,"label","ngModel"],["test-id","terms-error",3,"fieldName"],["test-id","terms-loading",1,"placeholder"],["id","termId","name","termId",1,"filter-element",3,"label","ngModel","dataSource","isAllItemsAnOption"],["test-id","error-indicator"],["class","term","test-id","term",4,"ngFor","ngForOf"],["test-id","term",1,"term"],[1,"term-header"],[1,"term-header__title"],[1,"rating-list"],["test-id","result-card",3,"icon","iconText","iconTitle","iconDescription","iconColor","primary","secondary","tertiary","quarterly","quinary","buttonText","permissionRequired","cardIndex","buttonClicked",4,"ngFor","ngForOf"],[1,"rating-list__bottom"],["neptun-button","","accent","stroked","class","rating-list__bottom__load-more",3,"click",4,"ngIf"],["neptun-button","","neptunScrollTop","","accent","icon","id","rating-list-scroll-to-top-btn",1,"rating-list__bottom__scroll-to-top"],[1,"icon","icon-arrow-top"],["test-id","result-card",3,"buttonClicked","icon","iconText","iconTitle","iconDescription","iconColor","primary","secondary","tertiary","quarterly","quinary","buttonText","permissionRequired","cardIndex"],["test-id","result-card",3,"icon","iconTitle","iconText","iconDescription","iconColor","primary","secondary","tertiary","quarterly","quinary","buttonText","permissionRequired","cardIndex","buttonClicked",4,"ngFor","ngForOf"],["test-id","result-card",3,"buttonClicked","icon","iconTitle","iconText","iconDescription","iconColor","primary","secondary","tertiary","quarterly","quinary","buttonText","permissionRequired","cardIndex"],["neptun-button","","accent","stroked",1,"rating-list__bottom__load-more",3,"click"],["test-id","no-data-placeholder",3,"title","subTitle","imageUrl","buttonText","buttonRouterLink",4,"ngIf","ngIfElse"],["test-id","no-data-placeholder",3,"title","subTitle","imageUrl","buttonText","buttonRouterLink"],["test-id","result-card-placeholder",3,"loading"],["test-id","result-card-placeholder",3,"toggleFilter","loading"]],template:function(i,n){i&1&&u(0,Up,13,11,"ng-container",3)},dependencies:[z,ue,Q,at,Tt,vi,It,fi,nt,tt,it,Ft,Ye,xe,Zi,Ne,we,nr,_t,na,Ji,en,H,Ge,Re,et,Ze,We,ze],styles:[".term[_ng
1content-%COMP%]{margin-top:24px}.rating-list[_ngcontent-%COMP%]{margin-top:16px;display:flex;gap:20px;flex-wrap:wrap}.rating-list__bottom[_ngcontent-%COMP%]{width:100%;display:flex;align-items:center;flex-direction:column}.rating-list__bottom__load-more[_ngcontent-%COMP%]{align-self:flex-start}.rating-list__bottom__scroll-to-top[_ngcontent-%COMP%]{align-self:flex-end;box-sizing:border-box;padding:10px;width:44px;height:44px;border:1px solid #0943d9;box-shadow:0 5px 12px #0000001f;border-radius:80px}.rating-list__bottom__scroll-to-top[_ngcontent-%COMP%]   i[_ngcontent-%COMP%]{font-size:24px}#neptun-result-card-placeholder-wrapper[_ngcontent-%COMP%]{padding-top:24px}@media only screen and (max-width:767px){.term-header[_ngcontent-%COMP%]{margin-left:20px}.term-header__title[_ngcontent-%COMP%]{font-size:21px}.rating-list__bottom[_ngcontent-%COMP%]{margin-left:16px;margin-right:16px}}"],changeDetection:0})}}return t})();var fn={entities:R,selectedEntities:[],defaultOrderBy:{sortablePropertyName:"templateName",sort:"asc"},orderBy:R,contracts:{firstRow:0,lastRow:10,filterModel:{templateNameFilter:"",statusNameFilter:"",requestFormIdentifierFilter:""}},hiddenFilters:{courseExamId:"",subjectId:""},keepFilterOpen:!1,isFilterOpen:!1,isMoreFilterOpen:!1,canReduceSortableColumns:!0,interfaceIdentity:me.ExamRequestForm,defaultColumns:[{text:"requestForm.name",key:"templateName"},{text:"requestForm.submissionDate",key:"submissionDate",dateStyle:"long",timeStyle:"short",type:"date"},{text:"global.identifier",key:"requestFormIdentifier"}],columns:R,displayedColumns:R,isMultiMobileActionSupported:!1,isNextVisible:!1,tableActions:[],tableFunctionTypes:[],previousFilters:R};var Is="[ExamSubmittedRequests]",Ts={SetExamSubmittedRequestsState:`${Is} Set submitted request state`,ResetExamSubmittedRequestsState:`${Is} Reset to be completed request state`},si;(function(t){class r{static{this.type=Ts.SetExamSubmittedRequestsState}constructor(n){this.examSubmittedRequests=n}}t.SetExamSubmittedRequests=r;class e{static{this.type=Ts.ResetExamSubmittedRequestsState}}t.ResetExamSubmittedRequestsState=e})(si||(si={}));var Bt=class ka{static getExamSubmittedRequestsState(r){return r.examSubmittedRequests}setExamSubmittedRequestsState(r,e){r.patchState({examSubmittedRequests:e.examSubmittedRequests})}resetInvalidatedRequestFormState(r){r.patchState({examSubmittedRequests:fn})}static{this.\u0275fac=function(e){return new(e||ka)}}static{this.\u0275prov=M({token:ka,factory:ka.\u0275fac})}};K([Se(si.SetExamSubmittedRequests),P("design:type",Function),P("design:paramtypes",[Object,si.SetExamSubmittedRequests]),P("design:returntype",void 0)],Bt.prototype,"setExamSubmittedRequestsState",null);K([Se(si.ResetExamSubmittedRequestsState),P("design:type",Function),P("design:paramtypes",[Object]),P("design:returntype",void 0)],Bt.prototype,"resetInvalidatedRequestFormState",null);K([qe(),P("design:type",Function),P("design:paramtypes",[Object]),P("design:returntype",Object)],Bt,"getExamSubmittedRequestsState",null);Bt=K([ke({name:"examSubmittedRequests",defaults:{examSubmittedRequests:fn}})],Bt);var Fs=(()=>{class t extends _r{constructor(){super(fn),this.endPoint="Exam/GetSubmittedRequestForms",this.store=se(X),this.saveListState=this.effect(e=>e.pipe(De(this.state$),F(([,i])=>{this.store.dispatch(new si.SetExamSubmittedRequests(i))})))}loadModuleState(){return this.store.selectSnapshot(Bt.getExamSubmittedRequestsState)}resetModuleState(){this.store.dispatch(new si.ResetExamSubmittedRequestsState)}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275prov=M({token:t,factory:t.\u0275fac})}}return t})();var Rs=(()=>{class t{constructor(e){this.activatedRoute=e,this.submittedDetailsPermission={controllerName:"Exam",actionName:"GetSubmittedRequestFormDetails"},this.sentBackDetailsPermission={controllerName:"Exam",actionName:"GetSentBackToCorrectionRequestFormDetails"},this.hiddenFilters={courseExamId:this.activatedRoute.snapshot.queryParams.courseExamId,subjectId:this.activatedRoute.snapshot.queryParams.subjectId}}static{this.\u0275fac=function(i){return new(i||t)(f(ie))}}static{this.\u0275cmp=N({type:t,selectors:[["neptun-exam-submitted-requests"]],features:[oe([{provide:ur,useClass:Fs}
1])],decls:1,vars:3,consts:[[3,"hiddenFilters","submittedDetailsPermission","sentBackDetailsPermission"]],template:function(i,n){i&1&&g(0,"neptun-submitted-request",0),i&2&&m("hiddenFilters",n.hiddenFilters)("submittedDetailsPermission",n.submittedDetailsPermission)("sentBackDetailsPermission",n.sentBackDetailsPermission)},dependencies:[xr],encapsulation:2,changeDetection:0})}}return t})();var Ds="[ExamTakenList]",Ps={SetExamTakenListState:`${Ds} Set submitted request state`,ResetExamTakenListState:`${Ds} Reset to be completed request state`},Xt;(function(t){class r{static{this.type=Ps.SetExamTakenListState}constructor(n){this.examTakenList=n}}t.SetExamTakenListState=r;class e{static{this.type=Ps.ResetExamTakenListState}}t.ResetExamTakenListState=e})(Xt||(Xt={}));var mn={entities:R,selectedEntities:[],contracts:{firstRow:0,lastRow:9999,filterModel:{termId:"",subjectId:"",examTypeId:"",examPrerequisiteType:"",tutorName:""}},keepFilterOpen:!1,isFilterOpen:!1,isMoreFilterOpen:!1,canReduceSortableColumns:!0,interfaceIdentity:me.ExamTaken,defaultColumns:[{text:"global.time",key:"fromDate",dateStyle:"long",timeStyle:"short",type:"date",disableSort:!0},{text:"exams.type",key:"examType",disableSort:!0}
1,{text:"exams.headcountLimit",key:"counts",type:"counts",counts:["strength","maxStrength"],disableSort:!0},{text:"global.lecturer",key:"examTutors",disableSort:!0},{text:"exams.courseCode",key:"courseCode",disableSort:!0},{text:"global.minimumCount",key:"minStrength",disableSort:!0},{text:"exams.examRegistrationType",key:"examSigninType",disableSort:!0},{text:"exams.memberLimitCourseLimit",key:"memberLimitCourses",type:"counts",counts:["courseExamStrength","courseExamMaxStrength"],disableSort:!0},{text:"subjectsCourses.examCondition",key:"examPrerequisiteType",disableSort:!0},{text:"global.description",key:"description",disableSort:!0}],columns:R,displayedColumns:R,isMultiMobileActionSupported:!1,isNextVisible:!1,tableActions:[],tableFunctionTypes:[je.EditColumns,je.Export],previousFilters:R,terms:R,examSubjects:R,examTypes:R,examPrerequisiteTypes:R,examOperation:R,selectedTerm:null};var mi=class Na{static getExamTakenListState(r){return r.examTakenList}setExamTakenListState(r,e){r.patchState({examTakenList:e.examTakenList})}resetExamTakenListState(r){r.patchState({examTakenList:mn})}static{this.\u0275fac=function(e){return new(e||Na)}}static{this.\u0275prov=M({token:Na,factory:Na.\u0275fac})}};K([Se(Xt.SetExamTakenListState),P("design:type",Function),P("design:paramtypes",[Object,Xt.SetExamTakenListState]),P("design:returntype",void 0)],mi.prototype,"setExamTakenListState",null);K([Se(Xt.ResetExamTakenListState),P("design:type",Function),P("design:paramtypes",[Object]),P("design:returntype",void 0)],mi.prototype,"resetExamTakenListState",null);K([qe(),P("design:type",Function),P("design:paramtypes",[Object]),P("design:returntype",Object)],mi,"getExamTakenListState",null);mi=K([ke({name:"examTakenList",defaults:{examTakenList:mn}})],mi);var $a=(()=>{class t extends Qe{constructor(e,i){super(mn),this.examRegistrationService=e,this.globalErrorHandler=i,this.generalService=se(ji),this.examService=se(ot),this.dialogService=se(Ve),this.endPoint="ExamRegisteredExams/GetRegisteredExamsList",this.defaultPagingNumber=mn.contracts.lastRow,this.store=se(X),this.actualTerm={text:"",value:"",isActualTerm:!1},this.examTypes$=this.select(n=>n.examTypes),this.selectedTerm$=this.select(n=>n.selectedTerm),this.examPrerequisiteTypes$=this.select(n=>n.examPrerequisiteTypes),this.terms$=this.select(n=>n.terms),this.examSubjects$=this.select(n=>n.examSubjects),this.examOperation$=this.select(n=>n.examOperation),this.updateExamOperation=this.updater((n,o)=>I(b({},n),{examOperation:o})),this.updateSelectedTerm=this.updater((n,o)=>I(b({},n),{selectedTerm:o})),this.dropExam=this.effect(n=>n.pipe(F(({examId:o,examSignInId:x})=>{this.updateExamOperation(wi({examId:o,courseOrSignInId:x}))}),U(({examId:o,examSignInId:x})=>this.dialogService.openConfirmActionDialog(this.examRegistrationService.getDialogDropExamData()).afterClosed().pipe(le(Boolean),U(()=>this.examRegistrationService.unSubscribe(o,x).pipe(W(1),De(this.state$),F(([h,D])=>{this.store.dispatch(new Fe.AddSuccessPushNotification({title:"exams.unSubscribeSuccessful"})),this.fetchItemsFromServer(I(b({},D.contracts.filterModel),{firstRow:0,lastRow:this.defaultPagingNumber})),this.updateExamOperation(Ie(!0))}),pe(h=>(this.updateExamOperation(ge),this.globalErrorHandler.handleError(h),Me)))))))),this.saveListState=this.effect(n=>n.pipe(De(this.state$),F(([,o])=>{this.store.dispatch(new Xt.SetExamTakenListState(o))}))),this.getTerms=this.getGetterFunction(this.examService.terms$.pipe(W(1),le(n=>!!n.length),F(n=>{this.actualTerm=n.find(o=>o.isActualTerm)??n[0],this.updateSelectedTerm(this.actualTerm.value),this.resetFilter()})),this.updater((n,o)=>I(b({},n),{terms:o}))),this.getExamSubjects=this.getGetterFunction(this.selectedTerm$.pipe(ct(),U(n=>this.examService.examSubjects("ExamRegistration/GetExamSubjects",n))),this.updater((n,o)=>I(b({},n),{examSubjects:o}))),this.getExamTypes=this.getGetterFunction(this.generalService.getDictionaryItem(Zt.ExamType),this.updater((n,o)=>I(b({},n),{examTypes:o}))),this.getExamPrerequisiteTypes=this.getGetterFunction(this.generalService.getDictionaryItem(Zt.VizsgaFeltetelTipusEnum),this.updater((n,o)=>I(b({},n),{examPrerequisiteTypes:o})))}resetFilter(){this.updateFilterModel({termId:this.actualTerm.value,subjectId:"",examTypeId:"",examPrerequisiteType:"",tutorName:""})}static{this.\u0275fac=function(i){return new(i||t)(k(ft),k(Ce))}}static{this.\u0275prov=M({token:t,factory:t.\u0275fac})}}return t})();var zp=()=>["termId"],Ba=()=>[],Wp=t=>({data:t}),Qp=t=>({"exam-taken-list__table":t});function Kp(t,r){if(t&1&&(E(0),g(1,"neptun-filter-field-error-indicator",9),S()),t&2){let e=s(4).$implicit;a(),m("fieldName",e("global.semester"))}}function Xp(t,r){t&1&&(E(0),g(1,"neptun-rectangle-placeholder",10),S())}function Yp(t,r){if(t&1){let e=j();E(0),p(1,"neptun-form-select",11),A("ngModelChange",function(n){C(e);let o=s(5);return v(o.setSelectedTermId(n))}),l(),S()}if(t&2){let e=s().ngIf,i=s(2).ngIf,n=s().$implicit;a(),m("label",n("global.semester"))("ngModel",i.termId)("dataSource",e.data)("required",!0)}}function Zp(t,r){if(t&1&&(E(0),u(1,Kp,2,1,"ng-container",5),c(2,"hasError"),u(3,Xp,2,0,"ng-container",5),c(4,"isLoadingRequest"),u(5,Yp,2,4,"ng-container",5),c(6,"isResultRequest"),S()),t&2){let e=r.ngIf;a(),m("ngIf",d(2,3,e)),a(2),m("ngIf",d(4,5,e)),a(2),m("ngIf",d(6,7,e))}}function Jp(t,r){if(t&1&&(E(0),g(1,"neptun-filter-field-error-indicator",13),S()),t&2){let e=s(4).$implicit;a(),m("fieldName",e("internship.subject"))}}function ed(t,r){t&1&&(E(0),g(1,"neptun-rectangle-placeholder",14),S())}function td(t,r){if(t&1&&(E(0),u(1,Jp,2,1,"ng-container",5),c(2,"hasError"),u(3,ed,2,0,"ng-container",5),c(4,"isLoadingRequest"),g(5,"neptun-form-select",12),c(6,"isResultRequest"),c(7,"isResultRequest"),S()),t&2){let e=r.ngIf,i=s(2).ngIf,n=s().$implicit;a(),m("ngIf",d(2,8,e)),a(2),m("ngIf",d(4,10,e)),a(2),st(d(6,12,e)?"filter-element":"display-none"),m("label",n("internship.subject"))("isAllItemsAnOption",!0)("ngModel",i.subjectId)("dataSource",d(7,14,e)?e.data:$(16,Ba))}}function id(t,r){if(t&1&&(E(0),g(1,"neptun-filter-field-error-indicator",16),S()),t&2){let e=s(4).$implicit;a(),m("fieldName",e("exams.type"))}}
1function nd(t,r){t&1&&(E(0),g(1,"neptun-rectangle-placeholder",17),S())}function ad(t,r){if(t&1&&(E(0),u(1,id,2,1,"ng-container",5),c(2,"hasError"),u(3,nd,2,0,"ng-container",5),c(4,"isLoadingRequest"),g(5,"neptun-form-select",15),c(6,"isResultRequest"),c(7,"isResultRequest"),S()),t&2){let e=r.ngIf,i=s(2).ngIf,n=s().$implicit;a(),m("ngIf",d(2,8,e)),a(2),m("ngIf",d(4,10,e)),a(2),st(d(6,12,e)?"filter-element":"display-none"),m("label",n("exams.type"))("isAllItemsAnOption",!0)("ngModel",i.examTypeId)("dataSource",d(7,14,e)?e.data:$(16,Ba))}}function od(t,r){if(t&1&&(E(0),g(1,"neptun-filter-field-error-indicator",19),S()),t&2){let e=s(4).$implicit;a(),m("fieldName",e("subjectsCourses.examCondition"))}}function rd(t,r){t&1&&(E(0),g(1,"neptun-rectangle-placeholder",20),S())}function sd(t,r){if(t&1&&(E(0),u(1,od,2,1,"ng-container",5),c(2,"hasError"),u(3,rd,2,0,"ng-container",5),c(4,"isLoadingRequest"),g(5,"neptun-form-select",18),c(6,"isResultRequest"),c(7,"isResultRequest"),S()),t&2){let e=r.ngIf,i=s(2).ngIf,n=s().$implicit;a(),m("ngIf",d(2,8,e)),a(2),m("ngIf",d(4,10,e)),a(2),st(d(6,12,e)?"filter-element":"display-none"),m("label",n("subjectsCourses.examCondition"))("isAllItemsAnOption",!0)("ngModel",i.examPrerequisiteType)("dataSource",d(7,14,e)?e.data:$(16,Ba))}}function md(t,r){if(t&1){let e=j();p(0,"neptun-filter-v2",7),c(1,"async"),c(2,"async"),c(3,"async"),A("keepOpenChanged",function(){C(e);let n=s(3);return v(n.setKeepOpenChanged())})("latestFilterLoad",function(n){C(e);let o=s(3);return v(o.loadLatestFilter(n))})("filterClick",function(n){C(e);let o=s(3);return v(o.filterItems(n))})("closed",function(){C(e);let n=s(3);return v(n.toggleFilter())})("resetFilter",function(){C(e);let n=s(3);return v(n.resetFilter())}),u(4,Zp,7,9,"ng-container",5),c(5,"async"),u(6,td,8,17,"ng-container",5),c(7,"async"),u(8,ad,8,17,"ng-container",5),c(9,"async"),u(10,sd,8,17,"ng-container",5),c(11,"async"),g(12,"neptun-form-input",8),l()}if(t&2){let e,i=s().ngIf,n=s().$implicit,o=s();m("previousFilter",d(1,10,o.previousFilters$))("defaultInputKeys",$(24,zp))("keepOpen",d(2,12,o.keepFilterOpen$))("isLoading",d(3,14,o.isFiltering$)===!0),a(4),m("ngIf",d(5,16,o.terms$)),a(2),m("ngIf",(e=d(7,18,o.examSubjects$))!==null&&e!==void 0?e:be(26,Wp,$(25,Ba))),a(2),m("ngIf",d(9,20,o.examTypes$)),a(2),m("ngIf",d(11,22,o.examPrerequisiteTypes$)),a(2),m("ngModel",i.tutorName)("label",n("finalExams.examLecturer"))}}function ld(t,r){if(t&1&&(E(0),u(1,md,13,28,"neptun-filter-v2",6),c(2,"async"),S()),t&2){let e=s(2);a(),m("ngIf",d(2,1,e.isFilterOpen$))}}function cd(t,r){t&1&&(E(0),p(1,"div",22),g(2,"neptun-request-error-indicator",23),l(),S())}function pd(t,r){if(t&1&&Be(0,24),t&2){s(2);let e=Y(12);m("ngTemplateOutlet",e)}}function dd(t,r){if(t&1&&(p(0,"div",28),g(1,"neptun-secondary-title",29),p(2,"div",22),g(3,"neptun-data-table",30),l()()),t&2){let e=r.$implicit,i=r.last,n=s(3).ngIf;m("ngClass",be(6,Qp,!i)),a(),m("title",e.subjectName)("description",e.subjectCode),a(2),m("dataSource",e.result)("columns",n.data)("backToTopEnabled",!1)}}function ud(t,r){if(t&1&&(p(0,"div",26),u(1,dd,4,8,"div",27),l()),t&2){let e=s(4).ngIf;a(),m("ngForOf",e.data)}}function _d(t,r){if(t&1&&(E(0),u(1,ud,2,1,"div",25),S()),t&2){let e=s(3).ngIf;s();let i=Y(14);a(),m("ngIf",e.data.length)("ngIfElse",i)}}function xd(t,r){if(t&1&&(E(0),u(1,_d,2,2,"ng-container",5),c(2,"isResultRequest"),S()),t&2){let e=r.ngIf;a(),m("ngIf",d(2,1,e))}}function gd(t,r){if(t&1&&(E(0),u(1,xd,3,3,"ng-container",5),c(2,"async"),S()),t&2){let e=s(3);a(),m("ngIf",d(2,1,e.customColumns$))}}function fd(t,r){if(t&1&&(E(0),u(1,cd,3,0,"ng-container",5),c(2,"hasError"),u(3,pd,1,1,"ng-container",21),c(4,"isLoadingRequest"),u(5,gd,3,3,"ng-container",5),c(6,"isResultRequest"),S()),t&2){let e=r.ngIf;a(),m("ngIf",d(2,3,e)),a(2),m("ngIf",d(4,5,e)),a(2),m("ngIf",d(6,7,e))}}function hd(t,r){t&1&&(p(0,"div",22),g(1,"neptun-data-table-placeholder",31),l()),t&2&&(a(),m("loading",!0))}function Ed(t,r){if(t&1&&(p(0,"div",32),g(1,"neptun-data-missing-placeholder",33),c(2,"assetUrl"),l()),t&2){let e=s().$implicit;a(),m("title",e("exams.noRegisteredExams"))("subTitle",e("exams.noRegisteredExamsDescription"))("imageUrl",d(2,5,"assets/images/no-data/no-taken-exams.svg"))("buttonText",e("exams.toTheExamRegistrationButton"))("buttonRouterLink","/exams/overview/registration")}}function Sd(t,r){if(t&1){let e=j();E(0),p(1,"neptun-primary-title",3)(2,"neptun-table-header-actions",4),c(3,"async"),c(4,"async"),c(5,"async"),c(6,"async"),A("itemAction",function(n){C(e);let o=s();return v(o.itemAction(n))})("toggleFilter",function(){C(e);let n=s();return v(n.toggleFilter())}),l()(),u(7,ld,3,3,"ng-container",5),c(8,"async"),u(9,fd,7,9,"ng-container",5),c(10,"async"),u(11,hd,2,1,"ng-template",null,0,ae)(13,Ed,3,7,"ng-template",null,1,ae),S()}if(t&2){let e=r.$implicit,i=s();a(),m("title",e("menu.exams.registeredExams")),a(),m("actionsMenu",d(3,8,i.moreActionsMenuItems$))("hasFilter",!0)("isListDataLoading",d(4,10,i.isListLoading$)===!0)("filterCount",d(5,12,i.filterCount$))("isFilterOpen",d(6,14,i.isFilterOpen$)),a(5),m("ngIf",d(8,16,i.filterModel$)),a(2),m("ngIf",d(10,18,i.subjectsWithExams$))}}var ws=(()=>{class t extends Ke{constructor(e,i,n,o){super(e),this.examTakenListStore=e,this.store=i,this.examService=n,this.router=o,this.exportTitle="menu.exams.registeredExams",this.exportNestedData={nestedArrayDataKey:"registeredExamList",nestedArrayTitleKey:"subjectName"},this.subjectsWithExams$=ye([this.entities$,this.examTakenListStore.examOperation$]).pipe(T(([x,h])=>ne(x)?Ie(x.data.map(D=>({subjectName:D.subjectName,subjectCode:D.subjectCode,result:D.registeredExamList.map(B=>this.convertToTableRow(B,D.subjectName,h))})),x.isPagingLoading??!1):x)),this.examTypes$=this.examTakenListStore.examTypes$,this.examPrerequisiteTypes$=this.examTakenListStore.examPrerequisiteTypes$,this.terms$=this.examTakenListStore.terms$,this.examSubjects$=this.examTakenListStore.examSubjects$}
1initialize(){ne(this.listState.entities)?this.examTakenListStore.updateState(I(b({},this.listState),{isFilterOpen:this.listState.keepFilterOpen})):(this.examTakenListStore.getColumns(),this.examTakenListStore.loadOrderBy(),this.examTakenListStore.getPreviousFilters(),this.examTakenListStore.getTerms(),this.isFilterOpen$.pipe(le(Boolean),F(()=>{this.examTakenListStore.getExamSubjects(),this.examTakenListStore.getExamTypes(),this.examTakenListStore.getExamPrerequisiteTypes()}),Li(e=>!e)).subscribe(),this.examTakenListStore.isServerOrderLoaded$.pipe(le(Boolean),W(1),F(()=>this.fetchItemsFromServer())).subscribe())}fetchItemsFromServer(){this.examTakenListStore.fetchItemsFromServer(I(b({},this.listState.contracts.filterModel),{firstRow:0,lastRow:this.examTakenListStore.defaultPagingNumber}))}loadModuleState(){return this.store.selectSnapshot(mi.getExamTakenListState)}resetModuleState(){this.store.dispatch(new Xt.ResetExamTakenListState)}ngOnInit(){super.ngOnInit(),this.customColumns$=ye([this.displayedColumns$,this.entities$]).pipe(ct(),Et(this.destroy$),T(([e,i])=>{if(!ne(e)||!ne(i))return e;let n=[...e.data];if(i.data.some(o=>o.registeredExamList.some(x=>!!x.waitingStrength))){let o=e.data.findIndex(x=>x.key==="counts");o>-1&&n.splice(o,1,{disableSort:!0,text:"subjects.personWaitLimit",key:"counts",type:"counts",counts:["strength","waitingStrength","maxStrength"]})}return Ie(n)}))}setSelectedTermId(e){this.examTakenListStore.updateSelectedTerm(e)}resetFilter(){this.examTakenListStore.resetFilter()}convertToTableRow(e,i,n){let o=()=>{this.examTakenListStore.saveListState(),this.router.navigate(["exams","overview","taken",e.examId],{queryParamsHandling:"merge",queryParams:{courseExamId:e.courseExamId,subjectName:i,examSignInId:e.examSignInId,isRegisteredExam:!0,impositionFromType:Jt.ExamRegistered}})},x={controllerName:"ExamRegistration",actionName:"GetExamRegistrationDetail"},h={controllerName:"ExamRegistration",actionName:"UnSubscribe"},D={dropExamAction:{text:"button.withdrawal",color:G.Error,callback:()=>this.handleDropExam(e),permission:h,isLoading$:Ee(Ae(n)&&n.loadingContext?.examId===e.examId),disabled:Ae(n),isHidden:!this.examNotStartedYet(e)},details:{color:G.Primary,text:"button.details",hasArrow:!0,callback:o,permission:x}};return{data:e,detailsCallback:o,detailsPermission:x,actions:D}}handleDropExam(e){this.examTakenListStore.dropExam({examId:e.examId,examSignInId:e.examSignInId})}examNotStartedYet(e){return new Date<new Date(e.fromDate)}static{this.\u0275fac=function(i){return new(i||t)(f($a),f(X),f(ot),f(re))}}static{this.\u0275cmp=N({type:t,selectors:[["neptun-exam-taken-list"]],features:[oe([$a,Ce]),ve],decls:1,vars:0,consts:[["tableIsLoading",""],["noExamsData",""],[4,"transloco"],[3,"title"],[3,"itemAction","toggleFilter","actionsMenu","hasFilter","isListDataLoading","filterCount","isFilterOpen"],[4,"ngIf"],["class","neptun-wrapper-padding",3,"previousFilter","defaultInputKeys","keepOpen","isLoading","keepOpenChanged","latestFilterLoad","filterClick","closed","resetFilter",4,"ngIf"],[1,"neptun-wrapper-padding",3,"keepOpenChanged","latestFilterLoad","filterClick","closed","resetFilter","previousFilter","defaultInputKeys","keepOpen","isLoading"],["id","tutorName","name","tutorName",1,"filter-element",3,"ngModel","label"],["test-id","terms-error",3,"fieldName"],["test-id","terms-loading",1,"placeholder"],["id","termId","name","termId",1,"filter-element",3,"ngModelChange","label","ngModel","dataSource","required"],["id","subjectId","name","subjectId",3,"label","isAllItemsAnOption","ngModel","dataSource"],["test-id","exam-subjects-error",3,"fieldName"],["test-id","exam-subjects-loading",1,"placeholder"],["id","examTypeId","name","examTypeId",3,"label","isAllItemsAnOption","ngModel","dataSource"],["test-id","exam-types-error",3,"fieldName"],["test-id","exam-types-loading",1,"placeholder"],["id","examPrerequisiteType","name","examPrerequisiteType",3,"label","isAllItemsAnOption","ngModel","dataSource"],["test-id","exam-prerequisite-types-error",3,"fieldName"],["test-id","exam-prerequisite-types-loading",1,"placeholder"],[3,"ngTemplateOutlet",4,"ngIf"],[1,"neptun-wrapper"],["test-id","subjects-with-exams-error"],[3,"ngTemplateOutlet"],["class","exam-taken-list__tables",4,"ngIf","ngIfElse"],[1,"exam-taken-list__tables"],[3,"ngClass",4,"ngFor","ngForOf"],[3,"ngClass"],[3,"title","description"],["test-id","exam-taken-list-table",1,"taken-exams-list",3,"dataSource","columns","backToTopEnabled"],["test-id","table-is-loading",3,"loading"],["test-id","no-exams-data",1,"neptun-wrapper"],[3,"title","subTitle","imageUrl","buttonText","buttonRouterLink"]],template:function(i,n){i&1&&u(0,Sd,15,20,"ng-container",2)},dependencies:[z,ue,at,Q,Tt,vi,It,fi,nt,tt,kn,it,Ft,Ye,qt,xe,yt,Vt,Ue,Ei,_t,H,et,Ze,We,ze],styles:[".exam-taken-list__table[_ngcontent-%COMP%]{margin-bottom:48px}[_nghost-%COMP%]     .taken-exams-list .table-actions{min-width:190px}@media only screen and (max-width:767px){[_nghost-%COMP%]     .taken-exams-list .table-actions{min-width:auto}}.display-none[_ngcontent-%COMP%]{display:none}"],changeDetection:0})}}return t})();var As=Di(Pi());var qa=()=>({iconClass:"icon-chevron-right",fontSize:"12px"}),bd=()=>({showAllTerms:!0}),Cd=t=>({"is-waiting":t});function vd(t,r){t&1&&Be(0)}function yd(t,r){if(t&1&&(E(0),u(1,vd,1,0,"ng-container",13),S()),t&2){s();let e=Y(6);a(),m("ngTemplateOutlet",e)}}function Id(t,r){t&1&&Be(0)}function Td(t,r){if(t&1&&(E(0),u(1,Id,1,0,"ng-container",13),S()),t&2){s(2);let e=Y(6);a(),m("ngTemplateOutlet",e)}}function Fd(t,r){t&1&&Be(0)}function Rd(t,r){t&1&&Be(0)}function Dd(t,r){if(t&1&&(E(0),u(1,Rd,1,0,"ng-container",13),S()),t&2){s(3);let e=Y(6);a(),m("ngTemplateOutlet",e)}}function Pd(t,r){t&1&&Be(0)}function wd(t,r){if(t&1&&(E(0),u(1,Pd,1,0,"ng-container",13),S()),t&2){s(2);let e=Y(10);a(),m("ngTemplateOutlet",e)}}function Ad(t,r){if(t&1&&(p(0,"div",14),u(1,Fd,1,0,"ng-container",13)(2,Dd,2,1,"ng-container",12)(3,wd,2,1,"ng-container",11),c(4,"async"),l()),t&2){let e=s().ngIf,i=Y(8);s();let n=Y(10),o=s();a(),m("ngTemplateOutlet",i),a(),m("ngIf",!e.availableExamsCount.isThereNowExamPeriod&&!e.availableExamsCount.isThereOfferedExams),a(),m("ngIf",d(4,4,o.actualTermId$))("ngIfElse",n)}}function Od(t,r){if(t&1){let e=j();p(0,"neptun-dashboard-tile",15),A("buttonClicked",function(){C(e);let n=s(3);return v(n.navigateToExamRegistration())}),l()}if(t&2){let e=s().ngIf,i=s().$implicit,n=s();m("icon",n.Icons.CalendarDates)("title",i("menu.exams.examRegistration"))("buttonText",e.availableExamsCount.buttonText)("buttonHide",!e.availableExamsCount.examsCount)("permissionRequired",n.navigateToRegistrationPermission)("description",e.availableExamsCount.tileText)}}function Md(t,r){if(t&1&&(p(0,"neptun-badge",23),_(1),l()),t&2){let e=s(2).ngIf;m("color","primary"),a(),O(" ",e.examHistory.count," ")}}function Ld(t,r){if(t&1){let e=j();p(0,"neptun-data-list-item",25),A("click",function(){let n=C(e).$implicit,o=s(
15);return v(o.navigateToTermResults(n))}),l()}if(t&2){let e=r.$implicit;m("item",e)}}function jd(t,r){if(t&1&&(E(0),u(1,Ld,1,1,"neptun-data-list-item",24),S()),t&2){let e=s(2).ngIf;a(),m("ngForOf",e.examHistory.terms)}}function kd(t,r){if(t&1&&(p(0,"div",26),_(1),l()),t&2){let e=s(3).$implicit;a(),y(e("global.noResults"))}}function Nd(t,r){if(t&1&&(p(0,"button",27),_(1),l()),t&2){let e=s(3).$implicit,i=s();m("postfixIcon",$(5,qa))("routerLink","/exams/overview/results")("queryParams",$(6,bd))("permissionRequired",i.navigateToExamResultsPermission),a(),O("",e("exams.allResults")," ")}}function $d(t,r){if(t&1&&(p(0,"neptun-card",16)(1,"div",17)(2,"div",18),g(3,"i",19),p(4,"h4",20),_(5),l(),u(6,Md,2,2,"neptun-badge",21),l(),u(7,jd,2,1,"ng-container",11)(8,kd,2,1,"ng-template",null,7,ae),l(),u(10,Nd,2,7,"button",22),l()),t&2){let e=Y(9),i=s().ngIf,n=s().$implicit;a(5),y(n("exams.previousSemesterResults")),a(),m("ngIf",i.examHistory.count>0),a(),m("ngIf",i.examHistory.terms&&i.examHistory.terms.length>0)("ngIfElse",e),a(3),m("ngIf",i.examHistory.count)}
1}function Bd(t,r){if(t&1&&g(0,"neptun-data-list-item",43),t&2){let e=r.$implicit;m("ngClass",be(2,Cd,e.isWaiting))("item",e)}}function qd(t,r){if(t&1&&(p(0,"neptun-card",29)(1,"div",30)(2,"h3",31),_(3),l(),p(4,"div",32)(5,"div",33)(6,"h1",34),_(7),l(),p(8,"div",35),_(9),l()(),p(10,"button",36),_(11),l()(),p(12,"div",37)(13,"div",33)(14,"h1",34),_(15),l(),p(16,"div",35),_(17),l()(),p(18,"button",36),_(19),l()()(),p(20,"div")(21,"div",38),g(22,"i",39),p(23,"h4",40),_(24),l(),p(25,"neptun-badge",23),_(26),l()(),u(27,Bd,1,4,"neptun-data-list-item",41),p(28,"button",42),_(29),l()()()),t&2){let e=s(2).ngIf,i=s().$implicit,n=s();a(3),y(i("global.currentSemester")),a(4),O(" ",e.dashboardActualTermExamEntries.allExamsCount," "),a(2),y(i("exams.totalRegistered")),a(),m("postfixIcon",$(21,qa))("routerLink","taken")("permissionRequired",n.navigateToRegisteredExamsPermission),a(),O("",i("menu.exams.registeredExams")," "),a(4),O(" ",e.dashboardActualTermExamEntries.examResultsCount," "),a(2),y(i("exams.finished")),a(),m("postfixIcon",$(22,qa))("routerLink","results")("permissionRequired",n.navigateToExamResultsPermission),a(),O("",i("dashboard.results")," "),a(5),y(i("exams.upcomingExams")),a(),m("color","primary"),a(),O(" ",e.dashboardExamEntriesInActualTerm.upcommingExamsCount," "),a(),m("ngForOf",e.dashboardExamEntriesInActualTerm.upcommingExamsBlokkDataList),a(),m("postfixIcon",$(23,qa))("routerLink","remaining")("permissionRequired",n.navigateToRemainingExamsPermission),a(),O(" ",i("exams.everyExam")," ")}}function Vd(t,r){if(t&1&&u(0,qd,30,24,"neptun-card",28),t&2){let e=s().ngIf;m("ngIf",e.availableExamsCount.isThereNowExamPeriod)}}function Ud(t,r){if(t&1&&(E(0),u(1,yd,2,1,"ng-container",12)(2,Td,2,1,"ng-container",11)(3,Ad,5,6,"ng-template",null,3,ae)(5,Od,1,6,"ng-template",null,4,ae)(7,$d,11,5,"ng-template",null,5,ae)(9,Vd,1,1,"ng-template",null,6,ae),S()),t&2){let e=r.ngIf,i=Y(4);a(),m("ngIf",e.availableExamsCount.isThereNowExamPeriod||e.availableExamsCount.isThereOfferedExams||e.availableExamsCount.examsCount>0||e.availableExamsCount.isThereExamPeriod),a(),m("ngIf",!e.availableExamsCount.isThereNowExamPeriod&&!e.examHistory.count&&!e.availableExamsCount.isThereOfferedExams&&e.availableExamsCount.examsCount===0)("ngIfElse",i)}}function Hd(t,r){if(t&1&&(g(0,"neptun-data-missing-placeholder",44),c(1,"assetUrl")),t&2){let e=s().$implicit;m("title",e("exams.currentlyNoApplyAvailable"))("imageUrl",d(1,3,"assets/images/no-data/no-exam-application-period.svg"))("subTitle",e("exams.noExamPeriodConclusion"))}}function Gd(t,r){t&1&&(p(0,"div",45),g(1,"neptun-dashboard-with-history-placeholder",46),l()),t&2&&(a(),m("historyLength",1))}function zd(t,r){if(t&1&&(p(0,"neptun-card",47),g(1,"neptun-data-missing-placeholder",48),c(2,"assetUrl"),l()),t&2){let e=s().$implicit;a(),m("title",e("reClassification.noActualTerm"))("subTitle",e("exams.noActualTermDescription"))("imageUrl",d(2,3,"assets/images/training-missing.svg"))}}function Wd(t,r){if(t&1&&(E(0),g(1,"neptun-primary-title",9),p(2,"div",10),u(3,Ud,11,3,"ng-container",11),c(4,"async"),u(5,Hd,2,5,"ng-template",null,0,ae)(7,Gd,2,1,"ng-template",null,1,ae)(9,zd,3,5,"ng-template",null,2,ae),l(),S()),t&2){let e=r.$implicit,i=Y(8),n=s();a(),m("title",e("menu.exams.overview")),a(2),m("ngIf",d(4,3,n.vm$))("ngIfElse",i)}}var Os=(()=>{class t{constructor(e,i,n,o,x,h){this.router=e,this.activatedRoute=i,this.service=n,this.transloco=o,this.dateLocalizationService=x,this.store=h,this.Icons=ee,this.actualTermId$=this.store.select(Ko.actualTermId),this.navigateToRegistrationPermission={controllerName:"ExamRegistration",actionName:"GetExamsList"},this.navigateToExamResultsPermission={controllerName:"ExamResults",actionName:"GetExamResultsList"},this.navigateToRegisteredExamsPermission={controllerName:"ExamRegisteredExams",actionName:"GetRegisteredExamsList"},this.navigateToRemainingExamsPermission={controllerName:"ExamRemainingExams",actionName:"GetRemainingRegisteredExamsList"},this.availableExamsCount$=this.service.availableExamsCount$.pipe(T(D=>I(b({},D),{buttonText:D.isThereNowExamPeriod?this.transloco.translate("exams.continueTakeExam"):this.transloco.translate("exams.toExams"),tileText:D.isThereNowExamPeriod?this.transloco.translate("exams.availableExamsCount",{count:D.examsCount}):this.evaluateUpcomingExamText(D.upcomingExamPeriodStart)}))),this.examHistory$=this.service.dashboardExamEntries$.pipe(T(D=>({count:D.reduce((B,te)=>B+te.entryCount,ki.ZERO),terms:D.map(B=>({primary:B.term,secondaryLeft:[this.transloco.translate("exams.examCount",{count:B.entryCount})],termId:B.termId}))}))),this.dashboardActualTermExamEntries$=this.service.dashboardActualTermExamEntries$,this.dashboardExamEntriesInActualTerm$=this.service.dashboardExamEntriesInActualTerm$.pipe(T(D=>({upcommingExamsCount:D.upcommingExamsCount,upcommingExamsBlokkDataList:D.upcommingExamsBlokkDataList.map(B=>{let te={isWaiting:B.isWaiting,primary:B.subjectName,secondaryLeft:[B.subjectCode,B.examType,(0,As.default)(B.fromDate).startOf("day").fromNow()],action:()=>{this.router.navigate(["registration",B.examId],{queryParamsHandling:"merge",queryParams:{subjectName:B.subjectName,examId:B.examId,courseId:B.courseId,courseExamId:B.courseExamId},relativeTo:this.activatedRoute})}};return B.isWaiting&&te.secondaryLeft.unshift(this.transloco.translate("exams.onWaitingList")),te})}))),this.vm$=ye([this.availableExamsCount$,this.examHistory$,this.dashboardActualTermExamEntries$,this.dashboardExamEntriesInActualTerm$]).pipe(T(([D,B,te,w])=>({availableExamsCount:D,examHistory:B,dashboardActualTermExamEntries:te,dashboardExamEntriesInActualTerm:w})))}evaluateUpcomingExamText(e){return e?this.transloco.translate("exams.startOfExamWithDate",{date:this.dateLocalizationService.localizeDate(e,void 0,{dateStyle:"long",timeStyle:"short"})}):this.transloco.translate("global.notSpecified")}navigateToExamRegistration(){this.router.navigate(["registration"],{relativeTo:this.activatedRoute})}navigateToTermResults(e){this.router.navigate(["results"],{queryParams:{termId:e.termId},relativeTo:this.activatedRoute})}static{this.\u0275fac=function(i){return new(i||t)(f(re),f(ie),f(Fa),f(Z),f(fe),f(X))}}static{this.\u0275cmp=N({type:t,selectors:[["neptun-exams-overview"]],decls:1,vars:0,consts:[["notExamPeriod",""],["loadingPlaceholder",""],["noActualTerm",""],["newDeb",""],["examPeriodAvailable",""],["examsHistory",""],["actualSemester",""],["noHistory",""],[4,"transloco"],[3,"title"],[1,"neptun-wrapper"],[4,"ngIf","ngIfElse"],[4,"ngIf"],[4,"ngTemplateOutlet"],[1,"exam-detail"],["iconColor","tertiary","id","exam-registration",3,"buttonClicked","icon","title","buttonText","buttonHide","permissionRequired","description"],[1,"history"],[1,"history__wrapper"],[1,"history__header"],[1,"history__icon","icon-time-history"],[1,"history__title"],[3,"color",4,"ngIf"],["neptun-button","","accent","link","color","primary",3,"postfixIcon","routerLink","queryParams","permissionRequired",4,"ngIf"],[3,"color"],["class","list-item",3,"item","click",4,"ngFor","ngForOf"],[1,"list-item",3,"click","item"],[1,"history--none"],["neptun-button","","accent","link","color","primary",3,"postfixIcon","routerLink","queryParams","permissionRequired"],["class","actual",4,"ngIf"],[1,"actual"],[1,"actual__detail"],[1,"actual__header"],[1,"detail-item","detail-item--registered"],[1,"detail-item__count"],[1,"detail-item__number"],[1,"detail-item__caption"],["neptun-button","","accent","link","color","primary",3,"postfixIcon","routerLink","permissionRequired"],[1,"detail-item","detail-item--passed"],[1,"upcoming__header"],[1,"upcoming__icon","icon-alert-triangle1"],[1,"upcoming__title"],["class","list-item upcoming__list-item",3,"ngClass","item",4,"ngFor","ngForOf"],["neptun-button","","accent","link","color","primary",1,"upcoming__link",3,"postfixIcon","routerLink","permissionRequired"],[1,"list-item","upcoming__list-item",3,"ngClass","item"],[3,"title","imageUrl","subTitle"],[1,"placeholder-wrapper"],[3,"historyLength"],[1,"n
1o-actual-term"],[3,"title","subTitle","imageUrl"]],template:function(i,n){i&1&&u(0,Wd,11,5,"ng-container",8)},dependencies:[z,ue,Q,qt,ea,Ne,Xe,Yo,xe,Un,we,Mn,yt,_t,wr,H,et],styles:[".w-100[_ngcontent-%COMP%]{display:block;width:100%}.h-100[_ngcontent-%COMP%]{height:100%!important}.hidden[_ngcontent-%COMP%]{display:none}.flex-end[_ngcontent-%COMP%]{justify-content:flex-end!important}.separator[_ngcontent-%COMP%]{width:100%;height:1px;background:#2223;margin:32px 0}.no-scrollbar[_ngcontent-%COMP%]{scrollbar-width:none;margin-bottom:0;padding-bottom:0}.no-scrollbar[_ngcontent-%COMP%]::-webkit-scrollbar{display:none}.action-container[_ngcontent-%COMP%]{display:flex;justify-content:space-between;margin-top:32px}.action-container[_ngcontent-%COMP%]   .action-container__buttons[_ngcontent-%COMP%]{display:flex;gap:12px}.action-container__actions[_ngcontent-%COMP%]{display:flex;align-items:flex-end}.neptun-page-description[_ngcontent-%COMP%]{margin-bottom:32px}.onboarding-dialog-panel-class[_ngcontent-%COMP%]   mat-dialog-container[_ngcontent-%COMP%]{border-radius:8px!important}.neptun-basic-dialog-layout-actions[_ngcontent-%COMP%]{display:flex;align-items:center;color:#fff;width:100%;gap:16px;justify-content:flex-end;flex-basis:0;flex-grow:1}.neptun-basic-dialog-layout-actions[_ngcontent-%COMP%]   a[_ngcontent-%COMP%]{color:#fff}.neptun-basic-dialog-layout-actions.dialog-container--confirm[_ngcontent-%COMP%]   a[_ngcontent-%COMP%]{color:#0943d9}neptun-multi-step-dialog-step-general-view[_ngcontent-%COMP%]   .actions__buttons[_ngcontent-%COMP%]   a[_ngcontent-%COMP%]{color:#fff}.neptun-wrapper-padding[_ngcontent-%COMP%], .neptun-wrapper[_ngcontent-%COMP%], .neptun-wrapper--max-width-xxl[_ngcontent-%COMP%]{display:block;max-width:1280px;margin-left:auto;margin-right:auto;padding:0 20px;width:-webkit-fill-available}.neptun-wrapper--max-width-xxl[_ngcontent-%COMP%]{max-width:1700px;padding:0}.context-bar[_ngcontent-%COMP%]{margin-top:16px}@media screen and (max-width:768px){.context-bar--top[_ngcontent-%COMP%]{display:none}.context-bar--bottom[_ngcontent-%COMP%]{position:sticky;bottom:0;z-index:3}}b[_ngcontent-%COMP%]{-webkit-font-smoothing:antialiased}.browser-default-style[_ngcontent-%COMP%]   ol[_ngcontent-%COMP%], .browser-default-style[_ngcontent-%COMP%]   ul[_ngcontent-%COMP%]{padding-left:32px}.text-wrap[_ngcontent-%COMP%]{white-space:normal}mat-datepicker-content[_ngcontent-%COMP%]   .time-picker-container[_ngcontent-%COMP%]   neptun-form-input[_ngcontent-%COMP%]   input[_ngcontent-%COMP%]{width:48px!important;height:48px!important;text-align:center}mat-datepicker-content[_ngcontent-%COMP%]   .time-picker-container[_ngcontent-%COMP%]   neptun-form-input[_ngcontent-%COMP%]   .mat-mdc-form-field[_ngcontent-%COMP%]   .mat-mdc-text-field-wrapper[_ngcontent-%COMP%]   .mat-mdc-form-field-flex[_ngcontent-%COMP%]{padding:unset}mat-datepicker-content[_ngcontent-%COMP%]   .time-picker-container[_ngcontent-%COMP%]   neptun-form-input[_ngcontent-%COMP%]   .mat-mdc-form-field[_ngcontent-%COMP%]{margin-bottom:unset}mat-datepicker-content[_ngcontent-%COMP%]   .time-picker-container[_ngcontent-%COMP%]   neptun-form-input[_ngcontent-%COMP%]   .mat-mdc-form-field-subscript-wrapper[_ngcontent-%COMP%]{margin:unset}.text-underline-position-under[_ngcontent-%COMP%]{text-underline-position:under}.link-focus[_ngcontent-%COMP%]{display:inline-block;padding:4px 12px;margin-left:-12px}.link-focus[_ngcontent-%COMP%]:focus-visible{outline:2px solid #4d94ff;border-radius:8px}button.link-button.spinner[_ngcontent-%COMP%]   .link-button__label[_ngcontent-%COMP%]{visibility:hidden}.checkbox-left[_ngcontent-%COMP%]{margin-left:-10px}.general-focus[_ngcontent-%COMP%]:focus-visible{outline:2px solid #4d94ff;border-radius:8px}.anchor-reset[_ngcontent-%COMP%]:hover{text-decoration:none;transition:unset}.mat-typography[_ngcontent-%COMP%]   h3.h3-unformatted[_ngcontent-%COMP%], .mat-typography[_ngcontent-%COMP%]   h5.h5-unformatted[_ngcontent-%COMP%], .mat-typography[_ngcontent-%COMP%]   h6.h6-unformatted[_ngcontent-%COMP%]{font:unset}.mat-typography[_ngcontent-%COMP%]   h5.h5-unformatted[_ngcontent-%COMP%]{margin:unset;font-size:16px;font-weight:400}.mat-typography[_ngcontent-%COMP%]   h6.h6-unformatted[_ngcontent-%COMP%]{margin:0}.router-container[_ngcontent-%COMP%] > *[_ngcontent-%COMP%]:not(router-outlet){flex:1}app-root[_ngcontent-%COMP%]:has(~.cdk-overlay-container .dialog-backdrop)   .layout[_ngcontent-%COMP%]   .app-main[_ngcontent-%COMP%]   .push-notifications-wrapper[_ngcontent-%COMP%]   .push-notifications[_ngcontent-%COMP%]{position:fixed}@media only screen and (max-width:767px){.neptun-page-description[_ngcontent-%COMP%]{padding:0 20px}.neptun-basic-dialog-layout-actions[_ngcontent-%COMP%]{flex-direction:column-reverse}.dialog-overlay-wrapper[_ngcontent-%COMP%]{padding-right:8px;padding-left:8px}.neptun-wrapper[_ngcontent-%COMP%], .neptun-wrapper--max-width-xxl[_ngcontent-%COMP%]{padding:0}}@media only screen and (max-width:992px){.action-container[_ngcontent-%COMP%]{padding:0 20px}}@media screen and (max-width:767px){neptun-multi-step-dialog-step-general-view[_ngcontent-%COMP%]   .actions__buttons[_ngcontent-%COMP%]   button[_ngcontent-%COMP%]{width:100%}}.list-item[_ngcontent-%COMP%] + .list-item[_ngcontent-%COMP%]{margin-top:8px}neptun-dashboard-tile[_ngcontent-%COMP%]{margin-top:24px;margin-bottom:16px}.exam-detail[_ngcontent-%COMP%]{display:flex}.history[_ngcontent-%COMP%]{width:400px;margin-right:20px;padding:8px;display:flex;flex-direction:column;justify-content:space-between}.history[_ngcontent-%COMP%] > .history__wrapper[_ngcontent-%COMP%]{display:flex;flex-flow:column;flex:1}.history[_ngcontent-%COMP%] > .history__wrapper[_ngcontent-%COMP%]   .history--none[_ngcontent-%COMP%]{display:flex;align-items:center;align-self:center;flex-grow:1}.history[_ngcontent-%COMP%] > .history__wrapper[_ngcontent-%COMP%]   .history__header[_ngcontent-%COMP%]{display:flex;padding:16px}.history[_ngcontent-%COMP%] > .history__wrapper[_ngcontent-%COMP%]   .history__header[_ngcontent-%COMP%]   .history__icon[_ngcontent-%COMP%]{font-size:24px;color:#213055;margin-right:8px}.history[_ngcontent-%COMP%] > .history__wrapper[_ngcontent-%COMP%]   .history__header[_ngcontent-%COMP%]   .history__title[_ngcontent-%COMP%]{color:#213055;margin-right:8px}.history[_ngcontent-%COMP%]   a[_ngcontent-%COMP%]{margin:4px 16px}.actual[_ngcontent-%COMP%]{display:flex;flex-grow:1;height:100%}.actual__detail[_ngcontent-%COMP%]{width:284px;margin-right:48px}.actual__header[_ngcontent-%COMP%]{color:#213055}.upcoming__icon[_ngcontent-%COMP%]{font-size:24px;color:#213055;margin-right:8px}.upcoming__header[_ngcontent-%COMP%]{display:flex;align-items:center;padding-top:4px;padding-left:16px}.upcoming__list-item[_ngcontent-%COMP%]{padding-left:8px}.upcoming__title[_ngcontent-%COMP%]{margin-right:8px;color:#213055}.upcoming__link[_ngcontent-%COMP%]{padding-left:16px;padding-top:8px}.detail-item[_ngcontent-%COMP%]{display:flex;margin-top:24px;align-items:center;justify-content:space-between}.detail-item__count[_ngcontent-%COMP%]{max-width:165px}.detail-item--registered[_ngcontent-%COMP%]{padding-bottom:24px;border-bottom:1px solid rgba(34,34,34,.2)}.detail-item__number[_ngcontent-%COMP%]{color:#0943d9}.detail-item__caption[_ngcontent-%COMP%]{color:#0943d9;font-weight:800}.icon-container[_ngcontent-%COMP%]{width:64px;
1height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin-right:16px;background-color:#213055;color:#fff}.icon-container[_ngcontent-%COMP%]   i[_ngcontent-%COMP%]{font-size:22px}.placeholder-wrapper[_ngcontent-%COMP%]{padding-top:24px}@media only screen and (max-width:992px){.actual[_ngcontent-%COMP%]{display:block}.detail-item--passed[_ngcontent-%COMP%]{padding-bottom:24px;border-bottom:1px solid rgba(34,34,34,.2)}.upcoming__header[_ngcontent-%COMP%]{padding-top:24px}}@media only screen and (max-width:767px){.exam-detail[_ngcontent-%COMP%]{flex-direction:column-reverse}.history[_ngcontent-%COMP%]{width:100%;padding-right:24px}.history__header[_ngcontent-%COMP%]{padding-right:0}.actual__detail[_ngcontent-%COMP%]{width:100%;margin-right:0}.detail-item__number[_ngcontent-%COMP%]{font-size:72px}.actual__header[_ngcontent-%COMP%]{font-size:21px}}  neptun-data-list-item.is-waiting div>div>div.list__secondary.ng-star-inserted>div.list__secondary-left>neptun-string-list>div>span:nth-child(1){color:#0943d9}  neptun-data-list-item:hover{cursor:pointer;border-radius:8px;background:#f2f3fb}.no-actual-term[_ngcontent-%COMP%]{flex-grow:1}"],changeDetection:0})}}return t})();var Ct=(function(t){return t[t.DEFAULT=0]="DEFAULT",t[t.FAILED_TO_APPEAR=1]="FAILED_TO_APPEAR",t[t.CERTIFIED_ABSENCE_AND_FAILED_TO_APPEAR=2]="CERTIFIED_ABSENCE_AND_FAILED_TO_APPEAR",t})(Ct||{});var Ms=(()=>{class t{constructor(e){this.httpClient=e,this.resourceUrl=`${J.settings.apiServer.url}FinalExams`,this.startedDetailsPermission={controllerName:"FinalExams",actionName:"GetStartedRequestFormDetails"},this.templateDetailsPermission={controllerName:"FinalExams",actionName:"GetAvailableRequestFormTemplateDetails"}}getFormTemplateDetails(e){return this.httpClient.get(`${this.resourceUrl}/GetAvailableRequestFormTemplateDetails`,{params:{requestFormTemplateId:e}}).pipe(T(i=>i.data))}getStartedFormDetails(e){return this.httpClient.get(`${this.resourceUrl}/GetStartedRequestFormDetails`,{params:{requestFormId:e}}).pipe(T(i=>i.data))}static{this.\u0275fac=function(i){return new(i||t)(k(de))}}static{this.\u0275prov=M({token:t,factory:t.\u0275fac,providedIn:"root"})}}return t})();var Oe=(()=>{class t{constructor(e,i,n,o,x,h){this.http=e,this.permissionService=i,this.requestFormTemplateDialogService=n,this.finalExamRequestFormService=o,this.router=x,this.transloco=h,this.baseUrl=`${J.settings.apiServer.url}FinalExams/`,this.registerDeregisterSubject=new li(!1),this.registerDeregister$=this.registerDeregisterSubject.asObservable(),this.isApplicationForTopicAllowed$=this.permissionService.getAccessMode("FinalExams","ApplicationForTopic").pipe(T(D=>D.accessMode==="enabled"))}applicationForPeriod(e){return this.http.post(`${this.baseUrl}ApplicationForPeriod`,{periodId:e.periodId,moduleId:e.moduleId,topicIds:e.topicIds}).pipe(F(()=>this.registerDeregisterSubject.next(!0)),T(i=>i.data))}modifyApplicationForTopic(e){return this.http.post(`${this.baseUrl}ModifyApplicationForTopic`,e).pipe(F(()=>this.registerDeregisterSubject.next(!0)),T(i=>i.data))}cancelPeriodApplication(e,i){return this.http.post(`${this.baseUrl}CancelPeriodApplication`,{applicationId:e,periodId:i}).pipe(F(()=>this.registerDeregisterSubject.next(!0)),T(n=>n.data))}getActivePeriodDetails$(){return this.registerDeregisterSubject.asObservable().pipe(U(()=>this.http.get(`${this.baseUrl}GetActivePeriods`).pipe(T(e=>e.data))))}getSubjectsByPeriod$(e,i){return this.http.get(`${this.baseUrl}GetSubjectsByPeriod`,{params:{periodId:e,applicationId:i,subjectName:"asc"}}).pipe(T(n=>n.data||[]))}getFinalExamsByPeriod$(e,i){return this.http.get(`${this.baseUrl}GetFinalExamsByPeriod`,{params:{periodId:e,applicationId:i,startDate:"asc"}}).pipe(T(n=>n.data||[]))}getFinalExamDetails(e,i,n){return this.http.get(`${this.baseUrl}GetFinalExamDetails`,{params:{finalExamId:e,periodId:i,applicationId:n}}).pipe(T(o=>o.data||{}))}getTopicsAndItems$(e){return this.http.get(`${this.baseUrl}GetTopicsAndItems`,{params:{periodId:e}}).pipe(T(i=>i.data||[]))}applicationForExam(e,i,n,o){return this.http.post(`${this.baseUrl}ApplicationForExam`,{periodId:e,finalExamId:i,applicationId:n,subjectApplicationId:o}).pipe(F(()=>this.registerDeregisterSubject.next(!0)),T(x=>x.data))}cancelExamApplication(e,i){return this.http.post(`${this.baseUrl}CancelExamApplication`,{periodId:e,examApplicationId:i}).pipe(F(()=>this.registerDeregisterSubject.next(!0)),T(n=>n.data))}applyForSubject(e,i,n){return this.http.post(`${this.baseUrl}ApplicationForSubject`,{periodId:e,subjectId:i,applicationId:n}).pipe(F(()=>this.registerDeregisterSubject.next(!0)),T(o=>o.data))}unsubscribeFromSubject(e,i,n,o){return this.http.post(`${this.baseUrl}CancelSubjectApplication`,{periodId:e,subjectApplicationId:i,applicationId:n}).pipe(F(()=>{o&&this.registerDeregisterSubject.next(!0)}),T(x=>x.data))}getRequestFormTemplate(e){return this.http.get(`${this.baseUrl}GetRequestFormTemplate`,{params:{periodId:e}}).pipe(T(i=>i.data))}
1getPreviousApplicationDetails(e,i){return this.http.get(`${this.baseUrl}GetPreviousApplicationDetails`,{params:b({applicationId:e},!!i&&{examApplicationId:i})}).pipe(T(n=>n.data))}examsChange(e){return this.http.post(`${this.baseUrl}ExamsChange`,e).pipe(F(()=>this.registerDeregisterSubject.next(!0)),T(i=>i.data))}applicationForPeriodWithRequestForm(e){return this.getRequestFormTemplate(e.periodId).pipe(U(i=>this.requestFormTemplateDialogService.openRequestFormTemplate([],{isMinimalForm:!0,startedRequestFormId:i.startedRequestFormId,service:this.finalExamRequestFormService},i.requestFormTemplateId,i.startedRequestFormId)),F(i=>{i&&this.navigateToFormFilling(i,e)}))}getAbsenceStatusMessage(e){switch(e){case Ct.FAILED_TO_APPEAR:return[this.transloco.translate("finalExams.failedToAppear")];case Ct.CERTIFIED_ABSENCE_AND_FAILED_TO_APPEAR:return[this.transloco.translate("finalExams.failedToAppear"),this.transloco.translate("finalExams.certifiedAbsence")];case Ct.DEFAULT:default:return[]}}navigateToFormFilling(e,i){let n=["administrations","request-forms","filling",e.selectedFormTemplateId,"final-exam",i.periodId];e.isRestartingRequestForm&&e.startedRequestFormId&&(n=["administrations","request-forms","filling",e.selectedFormTemplateId,"final-exam",i.periodId]),i.topicIds?.length?this.router.navigate(n,{queryParams:{moduleId:i.moduleId,intervalEndDate:i.intervalEndDate,topicIds:i.topicIds.join(",")}}):this.router.navigate(n,{queryParams:{moduleId:i.moduleId,intervalEndDate:i.intervalEndDate}})}getUIDisplayState(e,i,n){let o={type:kt.Default,reasons:[...this.getAbsenceStatusMessage(n)]};return i&&(o.type=kt.Success,o.reasons.unshift(this.transloco.translate("finalExams.applied"))),e&&o.reasons.unshift(this.transloco.translate("finalExams.szevStatusLabel")),o}static{this.\u0275fac=function(i){return new(i||t)(k(de),k(gi),k(zn),k(Ms),k(re),k(Z))}}static{this.\u0275prov=M({token:t,factory:t.\u0275fac,providedIn:"root"})}}return t})();var Fi=(()=>{class t extends pt{constructor(e,i){super(),this.httpClient=e,this.finalExamsApplicationService=i,this.columns=[{text:"finalExams.finalExamDate",key:"startDate",disableSort:!0},{key:"exactTime",text:"menu.role",type:"date",dateStyle:"long",timeStyle:"short",disableSort:!0},{text:"finalExams.applicants",key:"applicantsInfo",disableSort:!0},{text:"global.result",key:"result",disableSort:!0},{text:"finalExams.finalExamSubject",key:"subjectName",disableSort:!0},{text:"exams.signInDate",key:"examApplicationDate",type:"date",dateStyle:"long",timeStyle:"short",disableSort:!0},{text:"finalExams.examDescription",key:"description",type:"html",disableSort:!0}]}getItemsFromServer(e,i,n,o){let x=I(b({},n),{firstRow:e,lastRow:o??e+this.listItemCount});return i&&(x[i.sortablePropertyName]=i.sort),this.httpClient.get(`${J.settings.apiServer.url}FinalExams/GetFinalExamsByPeriod`,{params:St(x)}).pipe(T(h=>h.data))}getFinalExamsByTakenSubjects(e,i,n){return this.finalExamsApplicationService.registerDeregister$.pipe(U(()=>this.httpClient.get(`${J.settings.apiServer.url}FinalExams/GetFinalExamsByTakenSubjects`,{params:St({periodId:e,applicationId:i,subjectId:n})}).pipe(T(o=>o.data))))}getSzevFinalExamDetailsPdf(e){return this.httpClient.get(`${J.settings.apiServer.url}FinalExams/GetSzevFinalExamDetailsPdf`,{params:{finalExamId:e},observe:"response",responseType:"blob"})}static{this.\u0275fac=function(i){return new(i||t)(k(de),k(Oe))}}static{this.\u0275prov=M({token:t,factory:t.\u0275fac,providedIn:"root"})}}return t})();var Va=(()=>{class t extends ut{constructor(e,i,n){super({isFileDownloading:R}),this.globalErrorHandler=e,this.fileService=i,this.finalExamService=n,this.isFileDownloading$=this.select(o=>o.isFileDownloading).pipe(T(o=>Ae(o))),this.setIsFileDownloading=this.updater((o,x)=>I(b({},o),{isFileDownloading:x})),this.getSzevFinalExamResult=this.effect(o=>o.pipe(F(()=>this.setIsFileDownloading(Le)),U(x=>this.finalExamService.getSzevFinalExamDetailsPdf(x).pipe(F(h=>{this.setIsFileDownloading(jn),this.fileService.downloadFile(h)}),pe(h=>(this.setIsFileDownloading(ge),this.globalErrorHandler.handleError(h),Me))))))}static{this.\u0275fac=function(i){return new(i||t)(k(Ce),k(Hn),k(Fi))}}static{this.\u0275prov=M({token:t,factory:t.\u0275fac})}}return t})();var Xd=t=>({count:t}),Yd=(t,r)=>({headcount:t,max:r}),Zd=()=>({iconClass:"icon-chevron-right",fontSize:"12px"}),Jd=()=>({dateStyle:"long",timeStyle:"short"});function eu(t,r){if(t&1){let e=j();p(0,"button",11),c(1,"async"),c(2,"async"),A("click",function(){C(e);let n=s(4);return v(n.cancelExamApplication())}),_(3),l()}if(t&2){let e=s(3).$implicit,i=s();m("accent","flat")("permissionRequired",i.cancelExamApplicationPermission)("loading",d(1,6,i.isLoading$)===!0)("disabled",d(2,8,i.isLoading$)===!0)("color","error"),a(3),O(" ",e("finalExams.buttonWithdraw")," ")}}function tu(t,r){if(t&1){let e=j();p(0,"button",12),c(1,"async"),A("click",function(){C(e);let n=s(2).ngIf,o=s(2);return v(o.getSzevFinalExamResult(n.finalExamId))}),_(2),l()}if(t&2){let e=s(3).$implicit,i=s();
1m("postfixIcon",$(5,Zd))("loading",d(1,3,i.isFileDownloading$)===!0),a(2),O("",e("exams.downloadSzevResults")," ")}}function iu(t,r){if(t&1&&(p(0,"neptun-card")(1,"div",7),g(2,"neptun-icon-detail-item",8),c(3,"momentSince"),g(4,"neptun-icon-detail-item",8)(5,"neptun-icon-detail-item",8)(6,"neptun-icon-detail-item",8),u(7,eu,4,10,"button",9)(8,tu,3,6,"button",10),l()()),t&2){let e=s().ngIf,i=s().$implicit,n=s();a(2),m("text",d(3,14,e.startDate))("label",n.examTime)("icon",n.Icons.Calendar),a(2),m("text",e.examDurationInMinutes)("label",e.examTimeInterval)("icon",n.Icons.Time),a(),m("text",e.type)("label",i("finalExams.examType"))("icon",n.Icons.PencilEdit),a(),m("text",i("finalExams.examSpaces",be(16,Xd,e.maxNumberOfApplicants!==null?e.maxNumberOfApplicants-e.numberOfApplicants:i("exams.unlimited").toLowerCase())))("label",i("finalExams.examSpacesLabel",On(18,Yd,e.numberOfApplicants,e.maxNumberOfApplicants!==null?e.maxNumberOfApplicants:i("exams.unlimited").toLowerCase())))("icon",n.Icons.Group),a(),m("ngIf",n.finalExamApplicationId),a(),m("ngIf",e.isSzev&&e.isSzevResultVisible)}}function nu(t,r){if(t&1&&g(0,"neptun-rating-card",14),t&2){let e=s(2).ngIf;m("sign",e.examResultNumber)("text",e.examResult)}}function au(t,r){if(t&1&&u(0,nu,1,2,"neptun-rating-card",13),t&2){let e=s().ngIf;m("ngIf",!!e.examResult)}}function ou(t,r){if(t&1&&(p(0,"div",16)(1,"dt"),_(2),l(),p(3,"dd"),_(4),l()()),t&2){let e=s(2).ngIf,i=s().$implicit;a(2),y(i("exams.szevExam")),a(2),O(" ",e.isSzev?i("admin.true"):i("admin.false")," ")}}function ru(t,r){if(t&1&&(p(0,"div",15)(1,"neptun-data-view")(2,"dl")(3,"div",16)(4,"dt"),_(5),l(),p(6,"dd"),_(7),c(8,"hyphen"),l()(),p(9,"div",16)(10,"dt"),_(11),l(),p(12,"dd"),_(13),c(14,"hyphen"),l()(),p(15,"div",16)(16,"dt"),_(17),l(),p(18,"dd"),_(19),c(20,"hyphen"),c(21,"translocoDate"),l()(),p(22,"div",16)(23,"dt"),_(24),l(),p(25,"dd"),_(26),c(27,"hyphen"),l()(),u(28,ou,5,2,"div",17),p(29,"div",16)(30,"dt"),_(31),l(),p(32,"dd"),_(33),c(34,"hyphen"),l()()()()()),t&2){let e=s().ngIf,i=s().$implicit;a(5),y(i("personal.examId")),a(2),y(d(8,11,e.examIdentifier)),a(4),y(i("firData.certificates.serialNumber")),a(2),O(" ",d(14,13,e.serialNumber)," "),a(4),y(i("exams.sign
1InDate")),a(2),O(" ",e.isApplicationDateShown?_e(21,17,d(20,15,e.applicationDate),$(24,Jd)):"-"," "),a(5),y(i("finalExams.examAssignedRoom")),a(2),O(" ",d(27,20,e.room)," "),a(2),m("ngIf",e.isSzev!==null),a(3),y(i("global.description")),a(2),O(" ",d(34,22,e.description)," ")}}function su(t,r){if(t&1&&(E(0),g(1,"neptun-primary-title",2),c(2,"hyphen"),p(3,"div",3)(4,"neptun-basic-layout"),u(5,iu,9,21,"ng-template",4)(6,au,1,1,"ng-template",5)(7,ru,35,25,"ng-template",6),l()(),S()),t&2){let e=s().$implicit,i=s();a(),m("title",i.examTime)("description",e("finalExams.finalExamSubject")+": "+d(2,2,i.subjectName))}}function mu(t,r){if(t&1&&(E(0),u(1,su,8,4,"ng-container",1),c(2,"async"),S()),t&2){let e=s();a(),m("ngIf",d(2,1,e.finalExamDetails$))}}var Ua=(()=>{class t{constructor(e,i,n,o,x,h,D){this.activatedRoute=e,this.finalExamsApplicationService=i,this.transloco=n,this.router=o,this.loadingService=x,this.finalExamDetailSummaryStore=h,this.store=D,this.examTime=this.activatedRoute.snapshot.queryParams.examTime,this.finalExamId=this.activatedRoute.snapshot.params.examId,this.periodId=this.activatedRoute.snapshot.queryParams.periodId||this.activatedRoute.snapshot.params.periodId,this.applicationId=this.activatedRoute.snapshot.queryParams.applicationId,this.subjectName=this.activatedRoute.snapshot.queryParams.subjectName,this.finalExamApplicationId=this.activatedRoute.snapshot.queryParams.finalExamApplicationId,this.controllerName="FinalExams",this.actionName="C
1ancelExamApplication",this.cancelExamApplicationPermission={actionName:this.actionName,controllerName:this.controllerName},this.isFileDownloading$=this.finalExamDetailSummaryStore.isFileDownloading$,this.isLoading$=this.loadingService.isLoadingByUrl(`${this.controllerName}/${this.actionName}`),this.Icons=ee,this.Colors=G,this.finalExamDetails$=this.finalExamsApplicationService.getFinalExamDetails(this.finalExamId,this.periodId,this.applicationId??null).pipe(T(B=>{let te=new Date(B.startDate),w=new Date(B.endDate);return I(b({},B),{isApplicationDateShown:!!B.applicationDate&&!B.applicationCancelDate||!!(B.applicationDate&&B.applicationCancelDate&&new Date(B.applicationDate).getTime()>new Date(B.applicationCancelDate).getTime()),examDurationInMinutes:`${(this.getMinutesFromDate(w)-this.getMinutesFromDate(te)).toString()} ${this.transloco.translate("exams.minute")}`,examTimeInterval:`${te.getHours()}:${String(te.getMinutes()).padStart(2,"0")} - ${w.getHours()}:${String(w.getMinutes()).padStart(2,"0")}`})}))}getMinutesFromDate(e){return e.getHours()*60+e.getMinutes()}cancelExamApplication(){this.finalExamsApplicationService.cancelExamApplication(this.periodId,this.finalExamApplicationId).subscribe({next:()=>{this.navigateToRegistration()},error:e=>{this.store.dispatch(new Fe.AddErrorPushNotification({title:e.error.notification?.[0]?.title||e.error.notification?.[0]?.description||"notification.unsuccessfulAction"}))}})}navigateToRegistration(){this.router.navigate(["exams","final-exams","registration"],{queryParams:{applicationId:this.applicationId,periodId:this.periodId},replaceUrl:!0})}getSzevFinalExamResult(e){this.finalExamDetailSummaryStore.getSzevFinalExamResult(e)}static{this.\u0275fac=function(i){return new(i||t)(f(ie),f(Oe),f(Z),f(re),f(Rt),f(Va),f(X))}}static{this.\u0275cmp=N({type:t,selectors:[["neptun-final-exam-details"]],features:[oe([Va,Fi,Ce])],decls:1,vars:0,consts:[[4,"transloco"],[4,"ngIf"],[3,"title","description"],[1,"neptun-wrapper"],["neptunBasicLayoutTopContent",""],["neptunBasicLayoutLeftContent",""],["neptunBasicLayoutRightContent",""],[1,"exam-details"],[3,"text","label","icon"],["neptun-button","",3,"accent","permissionRequired","loading","disabled","color","click",4,"ngIf"],["id","final-exam-detail-summary-szev-results-btn","class","final-exam-actions-fill-szev-results","neptun-button","",3,"postfixIcon","loading","click",4,"ngIf"],["neptun-button","",3,"click","accent","permissionRequired","loading","disabled","color"],["id","final-exam-detail-summary-szev-results-btn","neptun-button","",1,"final-exam-actions-fill-szev-results",3,"click","postfixIcon","loading"],["color","secondary",3,"sign","text",4,"ngIf"],["color","secondary",3,"sign","text"],[1,"exam-details-basic-data"],["neptunDataViewItem",""],["neptunDataViewItem","",4,"ngIf"]],template:function(i,n){i&1&&u(0,mu,3,3,"ng-container",0)},dependencies:[z,Q,ue,At,Xi,Xe,Ii,Pt,we,Ne,wt,xt,gt,H,Re,er,Ge,Ti],styles:[".exam-details[_ngcontent-%COMP%]{display:grid;gap:32px;grid-template-columns:repeat(4,1fr)}@media only screen and (max-width:992px){.exam-details[_ngcontent-%COMP%]{grid-template-columns:1fr 1fr}}@media only screen and (max-width:767px){.exam-details[_ngcontent-%COMP%]{grid-template-columns:1fr}.exam-details-basic-data[_ngcontent-%COMP%]{margin:0 20px}}"],changeDetection:0})}}return t})();var Ls=(()=>{class t{static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275cmp=N({type:t,selectors:[["neptun-placeholder"]],inputs:{title:"title",description:"description",imagePath:"imagePath"},decls:8,vars:3,consts:[[1,"placeholder"],["alt","",3,"src"],[1,"placeholder__text-wrapper"]],template:function(i,n){i&1&&(E(0),p(1,"div",0),g(2,"img",1),p(3,"div",2)(4,"h2"),_(5),l(),p(6,"div"),_(7),l()()(),S()),i&2&&(a(2),m("src",n.imagePath,ko),a(3),y(n.title),a(2),y(n.description))},styles:[".placeholder[_ngcontent-%COMP%]{color:#213055;width:100%;display:flex;flex-direction:column;text-align:center;align-items:center}.placeholder__text-wrapper[_ngcontent-%COMP%]{margin-top:32px;text-align:center}"]})}}return t})();var js=()=>[];function lu(t,r){t&1&&(p(0,"div",13),g(1,"neptun-rectangle-placeholder",14)(2,"neptun-rectangle-placeholder",14),l())}function cu(t,r){if(t&1&&(p(0,"neptun-card")(1,"div",9),g(2,"neptun-rectangle-placeholder",10)(3,"neptun-rectangle-placeholder",11),l(),u(4,lu,3,0,"div",12),l()),t&2){let e=s();a(4),m("ngForOf",$(1,js).constructor(e.textPlaceholderLength))}}function pu(t,r){t&1&&g(0,"neptun-rectangle-placeholder",20)}function du(t,r){if(t&1&&(p(0,"div")(1,"neptun-card")(2,"div",15),g(3,"neptun-rectangle-placeholder",16)(4,"neptun-rectangle-placeholder",17),l(),p(5,"div",18),u(6,pu,1,0,"neptun-rectangle-placeholder",19),l()()()),t&2){let e=s();a(6),m("ngForOf",$(1,js).constructor(e.textPlaceholderLength))}}var ks=(()=>{class t{constructor(){this.textPlaceholderLength=3}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275cmp=N({type:t,selectors:[["neptun-final-exams-dashboard-placeholder"]],inputs:{textPlaceholderLength:"textPlaceholderLength"},decls:11,vars:0,consts:[[1,"tile"],[1,"tile__container"],[1,"tile__icon"],[1,"text-container"],[1,"text-container__title"],[1,"text-container__subtitle"],[1,"text-container__button"],["neptunBasicLayoutLeftContent",""],["neptunBasicLayoutRightContent",""],[1,"left-title"],[1,"left-title__icon"],[1,"left-title__text"],["class","left-text",4,"ngFor","ngForOf"],[1,"left-text"],[1,"left-text__text"],[1,"right-content"],[1,"right-content__icon"],[1,"right-content__title"],[1,"subtitle-container"],["class","subtitle-container__subtitle",4,"ngFor","ngForOf"],[1,"subtitle-container__subtitle"]],template:function(i,n){i&1&&(p(0,"neptun-card")(1,"div",0)(2,"div",1),g(3,"neptun-rectangle-placeholder",2),p(4,"div",3),g(5,"neptun-rectangle-placeholder",4)(6,"neptun-rectangle-placeholder",5),l()(),g(7,"neptun-rectangle-placeholder",6),l()(),p(8,"neptun-basic-layout"),u(9,cu,5,2,"ng-template",7)(10,du,7,2,"ng-template",8),l())},dependencies:[Xe,It,At,Pt,xe,wt],styles:['@keyframes _ngcontent-%COMP%_placeHolderShimmer{0%{background-position:-468px 0}to{background-position:468px 0}}
1.tile[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:center;flex-direction:row;gap:unset}.tile__icon[_ngcontent-%COMP%]{width:24px;height:24px}.tile__container[_ngcontent-%COMP%]{display:flex;justify-content:unset;align-items:center;flex-direction:row;gap:unset;gap:24px}.text-container[_ngcontent-%COMP%]{display:flex;justify-content:unset;align-items:unset;flex-direction:column;gap:unset;width:286px;gap:8px;justify-content:center}.text-container__title[_ngcontent-%COMP%], .text-container__subtitle[_ngcontent-%COMP%]{width:85%;height:21px}.text-container__button[_ngcontent-%COMP%]{width:15%;height:44px;border-radius:8px}.left-title[_ngcontent-%COMP%]{display:flex;justify-content:unset;align-items:unset;flex-direction:row;gap:unset;gap:8px}.left-title__icon[_ngcontent-%COMP%]{width:24px;height:24px}.left-title__text[_ngcontent-%COMP%]{width:60%;height:24px}.right-content[_ngcontent-%COMP%]{display:flex;justify-content:unset;align-items:unset;flex-direction:row;gap:unset;gap:8px}.right-content__icon[_ngcontent-%COMP%]{width:24px;height:24px}.right-content__title[_ngcontent-%COMP%]{width:35%;height:24px}.subtitle-container[_ngcontent-%COMP%]{margin-top:24px;display:flex;justify-content:unset;align-items:unset;flex-direction:column;gap:8px}.subtitle-container__subtitle[_ngcontent-%COMP%]{width:30%;height:16px}.left-text[_ngcontent-%COMP%]{margin-top:24px;display:flex;justify-content:unset;align-items:unset;flex-direction:column;gap:8px}.left-text__text[_ngcontent-%COMP%]{width:60%;height:16px}neptun-basic-layout[_ngcontent-%COMP%]{position:relative}neptun-basic-layout[_ngcontent-%COMP%]:after{width:110%;height:100%;content:"";display:block;position:absolute;left:-32px;bottom:-32px;background:linear-gradient(0deg,#ffffff 20%,transparent 100%)}'],changeDetection:0})}}return t})();var Lt=(function(t){return t[t.FuturePeriods=0]="FuturePeriods",t[t.ActualPeriods=1]="ActualPeriods",t[t.PreviousPeriods=2]="PreviousPeriods",t})(Lt||{});var Ns=(()=>{class t{constructor(e){this.http=e,this.baseUrl=`${J.settings.apiServer.url}FinalExams/`}getNumberOfActivePeriods(){return this.http.get(`${this.baseUrl}GetNumberOfActivePeriods`).pipe(T(e=>e.data))}getActiveApplicationsOfStudent(e){return this.http.get(`${this.baseUrl}GetActiveApplicationsOfStudent`,{params:{firstCoupleOfElements:e.toString()}}).pipe(T(i=>i.data),T(i=>({activeApplications:i.activeApplications.map(o=>{let x=!!o.startDate,h=new Date(o.startDate),D=new Date(o.endDate),B=h.getFullYear()===D.getFullYear()&&h.getMonth()===D.getMonth()&&h.getDate()===D.getDate(),te=new Date,w=new Date;w.setDate(te.getDate()+14);let q=w.valueOf()-te.valueOf();return I(b({},o),{isEndDateInTwoWeeks:D.valueOf()-te.valueOf()<=q,startDate:h,endDate:D,isDatesOnSameDay:B,isStartDateSet:x})}),allApplications:i.allApplications})))}getFinalExamResults(){return this.http.get(`${this.baseUrl}GetFinalExamResults`).pipe(T(e=>e.data))}getPreviousApplicationsOfStudent(e){return this.http.get(`${this.baseUrl}GetPreviousApplicationsOfStudent`,{params:{firstCoupleOfElements:e}}).pipe(T(i=>i.data))}getFuturePeriods(){return this.http.get(`${this.baseUrl}GetFuturePeriods`).pipe(T(e=>e.data))}static{this.\u0275fac=function(i){return new(i||t)(k(de))}}static{this.\u0275prov=M({token:t,factory:t.\u0275fac,providedIn:"root"})}}return t})();var _u=["*"],xu=(t,r,e)=>({"final-exam-period-accordion-content--expanded":t,"final-exam-period-accordion-content--collapsed":r,"final-exam-period-accordion-content--hidden":e}),$s=(()=>{class t{constructor(){this.isExpanded=!1,this.isVisible=!1}onAfterExpand(){this.isExpanded=!0}onOpened(){this.isVisible=!0}onClosed(){this.isExpanded=!1}onAfterCollapse(){this.isVisible=!1}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275cmp=N({type:t,selectors:[["neptun-final-exam-periods-accordion"]],hostVars:1,hostBindings:function(i,n){i&2&&Dn("id",n.id)},inputs:{text:"text",secondaryText:"secondaryText",icon:"icon",isExpanded:"isExpanded",id:"id"},ngContentSelectors:_u,decls:14,vars:12,consts:[[1,"widget"],["togglePosition","after","displayMode","flat"],[3,"afterExpand","afterCollapse","opened","closed","id","expanded"],[1,"widget__header",3,"collapsedHeight","expandedHeight"],[1,"widget__panel-title"],[1,"widget__icon",3,"ngClass"],[1,"widget__title"],[3,"ngClass"]],template:function(i,n){i&1&&(No(),p(0,"div",0)(1,"mat-accordion",1)(2,"mat-expansion-panel",2),A("afterExpand",function(){return n.onAfterExpand()})("afterCollapse",function(){return n.onAfterCollapse()})("opened",function(){return n.onOpened()})("closed",function(){return n.onClosed()}),p(3,"mat-expansion-panel-header",3)(4,"mat-panel-title",4),E(5),g(6,"i",5),p(7,"div")(8,"h4",6),_(9),l(),p(10,"span"),_(11),l()(),S(),l()(),p(12,"div",7),$o(13),l()()()()),i&2&&(a(2),m("id",n.id+"-panel")("expanded",n.isExpanded),a(),m("collapsedHeight","94px")("expandedHeight","94px"),a(3),m("ngClass",n.icon),a(3),y(n.text),a(2),O(" ",n.secondaryText,""),a(),m("ngClass",qo(8,xu,n.isExpanded,!n.isExpanded,!n.isVisible)))},dependencies:[Wi,Hi,Gi,zi,yt],styles:[".final-exam-period-accordion-content--expanded[_ngcontent-%COMP%]{visibility:visible}.final-exam-period-accordion-content--collapsed[_ngcontent-%COMP%]{visibility:hidden}.final-exam-period-accordion-content--hidden[_ngcontent-%COMP%]{display:none}[_nghost-%COMP%]{display:block}[_nghost-%COMP%]     .mat-expansion-indicator:after{padding:5px!important;position:relative;bottom:6px}
1[_nghost-%COMP%]     .mat-expansion-panel-body{display:flex;flex-direction:column}[_nghost-%COMP%]     .mat-accordion .mat-expansion-panel .mat-expansion-panel-body{padding:0 16px 16px}[_nghost-%COMP%]     .mat-expansion-panel-header:focus-visible{margin:initial}.widget[_ngcontent-%COMP%]{margin-bottom:16px;max-width:none}.widget__icon[_ngcontent-%COMP%]{font-size:24px;color:#213055;margin-right:8px}.widget__title[_ngcontent-%COMP%]{color:#213055;flex-grow:1;margin-bottom:4px}.mat-expansion-panel-header[_ngcontent-%COMP%]{padding:0 16px}"],changeDetection:0})}}return t})();var Bs=(()=>{class t{constructor(){this.localeService=se(fe),this.transloco=se(Z)}transform(e){if(!e.isStartDateSet)return this.transloco.translate("finalExams.notRegisteredForExam");let i=this.localeService.localizeDate(e.startDate,void 0,{dateStyle:"long",timeStyle:"short"}),n;e.isDatesOnSameDay?n={timeStyle:"short"}:n={dateStyle:"long",timeStyle:"short"};let o=this.localeService.localizeDate(e.endDate,void 0,n);return`${this.transloco.translate("finalExams.finalExamDate")}: ${i} - ${o}`}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275pipe=pi({name:"formatExamDate",type:t,pure:!0})}}return t})();var Ga=t=>({count:t}),gu=t=>["result-title__icon",t],Ha=()=>({dateStyle:"long",timeStyle:"short"}),Fo=()=>({iconClass:"icon-chevron-right",fontSize:"16px",fontWeight:"800"}),Ro=()=>["period-list"],fu=()=>({"tab-periodtype":0}),To=()=>({dateStyle:"long"}),hu=(t,r)=>({fromDate:t,toDate:r}),Eu=()=>({"tab-periodtype":1}),Su=()=>({"tab-periodtype":2});function bu(t,r){if(t&1&&(g(0,"neptun-placeholder",7),c(1,"assetUrl")),t&2){let e=s(2).$implicit;m("title",e("finalExams.noFinalExamApplicationPeriod"))("imagePath",d(1,2,"assets/images/no-data/final-exams-overview-no-registration-period.svg"))}}function Cu(t,r){if(t&1){let e=j();p(0,"neptun-dashboard-tile",13),A("buttonClicked",function(){C(e);let n=s(5);return v(n.navigateToRegistrationView())}),l()}if(t&2){let e=r.ngIf,i=s(4).$implicit,n=s();m("icon",n.Icons.Lock)("iconColor",n.Colors.Tertiary)("title",i("finalExams.dashboardRegistrationTitle"))("description",i("finalExams.dashboardRegistrationDescription",be(7,Ga,e)))("buttonText",i("finalExams.dashboardRegistrationButton"))("buttonHide",e===0)("permission",n.registrationPermission)}}function vu(t,r){if(t&1&&u(0,Cu,1,9,"neptun-dashboard-tile",12),t&2){let e=s(2).ngIf;m("ngIf",e.activePeriodDetails.numberOfActivePeriods)}}function yu(t,r){if(t&1&&g(0,"neptun-result-card",17),t&2){let e=s().ngIf,i=s(4).$implicit;m("iconText",e.result.toString())("primary",i("finalExams.endResult"))("cardIndex","0")}}function Iu(t,r){if(t&1&&g(0,"neptun-data-list-item",21),t&2){let e=r.$implicit;m("item",e)}}function Tu(t,r){if(t&1&&(p(0,"neptun-card",18)(1,"div",19),g(2,"i"),p(3,"h4"),_(4),l()(),u(5,Iu,1,1,"neptun-data-list-item",20),l()),t&2){let e=s().ngIf,i=s(4).$implicit,n=s();a(2),st(be(4,gu,n.Icons.Items)),a(2),y(i("finalExams.dashboardResultsTitle")),a(),m("ngForOf",e.resultItemsForCard)}}function Fu(t,r){if(t&1&&(E(0),u(1,yu,1,3,"neptun-result-card",15)(2,Tu,6,6,"neptun-card",16),S()),t&2){let e=r.ngIf;a(),m("ngIf",e.result),a(),m("ngIf",e.resultItemsForCard.length>0)}}function Ru(t,r){if(t&1&&u(0,Fu,3,2,"ng-container",14),t&2){let e=s(2).ngIf;m("ngIf",e.finalExamResults)}}function Du(t,r){if(t&1&&(g(0,"neptun-placeholder",26),c(1,"assetUrl")),t&2){let e=s(4).$implicit;m("title",e("finalExams.noRegistrations"))("description",e("finalExams.noRegistrationPeriodSubtitle"))("imagePath",d(1,3,"assets/images/no-data/final-exams-overview-no-registrations.svg"))}}function Pu(t,r){if(t&1&&g(0,"neptun-chip",35),t&2){let e=s(2).$implicit,i=s(5).$implicit;m("text",i("personal.examId")+": "+e.examIdentifier)}}function wu(t,r){if(t&1&&g(0,"neptun-chip",36),t&2){let e=s(7).$implicit;m("text",e("finalExams.appliedToPeriod"))}}function Au(t,r){if(t&1&&(u(0,Pu,1,1,"neptun-chip",33),p(1,"div"),_(2),l(),u(3,wu,1,1,"neptun-chip",34)),t&2){let e=s().$implicit;m("ngIf",e.examIdentifier),a(2),y(e.room),a(),m("ngIf",e.applicationId)}}function Ou(t,r){if(t&1){let e=j();p(0,"neptun-warning-list-item",30),c(1,"formatExamDate"),A("click",function(){let n=C(e).$implicit,o=s(6);return v(o.navigateToPeriodDetails(n.periodId,n.periodName,n.applicationId))}),p(2,"div",31),_(3),c(4,"hyphen"),c(5,"hyphen"),c(6,"intervalDateTimePipe"),c(7,"hyphen"),l(),u(8,Au,4,3,"ng-template",32),l()}if(t&2){let e=r.$implicit,i=r.index,n=s(5).$implicit,o=s();m("id","active-application-"+(i+1))("icon",e.isEndDateInTwoWeeks?o.Icons.AlertTriangle:void 0)("title",e.periodName)("hasRightArrow",!0)("bgColor",e.isEndDateInTwoWeeks?o.Colors.WarningLightBg:void 0)("subtitle",d(1,8,e)),a(3),vt("",n("finalExams.finalExamPeriod")+": ","",d(7,18,jt(6,14,d(4,10,e.examPeriodStart),d(5,12,e.examPeriodEnd),$(20,Ha))),"")}}function Mu(t,r){if(t&1&&(p(0,"button",37),_(1),l()),t&2){let e=s().ngIf,i=s(4).$implicit,n=s();m("hasLeftOffset",!0)("postfixIcon",$(6,Fo))("permissionRequired",n.navigateToPeriodListPermission)("routerLink",$(7,Ro))("queryParams",$(8,fu)),a(),O(" ",i("onlineOccasions.viewAll",be(9,Ga,e.allApplications))," ")}}function Lu(t,r){if(t&1&&(p(0,"neptun-final-exam-periods-accordion",27),u(1,Ou,9,21,"neptun-warning-list-item",28)(2,Mu,2,11,"button",29),l()),t&2){let e=r.ngIf,i=s(4).$implicit,n=s();m("isExpanded",!0)("permissionRequired",n.activeApplicationsPermission)("text",i("finalExams.applicationsInProgress"))("secondaryText",i("finalExams.openApplicationPeriodWithApplication"))("icon",n.Icons.CalendarChecked),a(),m("ngForOf",e.activeApplications),a(),m("ngIf",e.allApplications>4)}}function ju(t,r){if(t&1&&g(0,"neptun-chip",35),t&2){let e=s(2).$implicit,i=s(5).$implicit;m("text",i("personal.examId")+": "+e.examIdentifier)}}function ku(t,r){if(t&1&&g(0,"neptun-chip",36),t&2){let e=s(7).$implicit;m("text",e("finalExams.appliedToPeriod"))}}function Nu(t,r){if(t&1&&(p(0,"div"),_(1),c(2,"translocoDate"),c(3,"translocoDate"),l(),u(4,ju,1,1,"neptun-chip",33)(5,ku,1,1,"neptun-chip",34)),t&2){let e,i=s().$implicit,n=s(5).$implicit;a(),O(" ",n("finalExams.dashboardPreviousRegistrationDescription",On(11,hu,_e(2,3,i.firstSubPeriod.startDate||((e=i.secondSubPeriod.startDate)!==null&&e!==void 0?e:""),$(9,To)),_e(3,6,i.firstSubPeriod.endDate||((e=i.secondSubPeriod.endDate)!==null&&e!==void 0?e:""),$(10,To))))," "),a(3),m("ngIf",i.examIdentifier),a(),m("ngIf",i.applicationId)}}function $u(t,r){if(t&1){let e=j();p(0,"neptun-warning-list-item",41),c(1,"hyphen"),c(2,"hyphen"),c(3,"intervalDateTimePipe"),c(4,"hyphen"),A("click",function(){let n=C(e).$implicit,o=s(6);return v(o.navigateToPreviousPeriodDetails(n))}),p(5,"div",31),_(6),c(7,"hyphen"),c(8,"hyphen"),c(9,"intervalDateTimePipe"),c(10,"hyphen"),l(),u(11,Nu,6,14,"
1ng-template",32),l()}if(t&2){let e=r.$implicit,i=r.index,n=s(5).$implicit,o=s();m("id","previous-application-"+(i+1))("permissionRequired",o.navigateToPreviousPeriodDetailsPermission)("title",e.periodName)("hasRightArrow",!0)("subtitle",d(4,15,jt(3,11,d(1,7,e.finalExaminationPeriodStartDate),d(2,9,e.finalExaminationPeriodEndDate),$(27,Ha)))),a(6),vt("",n("finalExams.finalExamPeriod")+": ","",d(10,25,jt(9,21,d(7,17,e.finalExaminationPeriodStartDate),d(8,19,e.finalExaminationPeriodEndDate),$(28,Ha))),"")}}function Bu(t,r){if(t&1&&(p(0,"button",42),_(1),l()),t&2){let e=s().ngIf,i=s(4).$implicit,n=s();m("hasLeftOffset",!0)("postfixIcon",$(6,Fo))("permissionRequired",n.navigateToPeriodListPermission)("routerLink",$(7,Ro))("queryParams",$(8,Eu)),a(),O(" ",i("onlineOccasions.viewAll",be(9,Ga,e.allPreviousApplications))," ")}}function qu(t,r){if(t&1&&(p(0,"neptun-final-exam-periods-accordion",38),u(1,$u,12,29,"neptun-warning-list-item",39)(2,Bu,2,11,"button",40),l()),t&2){let e=r.ngIf,i=s(4).$implicit,n=s();m("permissionRequired",n.previousApplicationsPermission)("text",i("finalExams.previousApplications"))("secondaryText",i("finalExams.closedApplicationPeriodWithApplication"))("icon",n.Icons.TimeHistory),a(),m("ngForOf",e.previousApplications),a(),m("ngIf",e.allPreviousApplications>4)}}function Vu(t,r){if(t&1&&g(0,"neptun-chip",36),t&2){let e=s(7).$implicit;m("text",e("finalExams.appliedToPeriod"))}}function Uu(t,r){if(t&1&&u(0,Vu,1,1,"neptun-chip",34),t&2){let e=s().$implicit;m("ngIf",e.applicationId)}}function Hu(t,r){if(t&1){let e=j();p(0,"neptun-warning-list-item",46),c(1,"intervalDateTimePipe"),A("click",function(){let n=C(e).$implicit,o=s(6);return v(o.navigateToPeriodDetails(n.periodId,n.name,n.applicationId))}),p(2,"div",31),_(3),c(4,"hyphen"),c(5,"hyphen"),c(6,"intervalDateTimePipe"),c(7,"hyphen"),l(),u(8,Uu,1,1,"ng-template",32),l()}if(t&2){let e,i=r.$implicit,n=r.index,o=s(5).$implicit;m("id","future-period-"+(n+1))("title",i.name)("hasRightArrow",!0)("subtitle",(e=jt(1,6,i.startDate,i.endDate,$(20,To)))!==null&&e!==void 0?e:""),a(3),vt("",o("finalExams.finalExamPeriod")+": ","",d(7,18,jt(6,14,d(4,10,i.startDate),d(5,12,i.endDate),$(21,Ha))),"")}}function Gu(t,r){if(t&1&&(p(0,"button",47),_(1),l()),t&2){let e=s().ngIf,i=s(4).$implicit,n=s();m("hasLeftOffset",!0)("postfixIcon",$(6,Fo))("permissionRequired",n.navigateToPeriodListPermission)("routerLink",$(7,Ro))("queryParams",$(8,Su)),a(),O(" ",i("onlineOccasions.viewAll",be(9,Ga,e.allFuturePeriods))," ")}}function zu(t,r){if(t&1&&(p(0,"neptun-final-exam-periods-accordion",43),u(1,Hu,9,22,"neptun-warning-list-item",44),c(2,"slice"),u(3,Gu,2,11,"button",45),l()),t&2){let e=r.ngIf,i=s(4).$implicit,n=s();m("permissionRequired",n.futureApplicationsPermission)("text",i("menu.futurePeriods"))("secondaryText",i("finalExams.upcomingApplicationPeriod"))("icon",n.Icons.TimeFuture),a(),m("ngForOf",jt(2,6,e.futurePeriods,0,4)),a(2),m("ngIf",e.allFuturePeriods>4)}}function Wu(t,r){if(t&1&&(u(0,Du,2,5,"neptun-placeholder",22),E(1),u(2,Lu,3,7,"neptun-final-exam-periods-accordion",23)(3,qu,3,6,"neptun-final-exam-periods-accordion",24),c(4,"async"),u(5,zu,4,10,"neptun-final-exam-periods-accordion",25),c(6,"async"),S()),t&2){let e=s(2).ngIf,i=s(2);m("ngIf",e.futurePeriods.allFuturePeriods===0&&e.previousPeriods.allPreviousApplications===0&&e.activePeriodDetails.numberOfActivePeriods===0),a(2),m("ngIf",e.activePeriods),a(),m("ngIf",d(4,4,i.previousPeriods$)),a(2),m("ngIf",d(6,6,i.futurePeriods$))}}function Qu(t,r){t&1&&(p(0,"neptun-basic-layout",8),u(1,vu,1,1,"ng-template",9)(2,Ru,1,1,"ng-template",10)(3,Wu,7,8,"ng-template",11),l()),t&2&&m("reverse",!1)}function Ku(t,r){if(t&1&&(E(0),u(1,bu,2,4,"neptun-placeholder",6)(2,Qu,4,1,"ng-template",null,1,ae),S()),t&2){let e=r.ngIf,i=Y(3);a(),m("ngIf",e.activePeriodDetails.numberOfActivePeriods===0&&e.activePeriods.allApplications===0&&e.previousPeriods.allPreviousApplications===0&&e.futurePeriods.allFuturePeriods===0&&e.finalExamResults!==null&&e.finalExamResults.resultItemsForCard.length===0)("ngIfElse",i)}}function Xu(t,r){t&1&&g(0,"neptun-final-exams-dashboard-placeholder")}function Yu(t,r){if(t&1&&(E(0),g(1,"neptun-primary-title",3),p(2,"div",4),u(3,Ku,4,2,"ng-container",5),c(4,"async"),u(5,Xu,1,0,"ng-template",null,0,ae),l(),S()),t&2){let e=r.$implicit,i=Y(6),n=s();a(),m("title",e("finalExams.dashboardTitle"))("description",e("finalExams.finalExamDescription")),a(2),m("ngIf",d(4,4,n.viewModel$))("ngIfElse",i)}}var qs=(()=>{class t{constructor(e,i,n,o){this.router=e,this.route=i,this.finalExamsOVerviewService=n,this.permissionService=o,this.Icons=ee,this.Colors=G,this.FinalExamsPeriodListEnum=Lt,this.registrationPermission={actionName:"GetActivePeriods",controllerName:"FinalExams"},this.activeApplicationsPermission={actionName:"GetActiveApplicationsOfStudent",controllerName:"FinalExams"},this.previousApplicationsPermission={actionName:"GetPreviousApplicationsOfStudent",controllerName:"FinalExams"},this.futureApplicationsPermission={actionName:"GetFuturePeriods",controllerName:"FinalExams"},this.examResultsPermission={actionName:"GetFinalExamResults",controllerName:"FinalExams"},this.navigateToPeriodListPermission={actionName:"GetPeriodsBySelectedTabType",controllerName:"FinalExams"},this.navigateToPreviousPeriodDetailsPermission={actionName:"GetPreviousApplicationDetail
1s",controllerName:"FinalExams"},this.activePeriodDetails$=this.finalExamsOVerviewService.getNumberOfActivePeriods(),this.finalExamResults$=this.hasPermission(this.examResultsPermission).pipe(U(x=>Fn(()=>x.accessMode==="enabled",this.finalExamsOVerviewService.getFinalExamResults().pipe(T(h=>I(b({},h),{resultItemsForCard:h.resultItems.filter(D=>!!D.label).map(D=>({primary:D.label,secondaryLeft:[D.value]}))}))),Ee(null)))),this.activePeriods$=this.hasPermission(this.activeApplicationsPermission).pipe(U(x=>x.accessMode==="enabled"?this.finalExamsOVerviewService.getActiveApplicationsOfStudent(!0):Ee({activeApplications:[],allApplications:0}))),this.futurePeriods$=this.hasPermission(this.futureApplicationsPermission).pipe(U(x=>x.accessMode==="enabled"?this.finalExamsOVerviewService.getFuturePeriods():Ee({futurePeriods:[],allFuturePeriods:0}))),this.previousPeriods$=this.hasPermission(this.previousApplicationsPermission).pipe(U(x=>x.accessMode==="enabled"?this.finalExamsOVerviewService.getPreviousApplicationsOfStudent(!0):Ee({previousApplications:[],allPreviousApplications:0}))),this.viewModel$=ye([this.activePeriodDetails$,this.finalExamResults$,this.activePeriods$,this.previousPeriods$,this.futurePeriods$]).pipe(T(([x,h,D,B,te])=>({activePeriodDetails:x,finalExamResults:h,activePeriods:D,previousPeriods:B,futurePeriods:te})))}navigateToRegistrationView(){this.router.navigate(["registration"],{relativeTo:this.route})}navigateToPeriodDetails(e,i,n){this.router.navigate(["current-registration",e],{relativeTo:this.route,queryParams:{periodName:i,applicationId:n}})}navigateToPreviousPeriodDetails(e){this.router.navigate(["previous-registrations",e.applicationId],{queryParams:I(b({periodName:e.periodName},e.examApplicationId&&{examApplicationId:e.examApplicationId}),{periodId:e.periodId}),relativeTo:this.route})}hasPermission(e){return this.permissionService.getAccessMode(e.controllerName,e.actionName)}static{this.\u0275fac=function(i){return new(i||t)(f(re),f(ie),f(Ns),f(gi))}}static{this.\u0275cmp=N({type:t,selectors:[["neptun-final-exams-overview"]],decls:1,vars:0,consts:[["loading",""],["dashboardContent",""],[4,"transloco"],[3,"title","description"],[1,"neptun-wrapper"],[4,"ngIf","ngIfElse"],[3,"title","imagePath",4,"ngIf","ngIfElse"],[3,"title","imagePath"],[3,"reverse"],["neptunBasicLayoutTopContent",""],["neptunBasicLayoutLeftContent",""],["neptunBasicLayoutRightContent",""],["id","registration-view",3,"icon","iconColor","title","description","buttonText","buttonHide","permission","buttonClicked",4,"ngIf"],["id","registration-view",3,"buttonClicked","icon","iconColor","title","description","buttonText","buttonHide","permission"],[4,"ngIf"],["class","final-exam-result",3,"iconText","primary","cardIndex",4,"ngIf"],["class","results-container",4,"ngIf"],[1,"final-exam-result",3,"iconText","primary","cardIndex"],[1,"results-container"],[1,"result-title"],[3,"item",4,"ngFor","ngForOf"],[3,"item"],[3,"title","description","imagePath",4,"ngIf"],["id","active-applications-accordion",3,"isExpanded","permissionRequired","text","secondaryText","icon",4,"ngIf"],["id","previous-applications-accordion",3,"permissionRequired","text","secondaryText","icon",4,"ngIf"],["id","future-periods-accordion",3,"permissionRequired","text","secondaryText","icon",4,"ngIf"],[3,"title","description","imagePath"],["id","active-applications-accordion",3,"isExpanded","permissionRequired","text","secondaryText","icon"],["focusElement","","focusElementType","general","class","registration-item",3,"id","icon","title","hasRightArrow","bgColor","subtitle","click",4,"ngFor","ngForOf"],["neptun-button","","id","view-all-active-applications-lnk",3,"hasLeftOffset","postfixIcon","permissionRequired","routerLink","queryParams",4,"ngIf"],["focusElement","","focusElementType","general",1,"registration-item",3,"click","id","icon","title","hasRightArrow","bgColor","subtitle"],["ngProjectAs","content-below-title",5,["content-below-title"],1,"final-exam-period"],["neptunWarningListItemOptionalContent",""],["class","chip",3,"text",4,"ngIf"],["class","chip applied-to-period",3,"text",4,"ngIf"],[1,"chip",3,"text"],[1,"chip","applied-to-period",3,"text"],["neptun-button","","id","view-all-active-applications-lnk",3,"hasLeftOffset","postfixIcon","permissionRequired","routerLink","queryParams"],["id","previous-applications-accordion",3,"permissionRequired","text","secondaryText","icon"],["focusElement","","focusElementType","general","class","registration-item",3,"id","permissionRequired","title","hasRightArrow","subtitle","click",4,"ngFor","ngForOf"],["neptun-button","","id","view-all-previous-applications-lnk",3,"hasLeftOffset","postfixIcon","permissionRequired","routerLink","queryParams",4,"ngIf"],["focusElement","","focusElementType","general",1,"registration-item",3,"click","id","permissionRequired","title","hasRightArrow","subtitle"],["neptun-button","","id","view-all-previous-applications-lnk",3,"hasLeftOffset","postfixIcon","permissionRequired","routerLink","queryParams"],["id","future-periods-accordion",3,"permissionRequired","text","secondaryText","icon"],["focusElement","","focusElementType","general","class","registration-item",3,"id","title","hasRightArrow","subtitle","click",4,"ngFor","ngForOf"],["neptun-button","","id","view-all-future-periods-l
1nk",3,"hasLeftOffset","postfixIcon","permissionRequired","routerLink","queryParams",4,"ngIf"],["focusElement","","focusElementType","general",1,"registration-item",3,"click","id","title","hasRightArrow","subtitle"],["neptun-button","","id","view-all-future-periods-lnk",3,"hasLeftOffset","postfixIcon","permissionRequired","routerLink","queryParams"]],template:function(i,n){i&1&&u(0,Yu,7,6,"ng-container",2)},dependencies:[z,ue,Q,Ls,At,Xi,ea,Pt,Zi,Xe,xe,Un,wt,$s,Ne,Mr,Wo,Or,Ar,we,Mn,ks,Bs,H,Ho,Ge,Dt,Re,et],styles:[".final-exam-period[_ngcontent-%COMP%]{font-weight:900}.registrations-title[_ngcontent-%COMP%]{display:flex;align-items:center}.registrations-title__icon[_ngcontent-%COMP%]{font-size:24px;margin-right:8px}.registration-item[_ngcontent-%COMP%]{display:block;border-radius:8px;margin-top:16px}.registration-item[_ngcontent-%COMP%]:hover{cursor:pointer}.results-container[_ngcontent-%COMP%]{padding:24px 8px}.result-title[_ngcontent-%COMP%]{display:flex;align-items:center;padding-left:8px}.result-title__icon[_ngcontent-%COMP%]{font-size:22px;margin-right:8px}neptun-card[_ngcontent-%COMP%] + neptun-card[_ngcontent-%COMP%]{margin-top:24px}[_nghost-%COMP%]{color:#213055}[_nghost-%COMP%]   .chip[_ngcontent-%COMP%]{display:block}[_nghost-%COMP%]     .final-exam-result .card__details{justify-content:center}[_nghost-%COMP%]     neptun-warning-list-item>div.warning-list-item{background-color:#f9f9ff}[_nghost-%COMP%]     neptun-warning-list-item>div.warning-list-item:hover{background-color:#f2f3fb}[_nghost-%COMP%]     .applied-to-period>.tag-container{background-color:#00dea4;color:#444}[_nghost-%COMP%]     .left-box{margin-right:20px!important}@media screen and (max-width:1279px){[_nghost-%COMP%]     .side-by-side-container{flex-direction:row!important}[_nghost-%COMP%]     .left-box{margin-top:0!important}}@media only screen and (max-width:992px){[_nghost-%COMP%]     .side-by-side-container{flex-direction:column!important}[_nghost-%COMP%]     .left-box{margin-bottom:20px!important;max-width:100%!important}[_nghost-%COMP%]     neptun-card{width:100%!important}}"]})}}return t})();var za=(()=>{class t{constructor(e,i){this.http=e,this.dateLocalizationService=i,this.baseUrl=`${J.settings.apiServer.url}FinalExams/`,this.defaultDetails={value:null,label:"",noTranslation:!1,type:"text",dateStyle:void 0,timeStyle:void 0},this.periodRefreshSubject=new li(!1)}refresh(){this.periodRefreshSubject.next(!0)}getMenuItems(e){let i={label:"finalExams.periodBasicData",details:[I(b({},this.defaultDetails),{label:"thesis.module",value:e.moduleName}),I(b({},this.defaultDetails),{label:"finalExams.moduleType",value:e.moduleType}),I(b({},this.defaultDetails),{label:"finalExams.periodDescription",value:e.description})]},n={label:e.secondSubPeriod?"finalExams.applicationPeriod1":"finalExams.periodApplicationPeriod",infoText:e.applicationId?"finalExams.appliedToPeriod":void 0,details:this.getPeriodTabDetails(e.firstSubPeriod)},o=e.secondSubPeriod?{label:"finalExams.applicationPeriod2",details:this.getPeriodTabDetails(e.secondSubPeriod)}:null,x=[i,n];return o&&x.push(o),x}getPeriodDetails(e,i){return this.periodRefreshSubject.asObservable().pipe(U(()=>this.http.get(`${this.baseUrl}GetPeriodDetails`,{params:b({periodId:e},i?{moduleId:i}:{})}).pipe(T(n=>n.data))))}getPeriodTabDetails(e){return[I(b({},this.defaultDetails),{label:"finalExams.periodApplicationPeriod",value:this.getDateRange(e?.startDate,e?.endDate)||"-"}),I(b({},this.defaultDetails),{label:"finalExams.periodType",value:e?.type??"-"}),I(b({},this.defaultDetails),{label:"finalExams.periodPeriodRegistrationCondition",value:e?.periodApplicationRequirement??"-"}),I(b({},this.defaultDetails),{label:"finalExams.periodExamRegistrationCondition",value:e?.examApplicationRequirement??"-"}),I(b({},this.defaultDetails),{label:"finalExams.periodSubjectRegistrationCondition",value:e?.subjectApplicationRequirement??"-"})]}getDateRange(e,i){return!e||!i?"":`${this.dateLocalizationService.localizeDate(e,void 0,{dateStyle:"long",timeStyle:"short"})} - ${this.dateLocalizationService.localizeDate(i,void 0,{dateStyle:"long",timeStyle:"short"})}`}static{this.\u0275fac=function(i){return new(i||t)(k(de),k(fe))}}static{this.\u0275prov=M({token:t,factory:t.\u0275fac,providedIn:"root"})}}return t})();var Wa=(()=>{class t{constructor(e){this.http=e,this.baseUrl=`${J.settings.apiServer.url}FinalExams/`}applicationForTopic(e){return this.http.post(`${this.baseUrl}ApplicationForTopic`,e)}getTopicsAndItems(e,i,n){return this.http.get(`${this.baseUrl}GetTopicsAndItems`,{params:{periodId:e,moduleId:i??"",applicationId:n??""}}).pipe(T(o=>o.data))}static{this.\u0275fac=function(i){return new(i||t)(k(de))}}static{this.\u0275prov=M({token:t,factory:t.\u0275fac,providedIn:"root"})}}return t})();var Zu=t=>({"neptun-theses-panel--signed":t});function Ju(t,r){if(t&1){let e=j();p(0,"mat-checkbox",17),An("ngModelChange",function(n){C(e);let o=s().$implicit;return wn(o.isSignedUp,n)||(o.isSignedUp=n),v(n)}),A("click",function(n){return C(e),v(n.stopPropagation())})("keydown",function(n){return C(e),v(n.stopPropagation())})("keydown.enter",function(n){C(e);let o=s(4);return v(o.onEnter(n))})("change",function(){C(e);let n=s().$implicit,o=s(3);return v(o.selectionChanged(n.topicId))}),l()}if(t&2){let e=s(),i=e.$implicit,n=e.index;m("id","topic-"+(n+1)+"-cb"),Pn("ngModel",i.isSignedUp),m("disabled",i.required)}}function e_(t,r){if(t&1&&(E(0),g(1,"span",18),p(2,"span"),_(3),l(),S()),t&2){let e=s(3).$implicit;a(3),y(e("subjects.registered"))}}function t_(t,r){t&1&&g(0,"i",19)}function i_(t,r){t&1&&g(0,"i",20)}function n_(t,r){if(t&1&&(p(0,"div",21)(1,"div",22),_(2),l(),p(3,"span",23),_(4),l(),g(5,"span",18),p(6,"div",24),_(7),l()()),t&2){let e=r.$implicit,i=s(3).$implicit,n=s();st(n.editable?"indented":""),a(2),y(e.name),a(2),vt("",i("global.code"),": ",e.code,""),a(3),y(e.description)}}function a_(t,r){if(t&1){let e=j();p(0,"mat-expansion-panel",6),A("opened",function(){let n=C(e).index,o=s(3);return v(o.onTopicOpen(n))})("closed",function(){let n=C(e).index,o=s(3);return v(o.onTopicClose(n))}),p(1,"mat-expansion-panel-header")(2,"mat-panel-title"),u(3,Ju,1,3,"mat-checkbox",7),p(4,"div",8)(5,"div",9),_(6),l(),p(7,"div",10),_(8),l(),p(9,"div",11)(10,"span"),_(11),l(),u(12,e_,4,1,"ng-container",12),l()()(),p(13,"mat-panel-description")(14,"div")(15,"div",13)(16,"span"),_(17),l(),u(18,t_,1,0,"i",14)(19,i_,1,0,"i",15),l()()()(),u(20,n_,8,6,"div",16),l()}if(t&2){let e=r.$implicit,i=r.index,n=s(2).$implicit,o=s();m("id",o.id+"-panel-"+(i+1))("ngClass",be(11,Zu,!o.editable&&e.isSignedUp)),a(3),m("ngIf",o.editable),a(3),y(e.name),a(2),y(e.description),a(3),y(e.required?n("global.obligatory"):n("advancement.elective")),a(),m("ngIf",e.isSignedUpShown),a(5),O(" ",n("finalExams.elements"),""),a(),m("ngIf",o.topicsOpenState[i]),a(),m("ngIf",!o.topicsOpenState[i]),a(),m("ngForOf",e.topicItems)}}function o_(t,r){if(t&1&&(E(0),p(1,"mat-accordion",4),u(2,a_,21,13,"mat-expansion-panel",5),l(),S()),t&2){let e=s(2);a(),m("id",e.id+"-accordion")("hideToggle",!0),a(),m("ngForOf",e._topics)}}function r_(t,r){if(t&1&&(g(0,"neptun-data-missing-placeholder",25),c(1,"assetUrl")),t&2){let e=s().$implicit;m("title",e("finalExams.noThemes"))("imageUrl",d(1,2,"assets/images/no-data/no-curriculum.svg"))}}function s_(t,r){if(t&1&&(E(0),p(1,"div",2),u(2,o_,3,3,"ng-container",3)(3,r_,2,4,"ng-template",null,0,ae),l(),S()),t&2){let e=Y(4),i=s();a(2),m("ngIf",i._topics&&i._topics.length>0)("ngIfElse",e)}}var Qa=(()=>{class t{constructor(){this.editable=!1,this.topicChanged=new He,this.lastSelectedTopicIndex=-1}set topics(e){e?.length&&(this._topics=e.map(i=>I(b({},i),{topicItems:i.topicItems?.sort((n,o)=>n.name.localeCompare(o.name))||[],isSignedUpShown:i.isSignedUp})),this.topicsOpenState=[],e.forEach(()=>this.topicsOpenState.push(!1)))}selectionChanged(e){let i=this._topics.find(n=>n.topicId===e);i&&this.topicChanged.emit(i)}onTopicOpen(e){this.lastSelectedTopicIndex=e,this.topicsOpenState[e]=!0}onTopicClose(e){this.topicsOpenState[e]=!1}onEnter(e){e.target.click()}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275cmp=N({type:t,selectors:[["neptun-final-exams-the
1ses-accordion"]],hostVars:1,hostBindings:function(i,n){i&2&&Dn("id",n.id)},inputs:{editable:"editable",topics:"topics",id:"id"},outputs:{topicChanged:"topicChanged"},decls:1,vars:0,consts:[["noThemes",""],[4,"transloco"],[1,"accordion-wrapper"],[4,"ngIf","ngIfElse"],[1,"neptun-theses-accordion",3,"id","hideToggle"],["class","neptun-theses-panel",3,"id","ngClass","opened","closed",4,"ngFor","ngForOf"],[1,"neptun-theses-panel",3,"opened","closed","id","ngClass"],["class","neptun-theses-panel__checkbox","color","primary",3,"id","ngModel","disabled","ngModelChange","click","keydown","keydown.enter","change",4,"ngIf"],[1,"neptun-theses-panel__title-text"],[1,"neptun-theses-panel__title"],[1,"neptun-theses-panel__description"],[1,"neptun-theses-panel__type"],[4,"ngIf"],[1,"neptun-theses-panel__right-content"],["class","icon-chevron-top neptun-theses-panel__chevron-icon",4,"ngIf"],["class","icon-chevron-bottom neptun-theses-panel__chevron-icon",4,"ngIf"],["class","thesis-item",3,"class",4,"ngFor","ngForOf"],["color","primary",1,"neptun-theses-panel__checkbox",3,"ngModelChange","click","keydown","keydown.enter","change","id","ngModel","disabled"],[1,"thesis-item__separator"],[1,"icon-chevron-top","neptun-theses-panel__chevron-icon"],[1,"icon-chevron-bottom","neptun-theses-panel__chevron-icon"],[1,"thesis-item"],[1,"thesis-item__title"],[1,"thesis-item__code"],[1,"thesis-item__description"],[3,"title","imageUrl"]],template:function(i,n){i&1&&u(0,s_,5,2,"ng-container",1)},dependencies:[z,Q,Wi,xe,Hi,yt,Gi,zi,Zo,nt,tt,it,Vn,_t,et],styles:['@charset "UTF-8";.mat-mdc-expansion-panel-header[_ngcontent-%COMP%]{height:auto;padding:16px 12px}mat-panel-title[_ngcontent-%COMP%]{display:flex}mat-panel-description[_ngcontent-%COMP%]{display:block;flex-grow:1}mat-panel-description[_ngcontent-%COMP%], span[_ngcontent-%COMP%]{display:block}mat-accordion[_ngcontent-%COMP%]   mat-expansion-panel[_ngcontent-%COMP%]{border-top:2px solid rgba(34,34,34,.2);margin:0;padding-top:12px}mat-accordion[_ngcontent-%COMP%]   mat-expansion-panel[_ngcontent-%COMP%]:first-child{border-top:0}[_nghost-%COMP%]     mat-expansion-panel mat-expansion-panel-header{padding:0 16px;margin-bottom:12px;height:auto}[_nghost-%COMP%]     mat-expansion-panel mat-expansion-panel-header.mat-expanded{height:auto}[_nghost-%COMP%]     mat-expansion-panel .mat-expansion-panel-header:focus-visible{margin:0 0 12px}mat-accordion[_ngcontent-%COMP%]   mat-expansion-panel[_ngcontent-%COMP%]:last-child{border-bottom:2px solid rgba(34,34,34,.2)}[_nghost-%COMP%]     mat-checkbox{margin:0 8px;transform:scale(1.3)}[_nghost-%COMP%]     mat-checkbox .mat-checkbox-frame{border-color:#213055}[_nghost-%COMP%]     mat-checkbox .mat-mdc-checkbox .mdc-checkbox .mdc-checkbox__native-control[disabled]~.mdc-checkbox__background{background-color:unset;border-color:unset}[_nghost-%COMP%]     mat-checkbox.mdc-checkbox--disabled, [_nghost-%COMP%]     mat-checkbox.mat-mdc-checkbox-disabled{opacity:.3}[_nghost-%COMP%]     mat-checkbox.mdc-checkbox--disabled .mat-checkbox-frame, [_nghost-%COMP%]     mat-checkbox.mat-mdc-checkbox-disabled .mat-checkbox-frame{border-color:#dadada}[_nghost-%COMP%]     mat-checkbox.mdc-checkbox--disabled .mat-checkbox-checkmark-path, [_nghost-%COMP%]     mat-checkbox.mat-mdc-checkbox-disabled .mat-checkbox-checkmark-path{stroke:#dadada!important}.accordion-wrapper[_ngcontent-%COMP%]{margin-top:16px}.mat-accordion[_ngcontent-%COMP%]   .neptun-theses-panel[_ngcontent-%COMP%]{box-shadow:none}.mat-accordion[_ngcontent-%COMP%]   .neptun-theses-panel__title-text[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:2px}.mat-accordion[_ngcontent-%COMP%]   .neptun-theses-panel__title[_ngcontent-%COMP%]{color:#213055;font-size:16px;font-weight:800}.mat-accordion[_ngcontent-%COMP%]   .neptun-theses-panel__description[_ngcontent-%COMP%]{font-weight:400;font-size:16px}.mat-accordion[_ngcontent-%COMP%]   .neptun-theses-panel__type[_ngcontent-%COMP%]{font-weight:13px;font-weight:400;color:#666;display:flex;flex-direction:row;gap:2px}.mat-accordion[_ngcontent-%COMP%]   .neptun-theses-panel__right-content[_ngcontent-%COMP%]{margin-left:auto;width:fit-content;color:#0943d9;font-size:16px;font-weight:800;display:flex;flex-direction:row;gap:4px;align-items:center}.mat-accordion[_ngcontent-%COMP%]   .neptun-theses-panel__chevron-icon[_ngcontent-%COMP%]{font-weight:800;font-size:24px}.mat-accordion[_ngcontent-%COMP%]   .neptun-theses-panel--signed[_ngcontent-%COMP%]{border-radius:0;margin-bottom:0;border-left:4px solid #00dea4}.thesis-item[_ngcontent-%COMP%]{padding:0 16px;margin-bottom:16px;font-size:13px}.thesis-item__title[_ngcontent-%COMP%]{font-weight:900}
1.thesis-item__separator[_ngcontent-%COMP%]:after{content:"\\2022";color:#d3d3d3}.thesis-item__code[_ngcontent-%COMP%], .thesis-item__separator[_ngcontent-%COMP%], .thesis-item__description[_ngcontent-%COMP%]{display:inline}.thesis-item__code[_ngcontent-%COMP%], .thesis-item__description[_ngcontent-%COMP%]{font-weight:400}.thesis-item__description[_ngcontent-%COMP%]{margin-left:8px}.indented[_ngcontent-%COMP%]{margin-left:32px}']})}}return t})();var m_=t=>({topicNum:t});function l_(t,r){if(t&1){let e=j();E(0,6),p(1,"div",7)(2,"b"),_(3),l(),_(4),l(),p(5,"neptun-final-exams-theses-accordion",8),A("topicChanged",function(n){C(e);let o=s(2);return v(o.onTopicChanged(n))}),l(),S()}if(t&2){let e=s().$implicit,i=s();a(3),y(e("finalExams.youMustChooseNTopic",be(4,m_,i.minimumRequiedTopic))),a(),O(" ",e("finalExams.mandatoryTopicsAreAutomaticallyIncluded")," "),a(),m("topics",i.topics)("editable",!0)}}function c_(t,r){if(t&1){let e=j();E(0),p(1,"neptun-basic-dialog-layout")(2,"h2",1),_(3),l(),u(4,l_,6,6,"ng-container",2),c(5,"async"),E(6,3),p(7,"button",4),_(8),l(),p(9,"button",5),A("click",function(){C(e);let n=s();return v(n.apply())}),_(10),l(),S(),l(),S()}if(t&2){let e=r.$implicit,i=s();a(3),O("",e("finalExams.topicSelection")," "),a(),m("ngIf",d(5,6,i.isLoading$)!==!0),a(4),y(e("button.cancel")),a(),m("permissionRequired",i.applyPermission)("disabled",i.selectedTopicNum<i.minimumRequiedTopic),a(),y(e(i.data.applicationId?"button.modify":"finalExams.buttonRegister"))}}var En=(()=>{class t{constructor(e,i,n,o,x,h){this.data=e,this.finalExamsTopicsService=i,this.finalExamsApplicationService=n,this.loadingService=o,this.store=x,this.dialogRef=h,this.applicationForPeriodPermission={actionName:"ApplicationForPeriod",controllerName:"FinalExams"},this.ModifyApplicationForTopicPermission={actionName:"ModifyApplicationForTopic",controllerName:"FinalExams"},this.minimumRequiedTopic=0,this.selectedTopicNum=0,this.topics=[],this.isLoading$=this.loadingService.isLoadingByUrls(["FinalExams/GetTopicsAndItems"])}get applyPermission(){return this.data.applicationId?this.ModifyApplicationForTopicPermission:this.applicationForPeriodPermission}setSelectedTopicNum(){this.selectedTopicNum=this.topics.filter(e=>e.isSignedUp&&!e.required).length}ngOnInit(){this.finalExamsTopicsService.getTopicsAndItems(this.data.periodId,this.data.moduleId,this.data.applicationId).pipe(W(1),T(e=>I(b({},e),{topics:e.topics.map(i=>I(b({},i),{isSignedUp:this.data.applicationId?i.isSignedUp:i.required}))}))).subscribe(e=>{this.minimumRequiedTopic=e.minimumRequiedTopic,this.topics=e.topics,this.setSelectedTopicNum()})}onTopicChanged(e){let i=this.topics.findIndex(n=>e.topicId===n.topicId);i>-1&&this.topics.splice(i,1,e),this.setSelectedTopicNum()}apply(){if(this.data.requestFormFillBeforeApplication)this.finalExamsApplicationService.applicationForPeriodWithRequestForm({moduleId:this.data.moduleId,periodId:this.data.periodId,intervalEndDate:this.data.intervalEndDate,topicIds:this.topics.filter(e=>e.isSignedUp).map(e=>e.topicId)}).pipe(W(1),F(()=>this.dialogRef.close())).subscribe();else{let e=this.topics.filter(i=>i.isSignedUp&&!i.required).map(i=>i.topicId);if(this.data.applicationId){let i={applicationId:this.data.applicationId,modifiedTopicIds:e,periodId:this.data.periodId};this.finalExamsApplicationService.modifyApplicationForTopic(i).pipe(W(1),F(()=>{this.store.dispatch(new Fe.AddSuccessPushNotification({title:"notification.successfulApplication"})),this.dialogRef.close(!0)})).subscribe()}else{let i={periodId:this.data.periodId,moduleId:this.data.moduleId,topicIds:e};this.finalExamsApplicationService.applicationForPeriod(i).pipe(W(1),F(()=>{this.store.dispatch(new Fe.AddSuccessPushNotification({title:"notification.successfulApplication"})),this.dialogRef.close(!0)})).subscribe()}}}static{this.\u0275fac=function(i){return new(i||t)(f(ui),f(Wa),f(Oe),f(Rt),f(X),f(di))}}static{this.\u0275cmp=N({type:t,selectors:[["neptun-application-for-topic-dialog"]],decls:1,vars:0,consts:[[4,"transloco"],["title","",1,"mat-h2"],["content","",4,"ngIf"],["actions",""],["neptun-button","","matDialogClose","","color","white","id","close-application-for-topic-dialog-btn"],["neptun-button","","id","proceed-with-topic-application-btn","color","primary","accent","flat",3,"click","permissionRequired","disabled"],["content",""],[1,"dialog__info"],["id","final-exam-theses",3,"topicChanged","topics","editable"]],template:function(i,n){i&1&&u(0,c_,11,8,"ng-container",0)},dependencies:[z,hi,Q,Qa,we,_i,Ne,H],styles:[".dialog__info[_ngcontent-%COMP%]{margin-top:8px;margin-bottom:20px}"],changeDetection:0})}}return t})();function p_(t,r){if(t&1){let e=j();p(0,"neptun-data-table",2),c(1,"async"),c(2,"async"),A("getNext",function(n){C(e);let o=s();return v(o.getNextItems(n))}),l()}if(t&2){let e=r.ngIf,i=s();m("dataSource",e.result)("columns",d(1,5,i.displayedColumns$))("isNextVisible",e.isNextVisible)("isMultipleActionMobileModeSupported",!0)("loadingPlaceholder",d(2,7,i.loadingPlaceholder$))}}var Hs=(()=>{class t extends bt{constructor(e,i,n,o,x,h,D){super(i,D),this.activatedRoute=e,this.finalExamsExamsService=i,this.finalExamsApplicationService=n,this.router=o,this.dateLocalizationService=x,this.transloco=h,this.interfaceIdentity=me.FinalExamsGetFinalExamsByPeriod,this.periodId=this.activatedRoute.snapshot.params.periodId,this.applicationId=this.activatedRoute.snapshot.queryParams?.applicationId,this.periodName=this.activatedRoute.snapshot.queryParams.periodName,this.defaultFilterModel={periodId:this.periodId,applicationId:this.applicationId},this.defaultOrderBy={sort:"asc",sortablePropertyName:"startDate",text:""},this.isMultiMobileActionSupported=!0}
1ngOnInit(){super.ngOnInit(),ye([this.activatedRoute.params,this.activatedRoute.queryParams]).pipe(F(([e,i])=>{this.periodId=e.periodId,this.defaultFilterModel.periodId=e.periodId,this.defaultFilterModel.applicationId=i.applicationId}),Et(this.destroy$)).subscribe(),this.dataSource$=this.dataSourceWithPaging$.pipe(T(e=>({result:e.result.map(i=>this.convertToTableRow(i)),isNextVisible:e.isNextVisible})))}convertToTableRow(e){let i=this.dateLocalizationService.localizeDate(e.startDate,void 0,{dateStyle:"long",timeStyle:"short"}),n=()=>this.router.navigate(["exams","final-exams","current-registration",this.periodId,"exam",e.finalExamId],{queryParams:{finalExamId:e.finalExamId,examTime:i,applicationId:this.applicationId,periodName:this.periodName,subjectName:e.subjectName}}),o=e.maxNumberOfApplicants!==null?e.maxNumberOfApplicants:this.transloco.translate("exams.unlimited").toLowerCase(),x=`${e.numberOfApplicants} / ${o}`,h=I(b({},e),{startDate:i,applicantsInfo:x,uiDisplayState:ma(this.finalExamsApplicationService.getUIDisplayState(e.isSzev??!1,e.examApplicationId?.toString(),e.examAbsenceStatus),[this.transloco.translate("personal.examId")+": "+e.examIdentifier])}),D={actionName:"GetFinalExamDetails",controllerName:"FinalExams"};return{data:h,detailsPermission:D,detailsCallback:n,actions:{details:{text:"button.details",hasArrow:!0,color:G.Primary,callback:n,permission:D}}}}static{this.\u0275fac=function(i){return new(i||t)(f(ie),f(Fi),f(Oe),f(re),f(fe),f(Z),f(dt))}}static{this.\u0275cmp=N({type:t,selectors:[["neptun-final-exams-exams"]],features:[ve],decls:4,vars:6,consts:[[3,"itemAction","actionsMenu"],[3,"dataSource","columns","isNextVisible","isMultipleActionMobileModeSupported","loadingPlaceholder","getNext",4,"ngIf"],[3,"getNext","dataSource","columns","isNextVisible","isMultipleActionMobileModeSupported","loadingPlaceholder"]],template:function(i,n){i&1&&(p(0,"neptun-table-header-actions",0),c(1,"async"),A("itemAction",function(x){return n.itemAction(x)}),l(),u(2,p_,3,9,"neptun-data-table",1),c(3,"async")),i&2&&(m("actionsMenu",d(1,2,n.moreActionsMenuItems$)),a(2),m("ngIf",d(3,4,n.dataSource$)))},dependencies:[Q,Ue,H,at],encapsulation:2,changeDetection:0})}}return t})();var Ka=(()=>{class t extends pt{constructor(e){super(),this.httpClient=e,this.columns=[{text:"finalExams.nameOfFinalExam",key:"name",disableSort:!0},{text:"finalExams.examDescription",key:"description",type:"html",disableSort:!0},{text:"exams.signInDate",key:"subjectApplicationDate",type:"date",dateStyle:"long",timeStyle:"short",disableSort:!0},{text:"global.result",key:"result",disableSort:!0}]}getItemsFromServer(e,i,n,o){let x=I(b({},n),{firstRow:e,lastRow:o??e+this.listItemCount});return i&&(x[i.sortablePropertyName]=i.sort),this.httpClient.get(`${J.settings.apiServer.url}FinalExams/GetSubjectsByPeriod`,{params:St(x)}).pipe(T(h=>h.data))}getSubjectDetails(e){return this.httpClient.get(`${J.settings.apiServer.url}FinalExams/GetSubjectDetailsForFinalExam`,{params:{subjectId:e}}).pipe(T(i=>i.data))}static{this.\u0275fac=function(i){return new(i||t)(k(de))}}static{this.\u0275prov=M({token:t,factory:t.\u0275fac,providedIn:"root"})}}return t})();function d_(t,r){if(t&1){let e=j();p(0,"neptun-data-table",1),c(1,"async"),c(2,"async"),A("getNext",function(n){C(e);let o=s();return v(o.getNextItems(n))}),l()}if(t&2){let e=r.ngIf,i=s();m("dataSource",e.result)("columns",d(1,4,i.displayedColumns$))("isNextVisible",e.isNextVisible)("loadingPlaceholder",d(2,6,i.loadingPlaceholder$))}}var zs=(()=>{class t extends bt{constructor(e,i,n,o,x){super(i,x),this.activatedRoute=e,this.finalExamsSubjectsService=i,this.finalExamsApplicationService=n,this.router=o,this.interfaceIdentity=me.FinalExamsSubjectsByPeriod,this.periodId=this.activatedRoute.snapshot.params.periodId,this.applicationId=this.activatedRoute.snapshot.queryParams?.applicationId,this.defaultFilterModel={periodId:this.periodId,applicationId:this.applicationId},this.defaultOrderBy={sortablePropertyName:"subjectName",text:"",sort:"asc"},this.translocoService=se(Z)}ngOnInit(){super.ngOnInit(),this.dataSource$=this.dataSourceWithPaging$.pipe(T(e=>({result:e.result.map(i=>this.convertToTableRow(i)),isNextVisible:e.isNextVisible})))}convertToTableRow(e){let i=()=>{this.router.navigate(["subject-details",e.subjectId],{relativeTo:this.activatedRoute,queryParams:{subjectName:e.name,subjectCode:e.code},queryParamsHandling:"merge"})},n={controllerName:"FinalExams",actionName:"GetSubjectDetailsForFinalExam"};return{data:I(b({},e),{uiDisplayState:ma(this.finalExamsApplicationService.getUIDisplayState(!1,e.subjectApplicationId,Ct.DEFAULT),[`${this.translocoService.translate("subjects.subjectCode")}: ${e.code}`])}),detailsPermission:n,detailsCallback:i,actions:{details:{text:"button.details",hasArrow:!0,color:G.Primary,callback:i,permission:n}}}}static{this.\u0275fac=function(i){return new(i||t)(f(ie),f(Ka),f(Oe),f(re),f(dt))}}static{this.\u0275cmp=N({type:t,selectors:[["neptun-final-exams-subjects"]],features:[ve],decls:2,vars:3,consts:[[3,"dataSource","columns","isNextVisible","loadingPlaceholder","getNext",4,"ngIf"],[3,"getNext","dataSource","columns","isNextVisible","loadingPlaceholder"]],template:function(i,n){i&1&&(u(0,d_,3,8,"neptun-data-table",0),c(1,"async")),i&2&&m("ngIf",d(1,1,n.dataSource$))},dependencies:[Q,Ue,H],encapsulation:2,changeDetection:0})}}return t})();var u_=()=>({dateStyle:"long",timeStyle:"short"}),__=()=>({iconClass:"icon-chevron-right",fontSize:"16px",fontWeight:"800"});function x_(t,r){if(t&1&&(p(0,"div",17)(1,"dt"),_(2),l(),p(3,"dd"),_(4),c(5,"hyphen"),l()()),t&2){let e=r.$implicit,i=s(5).$implicit;a(2),y(i(e.label)),a(2),O(" ",d(5,2,e.value)," ")}}function g_(t,r){if(t&1&&(p(0,"neptun-data-view")(1,"dl"),u(2,x_,6,4,"div",16),l()()),t&2){let e=s().$implicit;a(2),m("ngForOf",e.details)}}function f_(t,r){if(t&1&&(p(0,"neptun-tab",15),u(1,g_,3,1,"ng-template",12),l()),t&2){let e=r.$implicit,i=s(3).$implicit;m("label",i(e.label))("error",e.infoText&&i(e.infoText))}}function h_(t,r){if(t&1&&(p(0,"neptun-tab-selector",13,0),u(2,f_,2,2,"neptun-tab",14),
1c(3,"async"),l()),t&2){let e=s(3);m("hasNavigation",!1)("tabSelectorName","tab-selector-final-exams-period"),a(2),m("ngForOf",d(3,3,e.menuItems$))}}function E_(t,r){if(t&1){let e=j();p(0,"button",22),c(1,"async"),A("click",function(){C(e);let n=s(2).ngIf,o=s(2);return v(o.sendApplication(n))}),_(2),l()}if(t&2){let e=s(3).$implicit,i=s();m("permissionRequired",i.applyPermission)("id","dc88b1c8-21f3-4d1e-b280-5a8837aa655a")("accent","flat")("loading",d(1,5,i.isLoading$)===!0),a(2),O(" ",e("finalExams.buttonRegister")," ")}}function S_(t,r){if(t&1){let e=j();p(0,"button",22),c(1,"async"),A("click",function(){C(e);let n=s(2).ngIf,o=s(2);return v(o.openApplicationForTopicDialog(n))}),_(2),l()}if(t&2){let e=s(3).$implicit,i=s();m("permissionRequired",i.topicPermission)("id","b79d5493-2e84-4624-b01e-7d1cf2f24771")("accent","flat")("loading",d(1,5,i.isLoading$)===!0),a(2),O(" ",e("finalExams.modifyTheme")," ")}}function b_(t,r){if(t&1){let e=j();p(0,"button",23),c(1,"async"),A("click",function(){C(e);let n=s().ngIf,o=s(3);return v(o.cancelApplication(n.applicationId))}),_(2),l()}if(t&2){let e=s(3).$implicit,i=s();m("permissionRequired",i.cancelPermission)("id","60b52599-3c3c-4ab4-af54-554b97b2d030")("accent","flat")("color","error")("loading",d(1,6,i.isLoading$)===!0),a(2),O(" ",e("finalExams.buttonWithdraw")," ")}}function C_(t,r){if(t&1){let e=j();p(0,"button",22),c(1,"async"),A("click",function(){C(e);let n=s(2).ngIf,o=s(2);return v(o.openApplicationForTopicDialog(n))}),_(2),l()}if(t&2){let e=s(3).$implicit,i=s();m("permissionRequired",i.topicPermission)("id","d83c0b92-9219-4647-828e-23f0c7d1562e")("accent","flat")("loading",d(1,5,i.isLoading$)===!0),a(2),O(" ",e("finalExams.buttonRegister")," ")}}function v_(t,r){if(t&1){let e=j();p(0,"button",24),c(1,"async"),A("click",function(){C(e);let n=s(2).ngIf,o=s(2);return v(o.navigateToRequestForm(n))}),_(2),l()}if(t&2){let e=s(3).$implicit,i=s();m("hasLeftOffset",!0)("postfixIcon",$(6,__))("permissionRequired",d(1,4,i.navigateToRequestFormPermission$)),a(2),O(" ",e("erasmus.requestFormDetails")," ")}}function y_(t,r){if(t&1&&(p(0,"div",18),u(1,E_,3,7,"button",19)(2,S_,3,7,"button",19)(3,b_,3,8,"button",20)(4,C_,3,7,"button",19)(5,v_,3,7,"button",21),l()),t&2){let e=r.ngIf,i=s().ngIf;a(),m("ngIf",!e.applicationId&&!e.withTopic&&e.canApply),a(),m("ngIf",!!e.applicationId&&e.enableTopicModifiedApplication),a(),m("ngIf",!!e.applicationId&&e.canUnsubScribe),a(),m("ngIf",!e.applicationId&&e.withTopic),a(),m("ngIf",i.requestFormId)}}function I_(t,r){if(t&1&&(g(0,"neptun-secondary-title",26),c(1,"async"),g(2,"neptun-final-exams-theses-accordion",27),c(3,"async")),t&2){let e,i=s(2).ngIf,n=s().$implicit,o=s();m("title",n("finalExams.topics"))("description",i.firstSubPeriod.periodApplicationRequirement||i.secondSubPeriod!=null&&i.secondSubPeriod.periodApplicationRequirement?d(1,5,o.periodApplicationDate$):"")("hasHorizontalPaddingUnderDesktop",!0)("hasVerticalMargin",!1),a(2),m("topics",(e=d(3,7,o.topicsAndItems$))==null?null:e.topics)}}function T_(t,r){if(t&1&&(p(0,"neptun-tab",25),u(1,I_,4,9,"ng-template",12),l()),t&2){let e=s(2).$implicit,i=s();m("permission",i.topicsTabPermission)("label",e("finalExams.topics"))}}function F_(t,r){if(t&1&&(g(0,"neptun-secondary-title",26),c(1,"async"),g(2,"neptun-final-exams-subjects")),t&2){let e=s(2).ngIf,i=s().$implicit,n=s();m("title",i("finalExams.finalExamSubjects"))("description",e.firstSubPeriod.examApplicationRequirement||e.secondSubPeriod!=null&&e.secondSubPeriod.examApplicationRequirement?d(1,4,n.periodApplicationDate$):"")("hasHorizontalPaddingUnderDesktop",!0)("hasVerticalMargin",!1)}}function R_(t,r){if(t&1&&(p(0,"neptun-tab",25),u(1,F_,3,6,"ng-template",12),l()),t&2){let e=s(2).$implicit,i=s();m("permission",i.examSubjectsTabPermission)("label",e("finalExams.finalExamSubjects"))}}function D_(t,r){if(t&1&&(g(0,"neptun-secondary-title",26),c(1,"async"),g(2,"neptun-final-exams-exams")),t&2){let e=s().ngIf,i=s().$implicit,n=s();m("title",i("finalExams.finalExamDates"))("description",e.firstSubPeriod.subjectApplicationRequirement||e.secondSubPeriod!=null&&e.secondSubPeriod.subjectApplicationRequirement?d(1,4,n.periodApplicationDate$):"")("hasHorizontalPaddingUnderDesktop",!0)("hasVerticalMargin",!1)}}function P_(t,r){if(t&1&&(E(0),g(1,"neptun-primary-title",3),c(2,"hyphen"),c(3,"hyphen"),c(4,"intervalDateTimePipe"),c(5,"hyphen"),p(6,"div",4)(7,"div",5),u(8,h_,4,5,"neptun-tab-selector",6),c(9,"async"),l(),u(10,y_,6,5,"div",7),c(11,"async"),l(),p(12,"div",8)(13,"neptun-tab-group",9),u(14,T_,2,2,"neptun-tab",10),c(15,"async"),u(16,R_,2,2,"neptun-tab",10),c(17,"async"),p(18,"neptun-tab",11),u(19,D_,3,6,"ng-template",12),l()()(),S()),t&2){let e,i,n=r.ngIf,o=s().$implicit,x=s();a(),m("title",n.name)("description",o("finalExams.finalExamPeriod")+": "+d(5,19,jt(4,15,d(2,11,n.startDate),d(3,13,n.endDate),$(29,u_)))),a(7
1),m("ngIf",d(9,21,x.tabPermission$)),a(2),m("ngIf",d(11,23,x.applicationPossibilities$)),a(3),m("tabGroupName","tab-final-exams-period")("hasPadding",!1)("navigationFragment","tabGroup")("id","tabGroup"),a(),m("ngIf",((e=d(15,25,x.topicsTabAccessMode$))==null?null:e.accessMode)!=="hidden"&&n.withTopic),a(2),m("ngIf",((i=d(17,27,x.examSubjectsTabAccessMode$))==null?null:i.accessMode)!=="hidden"&&n.withSubject),a(2),m("label",o("finalExams.finalExamDates"))}}function w_(t,r){if(t&1&&(E(0),u(1,P_,20,30,"ng-container",2),c(2,"async"),S()),t&2){let e=s();a(),m("ngIf",d(2,1,e.periodDetails$))}}var Do=(()=>{class t{constructor(e,i,n,o,x,h,D,B,te){this.router=e,this.activatedRoute=i,this.finalExamsApplicationService=n,this.finalExamsTopicsService=o,this.store=x,this.loadingService=h,this.dialogService=D,this.finalExamsPeriodDetailsService=B,this.permissionService=te,this.cancelPermission={controllerName:"FinalExams",actionName:"CancelPeriodApplication"},this.applyPermission={controllerName:"FinalExams",actionName:"ApplicationForPeriod"},this.topicPermission={controllerName:"FinalExams",actionName:"GetTopicsAndItems"},this.topicsTabPermission={controllerName:"FinalExams",actionName:"GetTopicsAndItems"},this.examSubjectsTabPermission={controllerName:"FinalExams",actionName:"GetSubjectsByPeriod"},this.sentBackDetailsPermission={controllerName:"FinalExams",actionName:"GetSentBackToCorrectionRequestFormDetails"},this.submittedDetailsPermission={controllerName:"FinalExams",actionName:"GetSubmittedRequestFormDetails"},this.topicsTabAccessMode$=this.permissionService.getAccessMode("FinalExams","GetTopicsAndItems"),this.examSubjectsTabAccessMode$=this.permissionService.getAccessMode("FinalExams","GetSubjectsByPeriod"),this.Colors=G,this.periodId=this.activatedRoute?.snapshot?.params?.periodId,this.moduleId=this.activatedRoute.snapshot.queryParams.moduleId,this.applicationId=this.activatedRoute.snapshot.queryParams.applicationId,this.translocoService=se(Z),this.tabPermission$=this.permissionService.getAccessModeUsingGuid(Pe.FinalExams_GetPeriodDetails).pipe(T(w=>w.accessMode==="enabled")),this.isTopicApplicationAllowed$=this.finalExamsApplicationService.isApplicationForTopicAllowed$,this.periodDetails$=this.finalExamsPeriodDetailsService.getPeriodDetails(this.periodId,this.moduleId),this.navigateToRequestFormPermission$=this.periodDetails$.pipe(T(w=>w.requestFormHasBeenSentBackToCorrection?this.sentBackDetailsPermission:this.submittedDetailsPermission)),this.topicsAndItems$=this.periodDetails$.pipe(U(w=>this.finalExamsTopicsService.getTopicsAndItems(this.periodId,w.moduleId,w.applicationId))),this.menuItems$=this.periodDetails$.pipe(T(w=>this.finalExamsPeriodDetailsService.getMenuItems(w))),this.applicationPossibilities$=this.periodDetails$.pipe(T(w=>{let q=new Date,V=new Date(w.firstSubPeriod?.startDate??"")<q&&q<new Date(w.firstSubPeriod?.endDate??"")||new Date(w.secondSubPeriod?.startDate??"")<q&&q<new Date(w.secondSubPeriod?.endDate??"");return{canApply:(w.enableApplicationForPeriod||w.requestFormFillBeforeApplication)&&V,canUnsubScribe:w.enableCancelPeriodApplication&&V,applicationId:w.applicationId,enableTopicModifiedApplication:w.enableTopicModifiedApplication&&V,enableCancelTopicApplication:w.enableCancelTopicApplication&&V,withTopic:w.withTopic&&V}})),this.isLoading$=this.loadingService.isLoadingByUrls(["FinalExams/ApplicationForPeriod","FinalExams/CancelPeriodApplication","FinalExams/ModifyApplicationForTopic","FinalExams/CancelTopicApplication","FinalExams/GetRequestFormTemplate","FinalExams/ApplicationForPeriod"]).pipe(jo(!1)),this.periodApplicationDate$=this.periodDetails$.pipe(T(w=>Date.now()<new Date(w.firstSubPeriod?.endDate??"").getTime()?this.translocoService.translate("finalExams.periodApplicationPeriod")+": "+this.finalExamsPeriodDetailsService.getDateRange(w.firstSubPeriod?.startDate,w.firstSubPeriod?.endDate):Date.now()<new Date(w.secondSubPeriod?.endDate??"").getTime()?this.finalExamsPeriodDetailsService.getDateRange(w.secondSubPeriod?.startDate,w.secondSubPeriod?.endDate):""))}navigateToRequestForm(e){let i=e.requestFormHasBeenSentBackToCorrection?["sent-back",e.requestFormId]:[e.requestFormId];this.router.navigate(i,{relativeTo:this.activatedRoute,queryParams:{requestForm:e.requestFormTemplateName},queryParamsHandling:"merge"})}openApplicationForTopicDialog(e){this.dialogService.openDialog(En,{periodId:this.periodId,moduleId:e.moduleId,requestFormFillBeforeApplication:e.requestFormFillBeforeApplication,intervalEndDate:new Date(e.endDate),applicationId:e.applicationId}).afterClosed().pipe(W(ki.ONE),le(Boolean),F(()=>{this.finalExamsPeriodDetailsService.refresh()})).subscribe()}sendApplication(e){e.withTopic?this.dialogService.openDialog(En,{periodId:this.periodId,moduleId:e.moduleId,requestFormFillBeforeApplication:e.requestFormFillBeforeApplication,intervalEndDate:new Date(e.endDate)}):e.requestFormFillBeforeApplication?this.finalExamsApplicationService.applicationForPeriodWithRequestForm({moduleId:e.moduleId,periodId:this.periodId,intervalEndDate:new Date(e.endDate)}).pipe(W(1)).subscribe():this.finalExamsApplicationService.applicationForPeriod({periodId:this.periodId,moduleId:e.moduleId}).pipe(F(()=>{this.store.dispatch(new Fe.AddSuccessPushNotification({title:"notification.successfulApplication"})),this.finalExamsPeriodDetailsService.refresh()}),W(1)).subscribe()}cancelApplication(e){this.finalExamsApplicationService.cancelPeriodApplication(e,this.periodId).pipe(F(()=>{this.store.dispatch(new Fe.AddSuccessPushNotification({title:"notification.successfulDeregistration"})),this.finalExamsPeriodDetailsService.refresh()}),W(1)).subscribe()}static{this.\u0275fac=function(i){return new(i||t)(f(re),f(ie),f(Oe),f(Wa),f(X),f(Rt),f(Ve),f(za),f(gi))}}static{this.\u0275cmp=N({type:t,selectors:[["neptun-final-exams-period-details"]],decls:1,vars:0,consts:[["tabSelector",""],[4,"transloco"],[4,"ngIf"],[3,"title","description"],[1,"neptun-wrapper-padding"],[1,"menu-items"],[3,"hasNavigation","tabSelectorName",4,"ngIf"],["class","register-button-wrapper",4,"ngIf"],[1,"neptun-wrapper"],[3,"tabGroupName","hasPadding","navigationFragment","id"],[3,"permission","label",4,"ngIf"],[3,"label"],["neptunTabContent",""],[3,"hasNavigation","tabSelectorName"],[3,"label","error",4,"ngFor","ngForOf"],[3,"label","error"],["neptunDataViewItem","",4,"ngFor","ngForOf"],["neptunDataViewItem",""],[1,"register-button-wrapper"],["neptun-button","",3,"permissionRequired","id","accent","loading","click",4,"ngIf"],["neptun-button","",3,"permissionRequired","id","accent","color","loading","click",4,"ngIf"],["neptun-button","",3,"hasLeftOffset","postfixIcon","permissionRequired","click",4,"ngIf"],["neptun-button","",3,"click","permissionRequired","id","accent","loading"],["neptun-button","",3,"click","permissionRequired","id","accent","color","loading"],["neptun-button","",3,"click","hasLeftOffset","postfixIcon","permissionRequired"],[3,"permission","label"],[3,"title","description","hasHorizontalPaddingUnderDesktop","hasVerticalMargin"],["id","final-exam-details-theses",3,"topics"]],template:function(i,n){i&1&&u(0,w_,3,3,"ng-container",1)},dependencies:[z,Q,ue,cr,xe,Si,Qi,xt,gt,we,Ne,Ki,Qa,zs,Hs,H,Dt,Re,Vt],styles:[".menu-items[_ngcontent-%COMP%]{margin:32px 0}.register-button-wrapper[_ngcontent-%COMP%]{display:flex;align-items:center;gap:32px;margin:24px 0}[_nghost-%COMP%]     neptun-tab-group>div:first-child{margin-bottom:32px}.topics-period-application-date[_ngcontent-%COMP%]{font-weight:800;margin:8px 0}@media only screen and (max-width:767px){.register-button-wrapper[_ngcontent-%COMP%]   button[_ngcontent-%COMP%]{width:100%}}@media only screen and (max-width:767px){.neptun-tab-title[_ngcontent-%COMP%]{margin:20px}}"],changeDetection:0})}}return t})();var Ws=(()=>{class t extends pt{constructor(e){super(),this.http=e,this.columns=[{key:"periodName",text:"finalExams.nameOfFinalExamPeriod",disableSort:!0},{key:"examDate",text:"finalExams.finalExamDate",disableSort:!0},{key:"subjects",text:"finalExams.finalExamSubject",type:"html",disableSort:!0}],this.intervalDateTimePipe=new Dt(se(fe))}setTabType(e){this.selectedTabTypeEnum=e}getItemsFromServer(e,i,n,o){let x=b(b({selectedTabTypeEnum:this.selectedTabTypeEnum}
1,n),this.getSortModel(e,i,o));return this.http.get(`${J.settings.apiServer.url}FinalExams/GetPeriodsBySelectedTabType`,{params:St(x)}).pipe(T(h=>h.data),T(h=>h.map(D=>I(b({},D),{examDate:this.intervalDateTimePipe.transform(D.startDate,D.endDate,void 0,!1),finalExamPeriodDate:this.intervalDateTimePipe.transform(D.examPeriodStart,D.examPeriodEnd,void 0,!1)||"\u2013",subjects:D.subjects.map(B=>`${B.name} (${B.code})`)}))))}static{this.\u0275fac=function(i){return new(i||t)(k(de))}}static{this.\u0275prov=M({token:t,factory:t.\u0275fac,providedIn:"root"})}}return t})();function O_(t,r){t&1&&Be(0)}function M_(t,r){if(t&1&&u(0,O_,1,0,"ng-container",9),t&2){s();let e=Y(16);m("ngTemplateOutlet",e)}}function L_(t,r){t&1&&Be(0)}function j_(t,r){if(t&1&&u(0,L_,1,0,"ng-container",9),t&2){s();let e=Y(16);m("ngTemplateOutlet",e)}}function k_(t,r){t&1&&Be(0)}function N_(t,r){if(t&1&&u(0,k_,1,0,"ng-container",9),t&2){s();let e=Y(16);m("ngTemplateOutlet",e)}}function $_(t,r){if(t&1){let e=j();p(0,"neptun-filter-v2",13),c(1,"async"),c(2,"async"),c(3,"async"),c(4,"async"),A("filterClick",function(n){C(e);let o=s(3);return v(o.filterItems(n))})("closed",function(){C(e);let n=s(3);return v(n.toggleFilter())})("keepOpenChanged",function(){C(e);let n=s(3);return v(n.keepOpenChanged())})("latestFilterLoad",function(n){C(e);let o=s(3);return v(o.loadFilters(n))})("showMoreFilterChanged",function(n){C(e);let o=s(3);return v(o.showMoreFilterToggle(n))})("resetFilter",function(){C(e);let n=s(3);return v(n.resetFilterModel())}),g(5,"neptun-form-input",14)(6,"neptun-form-date-range-picker",15),l()}if(t&2){let e=s(2).$implicit,i=s();m("hasMoreFilter",!1)("latestFilter",d(1,11,i.latestFilter$))("showMoreFilter",d(2,13,i.showMoreFilter$))("keepOpen",d(3,15,i.keepFilterOpen$))("canFilter",!0)("isLoading",d(4,17,i.isLoading$)===!0),a(5),m("label",e("finalExams.subjectNameAndCode"))("ngModel",i.filterModel.subjectNameAndCode),a(),m("id","interval")("label",e("exams.examTime"))("ngModel",i.filterModel.interval)}}function B_(t,r){if(t&1&&(g(0,"neptun-data-table",16),c(1,"async"),c(2,"async")),t&2){let e=r.ngIf,i=s(3);m("dataSource",e)("columns",d(1,3,i.displayedColumns$))("loadingPlaceholder",d(2,5,i.loadingPlaceholder$))}}function q_(t,r){if(t&1&&(u(0,$_,7,19,"neptun-filter-v2",10),c(1,"async"),p(2,"div",11),u(3,B_,3,7,"neptun-data-table",12),c(4,"async"),l()),t&2){let e=s(2);m("ngIf",d(1,2,e.isFilterOpen$)),a(3),m("ngIf",d(4,4,e.dataSource$))}}function V_(t,r){if(t&1){let e=j();E(0),g(1,"neptun-primary-title",3),p(2,"neptun-tab-group",4,0),A("tabChange",function(n){C(e);let o=s();return v(o.onTabChange(n))}),p(4,"neptun-tab",5),u(5,M_,1,1,"ng-template",6),l(),p(6,"neptun-tab",5),u(7,j_,1,1,"ng-template",6),l(),p(8,"neptun-tab",5),u(9,N_,1,1,"ng-template",6),l(),E(10,7),p(11,"neptun-table-header-actions",8),c(12,"async"),c(13,"async"),c(14,"async"),A("orderBy",function(n){C(e);let o=s();return v(o.orderBy(n))})("itemAction",function(n){C(e);let o=s();return v(o.itemAction(n))})("toggleFilter",function(){C(e);let n=s();return v(n.toggleFilter())}),l(),S(),u(15,q_,5,6,"ng-template",null,1,ae),l(),S()}if(t&2){let e=r.$implicit,i=s();a(),m("title",e("finalExams.periodList")),a(),m("tabGroupName","tab-periodtype"),a(2),m("label",e("finalExams.applicationsInProgress")),a(2),m("label",e("finalExams.previousApplications")),a(2),m("label",e("menu.futurePeriods")),a(3),m("isListDataLoading",d(12,9,i.loadingPlaceholder$)===!0)("filterCount",d(13,11,i.filterCount$))("isFilterOpen",d(14,13,i.isFilterOpen$))("hasFilter",!0)}}var Qs=(()=>{class t extends bt{constructor(e,i,n,o){super(e,n),this.finalExamsPeriodListService=e,this.transloco=i,this.facadeService=n,this.router=o,this.filterModel={subjectNameAndCode:void 0,interval:{startDate:null,endDate:null}},this.defaultFilterModel={},this.isLoading$=this.finalExamsPeriodListService.loading$,this.interfaceIdentity=me.FinalExamsPeriodList}onTabChange(e){let i=this.defaultFilterModel.selectedTabTypeEnum;switch(e){case 0:this.defaultFilterModel.selectedTabTypeEnum=Lt.ActualPeriods;break;case 1:this.defaultFilterModel.selectedTabTypeEnum=Lt.PreviousPeriods;break;case 2:this.defaultFilterModel.selectedTabTypeEnum=Lt.FuturePeriods;break}i!==this.defaultFilterModel.selectedTabTypeEnum&&this.defaultFilterModel.selectedTabTypeEnum!==void 0&&this.finalExamsPeriodListService.setTabType(this.defaultFilterModel.selectedTabTypeEnum)}
1ngOnInit(){super.ngOnInit(),this.dataSource$=this.dataSourceAllItem$.pipe(T(e=>e.map(i=>this.convertToTableRow(i))))}convertToTableRow(e){let i=this.defaultFilterModel.selectedTabTypeEnum===Lt.PreviousPeriods?{actionName:"GetPreviousApplicationDetails",controllerName:"FinalExams"}:void 0,n=this.defaultFilterModel.selectedTabTypeEnum===Lt.FuturePeriods;return{data:I(b({},e),{subjects:Array.isArray(e.subjects)?this.getSubjectListHtml(e.subjects):e.subjects,uiDisplayState:{type:0,reasons:[this.transloco.translate("finalExams.finalExamPeriod")+": "+e.finalExamPeriodDate]}}),actions:{details:{text:"button.details",hasArrow:!0,color:G.Primary,callback:()=>{this.navigateToDetails(e)},permission:i}},statusColor:e.applicationId&&n?G.Secondary:void 0,detailsPermission:i}}getSubjectListHtml(e){let i="<ul>";for(let n of e)i+=`<li>${n}</li>`;return i+="</ul>",i}navigateToDetails(e){switch(this.defaultFilterModel.selectedTabTypeEnum){case Lt.ActualPeriods:this.router.navigate(["exams","final-exams","registration","period",e.periodId],{queryParams:b(b({periodName:e.periodName,periodId:e.periodId},e.applicationId&&{applicationId:e.applicationId}),e.examApplicationId&&{examApplicationId:e.examApplicationId}),queryParamsHandling:"merge"});break;case Lt.FuturePeriods:this.router.navigate(["exams","final-exams","registration","period",e.periodId],{queryParams:b(b({periodName:e.periodName,periodId:e.periodId},e.applicationId&&{applicationId:e.applicationId}),e.examApplicationId&&{examApplicationId:e.examApplicationId}),queryParamsHandling:"merge"});break;case Lt.PreviousPeriods:this.router.navigate(["exams","final-exams","previous-registrations",e.applicationId],{queryParams:b(b({periodName:e.periodName,periodId:e.periodId},e.applicationId&&{applicationId:e.applicationId}),e.examApplicationId&&{examApplicationId:e.examApplicationId}),queryParamsHandling:"merge"});break}}static{this.\u0275fac=function(i){return new(i||t)(f(Ws),f(Z),f(dt),f(re))}}static{this.\u0275cmp=N({type:t,selectors:[["neptun-final-exams-period-list"]],features:[ve],decls:1,vars:0,consts:[["tabGroup",""],["grid",""],[4,"transloco"],[3,"title"],[3,"tabChange","tabGroupName"],[3,"label"],["neptunTabContent",""],["right-content",""],[3,"orderBy","itemAction","toggleFilter","isListDataLoading","filterCount","isFilterOpen","hasFilter"],[4,"ngTemplateOutlet"],["class","neptun-wrapper-padding",3,"hasMoreFilter","latestFilter","showMoreFilter","keepOpen","canFilter","isLoading","filterClick","closed","keepOpenChanged","latestFilterLoad","showMoreFilterChanged","resetFilter",4,"ngIf"],[1,"neptun-wrapper"],[3,"dataSource","columns","loadingPlaceholder",4,"ngIf"],[1,"neptun-wrapper-padding",3,"filterClick","closed","keepOpenChanged","latestFilterLoad","showMoreFilterChanged","resetFilter","hasMoreFilter","latestFilter","showMoreFilter","keepOpen","canFilter","isLoading"],["id","subjectNameAndCode","name","subjectNameAndCode",1,"filter-element",3,"label","ngModel"],["name","interval","fromDateKey","startDate","toDateKey","endDate",1,"filter-element",3,"id","label","ngModel"],[3,"dataSource","columns","loadingPlaceholder"]],template:function(i,n){i&1&&u(0,V_,17,15,"ng-container",2)},dependencies:[z,ue,Ki,Si,Qi,qt,at,Q,Tt,Ft,nt,tt,it,sr,Ue,H],styles:["[_nghost-%COMP%]     neptun-tab-group .tab-group-wrapper{height:95px}@media only screen and (max-width:767px){[_nghost-%COMP%]     neptun-tab-group .tab-group-wrapper{height:auto}}"],changeDetection:0})}}return t})();var Xa=Di(Pi()),Mi=(function(t){return t.Minutes="minutes",t.Hours="hours",t.Days="days",t})(Mi||{});function Po(t,r,e=Mi.Minutes){if(!t||!r)return null;let i=(0,Xa.default)(t),n=(0,Xa.default)(r),o=Xa.default.duration(n.diff(i));switch(e){case Mi.Minutes:return o.asMinutes();case Mi.Hours:return o.asHours();case Mi.Days:return o.asDays();default:return null}}var Ks=Di(Pi()),Sn=(function(t){return t.HoursAndMinutes="HH:mm",t})(Sn||{});function bn(t,r){return t?(0,Ks.default)(t).format(r):null}var U_=["inputTopics",""],H_=t=>({"theses-panel--theses-taken":t});function G_(t,r){if(t&1&&(p(0,"div",14),_(1),l()),t&2){let e=s().$implicit,i=s().$implicit;a(),vt("",i("global.result"),": ",e.result,"")}}function z_(t,r){if(t&1&&(E(0),g(1,"span",15),p(2,"span"),_(3),l(),S()),t&2){let e=s(2).$implicit;a(3),y(e("subjects.registered"))}}function W_(t,r){t&1&&g(0,"i",16)}function Q_(t,r){t&1&&g(0,"i",17)}function K_(t,r){if(t&1&&(p(0,"div",18)(1,"div",19),_(2),l(),p(3,"span",20),_(4),c(5,"hyphen"),l(),g(6,"span",21),p(7,"span",22),_(8),c(9,"hyphen"),l(),g(10,"span",21),p(11,"div",23),_(12),c(13,"hyphen"),l()()),t&2){let e=r.$implicit,i=s(2).$implicit;a(2),y(e.name),a(2),vt("",i("global.result"),": ",d(5,6,e.result),""),a(4),vt("",i("global.code"),": ",d(9,8,e.code),""),a(4),y(d(13,10,e.description))}}function X_(t,r){if(t&1){let e=j();p(0,"mat-expansion-panel",4),A("opened",function(){let n=C(e).index,o=s(2);return v(o.toggleTopic(n))})("closed",function(){let n=C(e).index,o=s(2);return v(o.toggleTopic(n))}),p(1,"mat-expansion-panel-header")(2,"mat-panel-title")(3,"div",5),_(4),l(),p(5,"div",6),_(6),l(),u(7,G_,2,2,"div",7),p(8,"div",8)(9,"span"),_(10),l(),u(11,z_,4,1,"ng-container",9),l(
1)(),p(12,"mat-panel-description")(13,"div")(14,"div",10),_(15),u(16,W_,1,0,"i",11)(17,Q_,1,0,"i",12),l()()()(),u(18,K_,14,12,"div",13),l()}if(t&2){let e=r.$implicit,i=r.index,n=s().$implicit,o=s();m("ngClass",be(10,H_,e.isSignedUp)),a(4),y(e.name),a(2),y(e.description),a(),m("ngIf",e.result),a(3),y(e.isRequired?n("global.obligatory"):n("advancement.elective")),a(),m("ngIf",e.isSignedUp),a(4),O("",n("finalExams.elements")," "),a(),m("ngIf",o.topics[i].isOpen),a(),m("ngIf",!o.topics[i].isOpen),a(),m("ngForOf",e.topicItems)}}function Y_(t,r){if(t&1&&(E(0),p(1,"div",1)(2,"mat-accordion",2),u(3,X_,19,12,"mat-expansion-panel",3),l()(),S()),t&2){let e=s();a(2),m("hideToggle",!0),a(),m("ngForOf",e.topics)}}var Xs=(()=>{class t{constructor(){this.topics=[]}set inputTopics(e){e?.length&&(this.topics=e.map(i=>I(b({},i),{topicItems:i.topicItems?.sort((n,o)=>n.name.localeCompare(o.name))||[],isOpen:!1})))}toggleTopic(e){this.topics[e].isOpen=!this.topics[e].isOpen}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275cmp=N({type:t,selectors:[["neptun-final-exams-previous-themes","inputTopics",""]],inputs:{inputTopics:"inputTopics"},attrs:U_,decls:1,vars:0,consts:[[4,"transloco"],[1,"accordion-wrapper"],[1,"theses-accordion",3,"hideToggle"],["class","theses-panel",3,"ngClass","opened","closed",4,"ngFor","ngForOf"],[1,"theses-panel",3,"opened","closed","ngClass"],[1,"theses-panel__title"],[1,"theses-panel__description"],["class","theses-panel__result",4,"ngIf"],[1,"theses-panel__type"],[4,"ngIf"],[1,"theses-panel__right-content"],["class","icon-chevron-top",4,"ngIf"],["class","icon-chevron-bottom",4,"ngIf"],["class","thesis-item",4,"ngFor","ngForOf"],[1,"theses-panel__result"],[1,"theses-panel__separator"],[1,"icon-chevron-top"],[1,"icon-chevron-bottom"],[1,"thesis-item"],[1,"thesis-item__title"],[1,"thesis-item__result"],[1,"thesis-item__separator"],[1,"thesis-item__code"],[1,"thesis-item__description"]],template:function(i,n){i&1&&u(0,Y_,4,2,"ng-container",0)},dependencies:[z,Wi,xe,Hi,yt,Gi,zi,Q,Vn,Re],styles:['@charset "UTF-8";.mat-expansion-panel-header[_ngcontent-%COMP%]{height:auto;padding:16px 12px}.mat-expansion-panel-header[_ngcontent-%COMP%]   mat-panel-title[_ngcontent-%COMP%], .mat-expansion-panel-header[_ngcontent-%COMP%]   mat-panel-description[_ngcontent-%COMP%], .mat-expansion-panel-header[_ngcontent-%COMP%]   span[_ngcontent-%COMP%]{display:block}mat-accordion[_ngcontent-%COMP%]   mat-expansion-panel[_ngcontent-%COMP%]{border-top:2px solid rgba(34,34,34,.2)}mat-accordion[_ngcontent-%COMP%]   mat-expansion-panel[_ngcontent-%COMP%]:first-child{border-top:0}mat-accordion[_ngcontent-%COMP%]   mat-expansion-panel[_ngcontent-%COMP%]:last-child{border-bottom:2px solid rgba(34,34,34,.2)}.accordion-wrapper[_ngcontent-%COMP%]{margin-top:16px}.mat-accordion[_ngcontent-%COMP%]   .theses-panel[_ngcontent-%COMP%]{box-shadow:none}.mat-accordion[_ngcontent-%COMP%]   .theses-panel__title[_ngcontent-%COMP%]{color:#213055;font-size:16px}.mat-accordion[_ngcontent-%COMP%]   .theses-panel__description[_ngcontent-%COMP%], .mat-accordion[_ngcontent-%COMP%]   .theses-panel__result[_ngcontent-%COMP%]{font-weight:400;font-size:16px}.mat-accordion[_ngcontent-%COMP%]   .theses-panel__right-content[_ngcontent-%COMP%]{margin-left:auto;width:fit-content;color:#0943d9;font-size:16px}.mat-accordion[_ngcontent-%COMP%]   .theses-panel__type[_ngcontent-%COMP%]{display:flex;flex-direction:row;gap:2px;font-weight:13px;font-weight:400;color:#666}.mat-accordion[_ngcontent-%COMP%]   .theses-panel__separator[_ng
1content-%COMP%]:after{content:"\\2022";color:#d3d3d3}.mat-accordion[_ngcontent-%COMP%]   .theses-panel--theses-taken[_ngcontent-%COMP%]{border-left:4px solid #00dea4}.thesis-item[_ngcontent-%COMP%]{padding:0 16px;margin-bottom:16px;font-size:13px}.thesis-item__title[_ngcontent-%COMP%]{font-weight:900}.thesis-item__separator[_ngcontent-%COMP%]:after{content:"\\2022";color:#d3d3d3}.thesis-item__code[_ngcontent-%COMP%], .thesis-item__description[_ngcontent-%COMP%]{display:inline;font-weight:400}.thesis-item__separator[_ngcontent-%COMP%], .thesis-item__description[_ngcontent-%COMP%], .thesis-item__code[_ngcontent-%COMP%]{margin-left:8px}.thesis-item__result[_ngcontent-%COMP%], .thesis-item__code[_ngcontent-%COMP%], .thesis-item__description[_ngcontent-%COMP%]{color:#666}'],changeDetection:0})}}return t})();var Ys=()=>({dateStyle:"long"}),Z_=()=>({dateStyle:"long",timeStyle:"short"});function J_(t,r){if(t&1&&(g(0,"neptun-primary-title",15),c(1,"intervalDateTimePipe"),c(2,"hyphen")),t&2){let e=r.ngIf,i=s().ngIf,n=s().$implicit;Bo("description",`
2        `,n("finalExams.finalExamDates")+": ",`
3        `,d(2,8,jt(1,4,i.periodStartDate,i.periodEndDate,$(10,Ys))),`
4      `),m("title",e)}}function e0(t,r){if(t&1&&(p(0,"div",16)(1,"p",17),_(2),c(3,"hyphen"),l()()),t&2){let e=s().ngIf,i=s().$implicit;a(2),y(i("finalExams.finalExamSubject")+": "+d(3,1,e.currentAppliedSubject))}}function t0(t,r){if(t&1&&(p(0,"neptun-card")(1,"div",18),g(2,"neptun-icon-detail-item",19)(3,"neptun-icon-detail-item",20)(4,"neptun-icon-detail-item",20),c(5,"hyphen"),c(6,"translocoDate"),g(7,"neptun-icon-detail-item",19),c(8,"hyphen"),g(9,"neptun-icon-detail-item",21),l()()),t&2){let e=s().ngIf,i=s().$implicit,n=s();a(2),m("label",i("finalExams.previousRegistrationState"))("text",e.status)("icon",n.Icons.CircleChecked),a(),m("label",i("exams.examDate"))("text",e.examDuration)("subText",e.examTimeInterval)("icon",n.Icons.Calendar),a(),m("label",i("menu.role"))("text",d(5,17,e.exactTimeHoursAndMinutes))("subText",_e(6,19,e.exactTime,$(24,Ys)))("icon",n.Icons.Time),a(3),m("label",i("finalExams.previousRegistrationExamType"))("text",d(8,22,e.type))("icon",n.Icons.PencilEdit),a(2),m("text",e.openApplicationsRemaining)("label",e.applicantsPerMa
4xApplicants)("icon",n.Icons.Group)}}function i0(t,r){if(t&1&&g(0,"neptun-rating-card",24),t&2){let e=s(2).ngIf;m("sign",e.examResultNumber)("text",e.examResult)}}function n0(t,r){if(t&1){let e=j();p(0,"neptun-navigation-button",25),A("click",function(){C(e);let n=s(2).ngIf,o=s(2);return v(o.navigateToRequestForm(n.requestFormId,n.requestFormTemplateName,n.requestFormHasBeenSentBackToCorrection))}),l()}if(t&2){let e=s(3).$implicit,i=s();m("text",e("finalExams.previousRegistrationRequestButton"))("icon",i.Icons.PaperClip)}}function a0(t,r){if(t&1&&u(0,i0,1,2,"neptun-rating-card",22)(1,n0,1,2,"neptun-navigation-button",23),t&2){let e=s().ngIf;m("ngIf",!!e.examResult),a(),m("ngIf",!!e.requestFormId)}}function o0(t,r){if(t&1&&(p(0,"div",26)(1,"neptun-data-view")(2,"dl")(3,"div",27)(4,"dt"),_(5),l(),p(6,"dd",28),_(7),c(8,"hyphen"),l()(),p(9,"div",27)(10,"dt"),_(11),l(),p(12,"dd",28),_(13),c(14,"hyphen"),l()(),p(15,"div",27)(16,"dt"),_(17),l(),p(18,"dd",28),_(19),c(20,"translocoDate"),c(21,"hyphen"),l()(),p(22,"div",27)(23,"dt"),_(24),l(),p(25,"dd",28),_(26),c(27,"hyphen"),l()(),p(28,"div",27)(29,"dt"),_(30),l(),p(31,"dd",28),_(32),c(33,"boolToString"),c(34,"hyphen"),l()(),p(35,"div",27)(36,"dt"),_(37),l(),p(38,"dd",28),_(39),c(40,"hyphen"),l()()()()()),t&2){let e=s().ngIf,i=s().$implicit;a(5),y(i("personal.examId")),a(2),O(" ",d(8,12,e.examIdentifier)," "),a(4),y(i("finalExams.examNumber")),a(2),O(" ",d(14,14,e.serialNumber)," "),a(4),y(i("exams.sign
4InDate")),a(2),O(" ",d(21,19,_e(20,16,e.applicationDate,$(29,Z_)))," "),a(5),y(i("finalExams.examAssignedRoom")),a(2),O(" ",d(27,21,e.room)," "),a(4),y(i("exams.szevExam")),a(2),O(" ",d(34,25,d(33,23,e.isSzev))," "),a(5),y(i("finalExams.examDescription")),a(2),O(" ",d(40,27,e.description)," ")}}function r0(t,r){if(t&1&&g(0,"neptun-final-exams-previous-themes",30),t&2){let e=s(2).ngIf;m("inputTopics",e.topics)}}function s0(t,r){if(t&1&&u(0,r0,1,1,"neptun-final-exams-previous-themes",29),t&2){let e=s().ngIf,i=Y(14);m("ngIf",e.topics.length>0)("ngIfElse",i)}}function m0(t,r){if(t&1&&(g(0,"neptun-data-missing-placeholder",31),c(1,"assetUrl")),t&2){let e=s(2).$implicit;m("title",e("finalExams.noThemes"))("imageUrl",d(1,2,"assets/images/no-data/no-curriculum.svg"))}}function l0(t,r){if(t&1&&g(0,"neptun-data-table",32),t&2){let e=s().ngIf,i=s(2);m("dataSource",e.subjects)("columns",i.subjectColumns)("isNextVisible",!1)}}function c0(t,r){if(t&1&&g(0,"neptun-data-table",32),t&2){let e=s().ngIf,i=s(2);m("dataSource",e.finalExams)("columns",i.finalExamColumns)("isNextVisible",!1)}}function p0(t,r){if(t&1&&(E(0),u(1,J_,3,11,"neptun-primary-title",4),c(2,"async"),u(3,e0,4,3,"div",5),p(4,"div",6)(5,"div",7)(6,"neptun-basic-layout"),u(7,t0,10,25,"ng-template",8)(8,a0,2,2,"ng-template",9)(9,o0,41,30,"ng-template",10),l()(),p(10,"neptun-tab-group",11)(11,"neptun-tab",12),u(12,s0,1,2,"ng-template",13),l(),u(13,m0,2,4,"ng-template",null,1,ae),p(15,"neptun-tab",14),u(16,l0,1,3,"ng-template",13),l(),p(17,"neptun-tab",14),u(18,c0,1,3,"ng-template",13),l()()(),S()),t&2){let e=r.ngIf,i=s().$implicit,n=s();a(),m("ngIf",d(2,15,n.periodNameWithDate$)),a(2),m("ngIf",e.currentAppliedSubject),a(7),m("tabGroupName","tab-previous-final-exams")("hasPadding",!1)("navigationFragment",n.fragmentName)("id",n.fragmentName),a(),m("isLabelShownInTab",e.topics.length>0)("isRerenderEnabled",!0)("label",i("finalExams.topics")),a(4),m("isLabelShownInTab",!0)("isRerenderEnabled",!0)("label",i("finalExams.finalExamSubjects")),a(2),m("isLabelShownInTab",!0)("isRerenderEnabled",!0)("label",i("finalExams.finalExamDates"))}}function d0(t,r){t&1&&g(0,"neptun-details-with-cards-left-placeholder")}function u0(t,r){if(t&1&&(E(0),u(1,p0,19,17,"ng-container",3),c(2,"async"),u(3,d0,1,0,"ng-template",null,0,ae),S()),t&2){let e=Y(4),i=s();a(),m("ngIf",d(2,2,i.applicationDetails$))("ngIfElse",e)}}var Zs=(()=>{class t{getStatusText(e){let i=new Date,n=e.startDate?new Date(e.startDate):null,o=e.endDate?new Date(e.endDate):null,x;return n&&o?i<n?x=this.translocoService.translate("finalExams.expected"):i>=n&&i<=o?x=this.translocoService.translate("semesterRegistration.inProgress"):x=this.translocoService.translate("finalExams.previousRegistrationCompleted"):x="-",x}constructor(e,i,n,o,x){this.dateLocalizationService=e,this.translocoService=i,this.router=n,this.activatedRoute=o,this.finalExamsApplicationService=x,this.formatTime=bn,this.calculateTimeDifference=Po,this.Icons=ee,this.periodName=this.activatedRoute.snapshot.queryParams.periodName,this.periodId=this.activatedRoute.snapshot.queryParams.periodId,this.fragmentName="tabGroup",this.Colors=G,this.finalExamColumns=[{key:"startDate",text:"finalExams.finalExamDate",type:"date",dateStyle:"long",timeStyle:"short",disableSort:!0},{key:"exactTime",text:"menu.role",type:"date",dateStyle:"long",timeStyle:"short",disableSort:!0},{key:"applicantsInfo",text:"finalExams.applicants",disableSort:!0},{key:"result",text:"menu.results",disableSort:!0},{key:"subjectName",text:"internship.subject",disableSort:!0}],this.subjectColumns=[{key:"name",text:"finalExams.finalExamSubject",disableSort:!0},{key:"code",text:"subjects.subjectCode",disableSort:!0},{key:"result",text:"finalExams.results",disableSort:!0}],this.applicationDetails$=this.activatedRoute.params.pipe(U(h=>this.finalExamsApplicationService.getPreviousApplicationDetails(h.applicationId,this.activatedRoute.snapshot.queryParams.examApplicationId)),T(h=>I(b(I(b({},h),{topics:h.topics??[],finalExams:h.finalExams.map(D=>this.convertToFinalExamTableRow(D)),subjects:h.subjects.map(D=>this.convertToSubjectTableRow(D)),status:this.getStatusText(h)}),h.startDate&&h.endDate&&{examTimeInterval:`${bn(h.startDate,Sn.HoursAndMinutes)} - ${bn(h.endDate,Sn.HoursAndMinutes)}`}),{examDuration:this.getExamDuration(h.startDate,h.endDate),openApplicationsRemaining:this.translocoService.translate("finalExams.examSpaces",{count:h.maxNumberOfApplicants!==null?h.maxNumberOfApplicants-h.numberOfApplicants:this.translocoService.translate("exams.unlimited").toLowerCase()}
4),applicantsPerMaxApplicants:this.translocoService.translate("finalExams.examSpacesLabel",{headcount:h.numberOfApplicants,max:h.maxNumberOfApplicants!==null?h.maxNumberOfApplicants:this.translocoService.translate("exams.unlimited").toLowerCase()}),exactTimeHoursAndMinutes:h.exactTime?bn(h.exactTime,Sn.HoursAndMinutes):"-",currentAppliedSubject:h.subjects.find(D=>D.subjectApplicationId!==null&&(!D.subjectCancelApplicationDate||D.subjectApplicationDate&&new Date(D.subjectApplicationDate)>new Date(D.subjectCancelApplicationDate)))?.name})),U(h=>Ee(I(b({},h),{actualResult:h.result?h.result.toString():""})))),this.periodNameWithDate$=ye([Ee(this.periodName),this.applicationDetails$]).pipe(T(([h,D])=>`${h} ${this.dateLocalizationService.localizeDate(D.startDate??"",void 0,{dateStyle:"long"})}`))}getExamDuration(e,i){let n=Po(e,i,Mi.Minutes);return n?`${Math.round(n)} ${this.translocoService.translate("global.minute")}`:"-"}convertToFinalExamTableRow(e){let i=e.maxNumberOfApplicants!==null?e.maxNumberOfApplicants:this.translocoService.translate("exams.unlimited").toLowerCase(),n=`${e.numberOfApplicants} / ${i}`,o=()=>{this.router.navigate(["exam",e.finalExamId],{queryParams:{examTime:this.dateLocalizationService.localizeDate(e.startDate,void 0,{dateStyle:"long",timeStyle:"short"}),periodId:this.periodId,applicationId:e.applicationId},queryParamsHandling:"merge",relativeTo:this.activatedRoute})};return{data:I(b({},e),{applicantsInfo:n,uiDisplayState:{type:e.finalExamApplicantId?kt.Success:kt.Default,reasons:e.finalExamApplicantId?[this.translocoService.translate("finalExams.applied"),...this.finalExamsApplicationService.getAbsenceStatusMessage(e.examAbsenceStatus)]:[e.examIdentifier]}}),detailsCallback:o,actions:{details:{text:"button.details",hasArrow:!0,color:G.Primary,callback:o}}}}convertToSubjectTableRow(e){let i=()=>{this.router.navigate(["subject-details",e.subjectId],{queryParams:{subjectName:e.name},queryParamsHandling:"merge",relativeTo:this.activatedRoute})},n={actionName:"",controllerName:"",permissionGuid:Pe.FinalExams_GetSubjectDetailsForFinalExam};return{data:I(b({},e),{uiDisplayState:{type:e.subjectApplicationId?kt.Success:kt.Default,reasons:e.subjectApplicationId?[this.translocoService.translate("finalExams.applied"),...this.finalExamsApplicationService.getAbsenceStatusMessage(Ct.DEFAULT)]:[]}}),detailsCallback:i,detailsPermission:n,actions:{details:{text:"button.details",hasArrow:!0,color:G.Primary,callback:i,permission:n}}}}navigateToRequestForm(e,i,n){let o=n?["sent-back",e]:[e];this.router.navigate(o,{relativeTo:this.activatedRoute,queryParams:{requestForm:i},queryParamsHandling:"merge"})}static{this.\u0275fac=function(i){return new(i||t)(f(fe),f(Z),f(re),f(ie),f(Oe))}}static{this.\u0275cmp=N({type:t,selectors:[["neptun-final-exams-previous-registration"]],decls:1,vars:0,consts:[["loadingPlaceholder",""],["noThemes",""],[4,"transloco"],[4,"ngIf","ngIfElse"],[3,"title","description",4,"ngIf"],["class","subject-name__wrapper neptun-wrapper-padding",4,"ngIf"],[1,"neptun-wrapper"],[1,"details-wrapper"],["neptunBasicLayoutTopContent",""],["neptunBasicLayoutLeftContent",""],["neptunBasicLayoutRightContent",""],[3,"tabGroupName","hasPadding","navigationFragment","id"],[3,"isLabelShownInTab","isRerenderEnabled","label"],["neptunTabContent",""],[1,"final-exam-subjet-list",3,"isLabelShownInTab","isRerenderEnabled","label"],[3,"title","description"],[1,"subject-name__wrapper","neptun-wrapper-padding"],[1,"subject-name__text"],[1,"exam-details"],[3,"label","text","icon"],[3,"label","text","subText","icon"],[3,"text","label","icon"],["color","secondary",3,"sign","text",4,"ngIf"],[3,"text","icon","click",4,"ngIf"],["color","secondary",3,"sign","text"],[3,"click","text","icon"],[1,"exam-details-basic-data"],["neptunDataViewItem",""],["neptunHyphenAriaLabel",""],[3,"inputTopics",4,"ngIf","ngIfElse"],[3,"inputTopics"],[3,"title","imageUrl"],[3,"dataSource","columns","isNextVisible"]],template:function(i,n){i&1&&u(0,u0,5,4,"ng-container",2)},dependencies:[z,Q,ue,At,Xi,Xe,Ii,Pt,Ti,Vi,wt,xt,gt,Ki,Si,Qi,Xs,_t,Ue,Yi,H,Ge,Re,et,Dt,Bn],styles:["@media only screen and (max-width:767px){[_nghost-%COMP%]     .final-exam-subjet-list .neptun-tab-title{margin:20px}}.exam-details[_ngcontent-%COMP%]{display:grid;grid-template-columns:1fr 1fr 1fr 1fr 1fr}.details-wrapper[_ngcontent-%COMP%]{margin-bottom:40px}.subject-name__wrapper[_ngcontent-%COMP%]{margin-bottom:20px}.subject-name__text[_ngcontent-%COMP%]{font-weight:800}@media only screen and (max-width:992px){.exam-details[_ngcontent-%COMP%]{grid-template-columns:1fr 1fr;gap:24px}}@media only screen and (max-width:767px){.exam-details[_ngcontent-%COMP%]{grid-template-columns:1fr;gap:24px}.exam-details-basic-data[_ngcontent-%COMP%]{margin:0 20px}}"]})}}return t})();var Ya=(()=>{class t extends pt{constructor(){super(...arguments),this.columns=[{key:"examTime",text:"finalExams.finalExamDate",disableSort:!0},{key:"description",type:"html",text:"global.description",disableSort:!0},{key:"examNumberOfApplicants",text:"finalExams.applicants",disableSort:!0},{key:"role",text:"dormitorySignup.role",disableSort:!0},{key:"result",text:"global.result",disableSort:!0},{key:"examIdentifier",text:"personal.examId",disableSort:!0}
4,{key:"examApplicationDate",text:"exams.signInDate",disableSort:!0}]}getItemsFromServer(e,i,n,o){return Ee([])}static{this.\u0275fac=(()=>{let e;return function(n){return(e||(e=ci(t)))(n||t)}})()}static{this.\u0275prov=M({token:t,factory:t.\u0275fac,providedIn:"root"})}}return t})();var Za=(()=>{class t extends pt{constructor(){super(...arguments),this.columns=[{key:"subject",text:"finalExams.nameOfFinalExam",disableSort:!0},{key:"description",type:"html",text:"global.description",disableSort:!0},{key:"subjectCode",text:"finalExams.tableColumnSubjectCode",disableSort:!0},{key:"applicationDate",text:"exams.signInDate",type:"date",dateStyle:"long",timeStyle:"short",disableSort:!0},{key:"result",text:"global.result",disableSort:!0}]}getItemsFromServer(e,i,n,o){return Ee([])}static{this.\u0275fac=(()=>{let e;return function(n){return(e||(e=ci(t)))(n||t)}})()}static{this.\u0275prov=M({token:t,factory:t.\u0275fac,providedIn:"root"})}}return t})();function Cn(t,r,e){return{type:t,position:r,multiplier:e}}var vn=(function(t){return t[t.Exam=0]="Exam",t[t.Subject=1]="Subject",t[t.SubjectAndExam=2]="SubjectAndExam",t})(vn||{});var Ri=(function(t){return t.PeriodData="finalExams.buttonPeriodData",t.Register="menu.application",t.Deregister="finalExams.buttonWithdraw",t})(Ri||{});var wo=Di(Pi());var tm=(()=>{class t{constructor(e,i,n){this.http=e,this.transloco=i,this.dateLocalizationService=n}getItemsFromServer(e,i,n,o){return this.http.get(`${J.settings.apiServer.url}FinalExams/GetFinalExamsForExamChange`,{params:{periodId:e,examApplicationId:i,applicationId:n,subjectId:o??""}}).pipe(T(x=>x.data))}convertItemToSingleSelect(e){let i=`${this.transloco.translate("finalExams.numberOfRegisteredStudents")} ${e.numberOfApplicants}`,n=e.maxNumberOfApplicants!==null?e.maxNumberOfApplicants:this.transloco.translate("exams.unlimited").toLowerCase(),o=`${this.transloco.translate("finalExams.max")} ${n}`;return{value:e,primary:this.dateLocalizationService.localizeDate(e.startDate,void 0,{dateStyle:"long",timeStyle:"short"}),secondary:[`${i} / ${o}`]}}static{this.\u0275fac=function(i){return new(i||t)(k(de),k(Z),k(fe))}}static{this.\u0275prov=M({token:t,factory:t.\u0275fac,providedIn:"root"})}}return t})();var im=(()=>{class t{constructor(){this.mainTitle="",this.subTitle=[]}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275cmp=N({type:t,selectors:[["neptun-change-exam-card-info"]],inputs:{icon:"icon",mainTitle:"mainTitle",subTitle:"subTitle"},decls:7,vars:3,consts:[[1,"card-info"],[1,"card-info__icon",3,"ngClass"],[1,"card-info__sub-title"]],template:function(i,n){i&1&&(p(0,"div",0),g(1,"i",1),p(2,"div")(3,"h4"),_(4),l(),p(5,"div",2),_(6),l()()()),i&2&&(a(),m("ngClass",n.icon),a(3),y(n.mainTitle),a(2),y(n.subTitle.join(" \u2022 ")))},dependencies:[yt],styles:[".card-info[_ngcontent-%COMP%]{display:flex;align-items:center;gap:12px}.card-info__icon[_ngcontent-%COMP%]{font-size:22px}.card-info__sub-title[_ngcontent-%COMP%]{font-size:13px}"],changeDetection:0})}}return t})();function x0(t,r){if(t&1&&g(0,"neptun-change-exam-card-info",2),t&2){let e=r.$implicit;m("icon",e.icon)("mainTitle",e.mainTitle)("subTitle",e.subTitle)}}var nm=(()=>{class t{set finalExam(e){let i=e.maxNumberOfApplicants!==null?e.maxNumberOfApplicants:this.transloco.translate("exams.unlimited").toLowerCase();this.cardInfos=[{icon:ee.Time,mainTitle:this.dateLocalizationService.localizeDate(new Date(e.startDate),void 0,{dateStyle:"long",timeStyle:"short"}),subTitle:[this.transloco.translate("exams.examTime")]},{icon:ee.Calendar,mainTitle:this.transloco.translate("finalExams.applicants"),subTitle:[`${e.numberOfApplicants} / ${i}`]},{icon:ee.PencilEdit,mainTitle:this.transloco.translate("dormitorySignup.role"),subTitle:[`${this.dateLocalizationService.localizeDate(new Date(e.startDate),void 0,{timeStyle:"short"})} - ${this.dateLocalizationService.localizeDate(new Date(e.endDate),void 0,{timeStyle:"short"})}`,e.room]}]}constructor(e,i){this.transloco=e,this.dateLocalizationService=i,this.cardInfos=[]}static{this.\u0275fac=function(i){return new(i||t)(f(Z),f(fe))}}static{this.\u0275cmp=N({type:t,selectors:[["neptun-change-exam-card"]],inputs:{finalExam:"finalExam"},decls:2,vars:1,consts:[[1,"exam-change-card"],["class","exam-change-card__info",3,"icon","mainTitle","subTitle",4,"ngFor","ngForOf"],[1,"exam-change-card__info",3,"icon","mainTitle","subTitle"]],template:function(i,n){i&1&&(p(0,"neptun-card",0),u(1,x0,1,3,"neptun-change-exam-card-info",1),l()),i&2&&(a(),m("ngForOf",n.cardInfos))},dependencies:[Xe,xe,im],styles:[".exam-change-card[_ngcontent-%COMP%]{display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between}.exam-change-card__info[_ngcontent-%COMP%]{min-width:240px}"],changeDetection:0})}}return t})();function g0(t,r){if(t&1){let e=j();p(0,"neptun-form-radio-selection",11),An("ngModelChange",function(n){C(e);let o=s(3);return wn(o.selectedFinalExam,n)||(o.selectedFinalExam=n),v(n)}),l()}if(t&2){let e=r.ngIf,i=s(3);m("selectionItems",e),Pn("ngModel",i.selectedFinalExam)}}function f0(t,r){if(t&1){let e=j();E(0),p(1,"neptun-basic-dialog-layout")(2,"h2",2),_(3),l(),E(4,3),p(5,"div",4),_(6),l(),g(7,"neptun-change-exam-card",5),u(8,g0,1,2,"neptun-form-radio-selection",6),c(9,"async"),S(),E(10,7),p(11,"div",8)(12,"a",9),_(13),l(),p(14,"button",10),A("click",function(){C(e);let n=s(2);return v(n.submit())}),_(15),l()(),S(),l(),S()}if(t&2){let e=r.ngIf,i=s().$implicit,n=s();a(3),O(" ",i("exams.changeExam"),""),a(3),O(" ",i("exams.exchangeExamsPermittedOncePerPeriod")," "),a(),m("finalExam",e),a(),m("ngIf",d(9,7,n.finalExamsList$)),a(5),y(i("button.cancel")),a(),m("permissionRequired",n.examChangePermission),a(),O(" ",i("exams.changeExam")," ")}}function h0(t,r){if(t&1&&(E(0),u(1,f0,16,9,"ng-container",1),c(2,"async"),S()),t&2){let e=s();a(),m("ngIf",d(2,1,e.finalExamDetails$))}}var Ja=(()=>{class t{constructor(e,i,n,o){this.data=e,this.finalExamsApplicationService=i,this.changeExamsService=n,this.dialogRef=o,this.finalExamDetails$=this.finalExamsApplicationService.getFinalExamDetails(this.data.finalExamId,this.data.periodId,this.data.applicationId),this.finalExamsList$=this.changeExamsService.getItemsFromServer(this.data.periodId,this.data.examApplicationId,this.data.applicationId,this.data.subjectId).pipe(T(x=>x.finalExams.map(h=>this.changeExamsService.convertItemToSingleSelect(h))),T(x=>x.sort((h,D)=>(0,wo.default)(h.value.startDate).unix()-(0,wo.default)(D.value.startDate).unix())),F(x=>{x.length===1&&(this.selectedFinalExam=x[0])})),this.examChangePermission={actionName:"ExamsChange",controllerName:"FinalExams"}}submit(){let e={applicationId:this.data.applicationId,periodId:this.data.periodId,oldExamApplicationId:this.data.examApplicationId,newExamId:this.selectedFinalExam.value.finalExamId,subjectApplicationId:this.data.subjectApplicationId};
4this.finalExamsApplicationService.examsChange(e).pipe(W(1),F(()=>this.dialogRef.close(!0))).subscribe()}static{this.\u0275fac=function(i){return new(i||t)(f(ui),f(Oe),f(tm),f(di))}}static{this.\u0275cmp=N({type:t,selectors:[["neptun-change-exam-dialog"]],decls:1,vars:0,consts:[[4,"transloco"],[4,"ngIf"],["title","",1,"mat-h2"],["content",""],[1,"exam-change__message"],[3,"finalExam"],["class","change-exam-dialog__all-final-exams",3,"selectionItems","ngModel","ngModelChange",4,"ngIf"],["actions",""],["neptunBasicDialogLayoutActions",""],["matDialogClose",""],["neptun-button","","accent","flat",3,"click","permissionRequired"],[1,"change-exam-dialog__all-final-exams",3,"ngModelChange","selectionItems","ngModel"]],template:function(i,n){i&1&&u(0,h0,3,3,"ng-container",0)},dependencies:[z,Q,hi,nm,rr,nt,tt,it,Nn,_i,we,Ne,H],styles:[".exam-change__message[_ngcontent-%COMP%]{margin-bottom:24px}.change-exam-dialog__all-final-exams[_ngcontent-%COMP%]{margin-top:40px;display:block}"],changeDetection:0})}}return t})();var am=(()=>{class t extends bt{constructor(e,i){super(e,i),this.itemActionEvent=new He,this.interfaceIdentity=me.FinalExamsRegistrationExam,this.moreActionsMenuItems$=Ee(Bi.getTableFunctions(je.EditColumns))}itemAction(e){this.itemActionEvent.next(e)}ngOnInit(){super.ngOnInit()}static{this.\u0275fac=function(i){return new(i||t)(f(Ya),f(dt))}}static{this.\u0275cmp=N({type:t,selectors:[["neptun-final-exam-registration-exam-data-table"]],inputs:{rows:"rows",columns:"columns"},outputs:{itemActionEvent:"itemActionEvent"},features:[ve],decls:4,vars:12,consts:[[3,"itemAction","actionsMenu","isListDataLoading","hasFilter"],[1,"exam-table",3,"columns","dataSource","isHeaderDisplayedInMobileView","isMultipleActionMobileModeSupported","backToTopEnabled"]],template:function(i,n){i&1&&(p(0,"neptun-table-header-actions",0),c(1,"async"),c(2,"async"),A("itemAction",function(x){return n.itemAction(x)}),l(),g(3,"neptun-data-table",1)),i&2&&(m("actionsMenu",d(1,8,n.moreActionsMenuItems$))("isListDataLoading",d(2,10,n.loadingPlaceholder$)===!0)("hasFilter",!1),a(3),m("columns",n.columns)("dataSource",n.rows)("isHeaderDisplayedInMobileView",!0)("isMultipleActionMobileModeSupported",!0)("backToTopEnabled",!1))},dependencies:[at,Ue,H],styles:["[_nghost-%COMP%]     neptun-table-header-actions .actions{margin-top:32px}[_nghost-%COMP%]     .line-clamp{white-space:normal}[_nghost-%COMP%]   .exam-table[_ngcontent-%COMP%]     .mat-mdc-table .main-header-cell{min-width:270px}"],changeDetection:0})}}return t})();var om=(()=>{class t extends bt{constructor(e,i){super(e,i),this.itemActionEvent=new He,this.interfaceIdentity=me.FinalExamsRegistrationSubject,this.moreActionsMenuItems$=Ee(Bi.getTableFunctions(je.EditColumns))}itemAction(e){this.itemActionEvent.next(e)}ngOnInit(){super.ngOnInit()}static{this.\u0275fac=function(i){return new(i||t)(f(Za),f(dt))}}static{this.\u0275cmp=N({type:t,selectors:[["neptun-final-exam-registration-subject-data-table"]],inputs:{rows:"rows",columns:"columns"},outputs:{itemActionEvent:"itemActionEvent"},features:[ve],decls:4,vars:12,consts:[[3,"itemAction","actionsMenu","isListDataLoading","hasFilter"],[1,"subject-table",3,"columns","dataSource","isHeaderDisplayedInMobileView","isMultipleActionMobileModeSupported","backToTopEnabled"]],template:function(i,n){i&1&&(p(0,"neptun-table-header-actions",0),c(1,"async"),c(2,"async"),A("itemAction",function(x){return n.itemAction(x)}),l(),g(3,"neptun-data-table",1)),i&2&&(m("actionsMenu",d(1,8,n.moreActionsMenuItems$))("isListDataLoading",d(2,10,n.loadingPlaceholder$)===!0)("hasFilter",!1),a(3),m("columns",n.columns)("dataSource",n.rows)("isHeaderDisplayedInMobileView",!0)("isMultipleActionMobileModeSupported",!0)("backToTopEnabled",!1))},dependencies:[at,Ue,H],styles:["[_nghost-%COMP%]   .subject-table[_ngcontent-%COMP%]     .mat-mdc-table .main-header-cell{min-width:270px}[_nghost-%COMP%]     neptun-table-header-actions .actions{margin-top:32px}[_nghost-%COMP%]     .line-clamp{white-space:normal}[_nghost-%COMP%]     .table-actions{padding:16px 0!important}[_nghost-%COMP%]     .table-actions .table-actions__wrapper{margin-left:-12px}[_nghost-%COMP%]     .table-actions .table-action{white-space:normal!important;margin-right:12px!important}@media only screen and (max-width:1279px){[_nghost-%COMP%]     .table-actions__wrapper{margin-left:0!important}[_nghost-%COMP%]     .table-actions .table-action{margin-right:4px!important}}"],changeDetection:0})}}return t})();var E0=["dataTable","","finalExamStepper",""];function S0(t,r){if(t&1){let e=j();p(0,"button",11),A("click",function(){C(e);let n=s(2);return v(n.onSecondaryButtonClick(n.dataTable))}),_(1),l()}if(t&2){let e=s(2);m("permissionRequired",e.dataTable.secondaryButtonData.permission)("id","secondary-period-button_"+e.periodIndex)("accent","stroked")("color",e.Colors.Primary),a(),O(" ",e.dataTable.secondaryButtonData.text," ")}}function b0(t,r){if(t&1){let e=j();p(0,"button",12),c(1,"async"),c(2,"async"),A("click",function(){C(e);let n=s(2);return v(n.onPrimaryButtonClick(n.dataTable))}),_(3),l()}if(t&2){let e,i,n=s().$implicit,o=s();m("permissionRequired",o.dataTable.primaryButtonData.permission)("id","primary-period-button_"+o.periodIndex)("accent","flat")("color",o.dataTable.primaryButtonData.color==="primary"?"primary":"error")("loading",(e=d(1,7,o.isLoading$))!==null&&e!==void 0?e:!1)("disabled",(i=d(2,9,o.isLoading$))!==null&&i!==void 0?i:!1),a(3),O(" ",n(o.dataTable.primaryButtonData.text)," ")}}function C0(t,r){if(t&1&&g(0,"neptun-tab",13),t&2){let e=r.$implicit;m("label",e.label)("infoText",e.infoText)("selected",e.isSelected)}}function v0(t,r){if(t&1&&(p(0,"neptun-callout-box",14),g(1,"div",15),l()),t&2){let e=s().$implicit,i=s();m("id","student-card-warning-1")("icon",i.Icons.AlertTriangle),a(),m("innerHTML",e("finalExams.reminderTextForExam"),Rn)}}function y0(t,r){if(t&1){let e=j();
4E(0),p(1,"neptun-final-exam-registration-exam-data-table",16),A("itemActionEvent",function(n){C(e);let o=s(2);return v(o.onExamItemAction(n))}),l(),S()}if(t&2){let e=s(2);a(),m("rows",e.dataTable.rows)("columns",e.examColumns)}}function I0(t,r){if(t&1){let e=j();p(0,"neptun-final-exam-registration-subject-data-table",17),A("itemActionEvent",function(n){C(e);let o=s(2);return v(o.onSubjectItemAction(n))}),l()}if(t&2){let e=s(2);m("rows",e.dataTable.rows)("columns",e.subjectColumns)}}function T0(t,r){if(t&1&&(E(0),p(1,"div",2)(2,"div",3)(3,"h3"),_(4),l(),p(5,"p"),_(6),l()(),p(7,"div",4),u(8,S0,2,5,"button",5)(9,b0,4,11,"button",6),l()(),p(10,"neptun-card")(11,"neptun-progress-stepper",7),u(12,C0,1,3,"neptun-tab",8),l()(),u(13,v0,2,3,"neptun-callout-box",9)(14,y0,2,2,"ng-container",10)(15,I0,1,2,"ng-template",null,0,ae),S()),t&2){let e=r.$implicit,i=Y(16),n=s();a(4),y(n.dataTable.title),a(2),y(e("finalExams.finalExamPeriod")+": "+n.dataTable.finalExamPeriod),a(2),m("ngIf",n.dataTable.secondaryButtonData),a(),m("ngIf",!n.dataTable.primaryButtonData.isNotVisible),a(3),m("ngForOf",n.finalExamStepper),a(),m("ngIf",n.dataTable.isSubjectAndExamPeriod),a(),m("ngIf",n.dataTable.isExam)("ngIfElse",i)}}var rm=(()=>{class t{onPrimaryButtonClick(e){this.primaryButtonClick.emit(e)}onSecondaryButtonClick(e){this.secondaryButtonClick.emit(e)}onExamItemAction(e){this.examItemAction.next(e)}onSubjectItemAction(e){this.subjectItemAction.next(e)}constructor(e){this.loadingService=e,this.primaryButtonClick=new He,this.secondaryButtonClick=new He,this.examItemAction=new He,this.subjectItemAction=new He,this.Icons=ee,this.Colors=G,this.isLoading$=this.loadingService.isLoadingByUrls(["FinalExams/ApplicationForPeriod","FinalExams/CancelPeriodApplication","FinalExams/GetFinalExamsByPeriod","FinalExams/GetTopicsAndItems","FinalExams/GetActivePeriods","FinalExams/GetSubjectsByPeriod"])}static{this.\u0275fac=function(i){return new(i||t)(f(Rt))}}static{this.\u0275cmp=N({type:t,selectors:[["neptun-final-exams-registration","dataTable","","finalExamStepper",""]],inputs:{finalExamStepper:"finalExamStepper",dataTable:"dataTable",examColumns:"examColumns",subjectColumns:"subjectColumns",periodIndex:"periodIndex"},outputs:{primaryButtonClick:"primaryButtonClick",secondaryButtonClick:"secondaryButtonClick",examItemAction:"examItemAction",subjectItemAction:"subjectItemAction"},attrs:E0,decls:1,vars:0,consts:[["subject",""],[4,"transloco"],[1,"table-header-wrapper"],[1,"final-exam-header"],[1,"table-header-button-wrapper"],["neptun-button","",3,"permissionRequired","id","accent","color","click",4,"ngIf"],["neptun-button","",3,"permissionRequired","id","accent","color","loading","disabled","click",4,"ngIf"],[1,"final-exam-progress-stepper"],[3,"label","infoText","selected",4,"ngFor","ngForOf"],[3,"id","icon",4,"ngIf"],[4,"ngIf","ngIfElse"],["neptun-button","",3,"click","permissionRequired","id","accent","color"],["neptun-button","",3,"click","permissionRequired","id","accent","color","loading","disabled"],[3,"label","infoText","selected"],[3,"id","icon"],[3,"innerHTML"],[1,"exam-data-table",3,"itemActionEvent","rows","columns"],[1,"subject-data-table",3,"itemActionEvent","rows","columns"]],template:function(i,n){i&1&&u(0,T0,17,8,"ng-container",1)},dependencies:[z,Q,we,Ne,Xe,pr,xe,Si,qi,am,om,H],styles:[".table-header-wrapper[_ngcontent-%COMP%]{margin-top:32px;display:flex;justify-content:space-between}[_nghost-%COMP%]  .final-exam-progress-stepper>div.neptun-wrapper-padding{padding:0}.final-exam-header[_ngcontent-%COMP%]{margin-bottom:16px}.table-header-button-wrapper[_ngcontent-%COMP%]{display:flex;align-items:center;gap:16px;margin-left:8px}.final-exams-title[_ngcontent-%COMP%]{margin-top:32px;margin-bottom:32px}neptun-card[_ngcontent-%COMP%] + h3[_ngcontent-%COMP%]{margin-top:24px}neptun-callout-box[_ngcontent-%COMP%]{margin-top:24px}@media only screen and (max-width:767px){.table-header-wrapper[_ngcontent-%COMP%]{margin:0 20px;flex-direction:column}.table-header-button-wrapper[_ngcontent-%COMP%]{margin-left:0;flex-direction:column;gap:12px}.table-header-button-wrapper[_ngcontent-%COMP%]   button[_ngcontent-%COMP%]{width:100%}}"],changeDetection:0})}}return t})();function F0(t,r){if(t&1&&(p(0,"p",10),_(1),l()),t&2){let e=s().$implicit;a(),y(e("finalExams.subjectUnsubscribeSubtitle"))}}function R0(t,r){if(t&1){let e=j();E(0),p(1,"neptun-basic-dialog-layout")(2,"h2",1),_(3),l(),E(4,2),u(5,F0,2,1,"p",3),p(6,"neptun-card")(7,"div",4)(8,"div"),g(9,"i",5),l(),p(10,"div")(11,"h3"),_(12),c(13,"hyphen"),l(),p(14,"p"),_(15),l()()()(),S(),E(16,6),p(17,"div",7)(18,"button",8),c(19,"async"),_(20),l(),p(21,"button",9),c(22,"async"),A("click",function(){C(e);let n=s();return v(n.unsubscribeFromSubject())}),_(23),l()(),S(),l(),S()}if(t&2){let e=r.$implicit,i=s();a(3),y(e("finalExams.subjectUnsubscribeTitle")),a(2),m("ngIf",i.data.hasTakenExam),a(7),y(d(13,8,i.data.subjectName)),a(3),y(e("finalExams.finalExamSubject")),a(3),m("disabled",d(19,10,i.isLoading$)===!0),a(2),O(" ",e("button.cancel")," "),a(),m("isLoadingButton",d(22,12,
4i.isLoading$)),a(2),O(" ",e("finalExams.buttonWithdraw")," ")}}var eo=(()=>{class t{constructor(e,i,n){this.data=e,this.finalExamsApplicationService=i,this.dialogRef=n,this.loadingSubject=new li(!1),this.isLoading$=this.loadingSubject.asObservable()}unsubscribeFromSubject(){this.loadingSubject.next(!0),this.finalExamsApplicationService.unsubscribeFromSubject(this.data.periodId,this.data.subjectApplicationId,this.data.applicationId,this.data.refreshExamListOnSuccess).pipe(W(1),F(()=>this.dialogRef.close(!0)),pe(e=>(this.loadingSubject.next(!1),lt(()=>e)))).subscribe()}static{this.\u0275fac=function(i){return new(i||t)(f(ui),f(Oe),f(di))}}static{this.\u0275cmp=N({type:t,selectors:[["neptun-subject-unsubscribe-dialog"]],decls:1,vars:0,consts:[[4,"transloco"],["title","",1,"mat-h2"],["content",""],["class","subtitle",4,"ngIf"],[1,"card-content"],[1,"icon-time-future"],["actions",""],["neptunBasicDialogLayoutActions",""],["matDialogClose","","neptun-button","","accent","flat",3,"disabled"],["neptun-button","","accent","flat","color","error",3,"click","isLoadingButton"],[1,"subtitle"]],template:function(i,n){i&1&&u(0,R0,24,14,"ng-container",0)},dependencies:[z,hi,Xe,Nn,we,_i,$n,H,Re,Q],styles:[".subtitle[_ngcontent-%COMP%]{margin-bottom:24px}a[_ngcontent-%COMP%]{margin-top:24px}.card-content[_ngcontent-%COMP%]{display:flex;align-items:center;gap:16px}.icon-time-future[_ngcontent-%COMP%]{font-size:16px}"],changeDetection:0})}}return t})();var D0=["activePeriod",""],P0=()=>[24,15];function w0(t,r){if(t&1){let e=j();p(0,"neptun-final-exams-registration",2),A("primaryButtonClick",function(n){C(e);let o=s();return v(o.onPrimaryButtonClick(n))})("secondaryButtonClick",function(n){C(e);let o=s();return v(o.onSecondaryButtonClick(n))})("examItemAction",function(n){C(e);let o=s();return v(o.onExamItemAction(n))})("subjectItemAction",function(n){C(e);let o=s();return v(o.onSubjectItemAction(n))}),l()}if(t&2){let e=r.ngIf,i=s();m("finalExamStepper",e.progressStepperSteps)("dataTable",e.currentStepTables)("examColumns",i.examColumns)("subjectColumns",i.subjectColumns)("periodIndex",i.periodIndex)}}function A0(t,r){if(t&1&&(p(0,"div",3),g(1,"neptun-universal-placeholder",4),l()),t&2){let e=s();a(),m("gridSize",$(3,P0))("skeletons",e.skeletons)("gap","20px")}}var sm=(()=>{class t{constructor(e,i,n,o,x,h,D,B){this.dialogService=e,this.finalExamsApplicationService=i,this.transloco=n,this.dateLocalizationService=o,this.router=x,this.activatedRoute=h,this.store=D,this.finalExamsPeriodDetailsService=B,this.examItemAction=new He,this.subjectItemAction=new He,this.progressSubject=ne
4w Tn,this.progress$=this.progressSubject.asObservable().pipe(Mo((te,w)=>{let q=te.findIndex(V=>V.id===w.id);return q>=0?w.isInProgress||te.splice(q,1):w.isInProgress&&te.push(w),te},[])),this.skeletons=[Cn("rectangle",{start:{x:1,y:6},end:{x:24,y:1}}),Cn("rectangle",{start:{x:2,y:7},end:{x:4,y:8}},{axis:"y",value:3}),Cn("rectangle",{start:{x:12,y:7},end:{x:14,y:8}},{axis:"y",value:3}),Cn("rectangle",{start:{x:21,y:7},end:{x:23,y:8}},{axis:"y",value:3})],this.intervalDateTimePipe=new Dt(se(fe))}ngOnInit(){this.activePeriodDetails$=this.activePeriod.withSubject?this.getSubjectsByPeriod():this.getFinalExamsByPeriod(),this.finalExamsApplicationService.isApplicationForTopicAllowed$.pipe(W(1),F(e=>this.isTopicApplicationAllowed=e)).subscribe()}onExamItemAction(e){this.examItemAction.next(e)}onSubjectItemAction(e){this.subjectItemAction.next(e)}getFinalExamsByPeriod(){return this.finalExamsApplicationService.getFinalExamsByPeriod$(this.activePeriod.periodId,this.activePeriod.applicationId??"").pipe(T(e=>({progressStepperSteps:this.createProgressStepper(this.activePeriod),currentStepTables:this.createExamTables(this.activePeriod,e)})))}getSubjectsByPeriod(){return this.finalExamsApplicationService.getSubjectsByPeriod$(this.activePeriod.periodId,this.activePeriod.applicationId??"").pipe(T(e=>({progressStepperSteps:this.createProgressStepper(this.activePeriod),currentStepTables:this.createSubjectTables(this.activePeriod,e)})))}createProgressStepper(e){let i=this.finalExamsPeriodDetailsService.getDateRange(e.secondSubPeriod?.startDate||e.firstSubPeriod?.startDate,e.secondSubPeriod?.endDate||e.firstSubPeriod?.endDate),n=[{label:this.transloco.translate("finalExams.registerFinalExam"),infoText:[this.transloco.translate("finalExams.periodApplicationPeriod")+`: ${i||"-"}`,`${this.transloco.translate("thesis.module")}: ${e.moduleName||"-"}`,`${this.transloco.translate("finalExams.periodType")}: ${e.moduleType||"-"}`],isSelected:!e.applicationId}];return e.firstSubPeriod&&n.push(this.addSubPeriod(e,e.firstSubPeriod)),e.secondSubPeriod&&n.push(this.addSubPeriod(e,e.secondSubPeriod)),n}addSubPeriod(e,i){let n={};
4return i.enableApplyForExam&&i.enableApplyForSubject?(n.subPeriodType=vn.SubjectAndExam,n.label=this.transloco.translate("finalExams.finalExamSubjectAndExamDateApplication")):i.enableApplyForExam?(n.subPeriodType=vn.Exam,n.label=this.transloco.translate("finalExams.finalExamDateRegistration")):i.enableApplyForSubject&&(n.subPeriodType=vn.Subject,n.label=this.transloco.translate("finalExams.finalExamSubjectRegistration")),n.infoText=[this.transloco.translate("finalExams.periodApplicationPeriod")+`: ${this.dateLocalizationService.localizeDate(i.startDate,void 0,{dateStyle:"long",timeStyle:"short"})} - ${this.dateLocalizationService.localizeDate(i.endDate,void 0,{dateStyle:"long",timeStyle:"short"})}`],n.isSelected=!!e.applicationId&&this.checkIfTodayIsBetweenStartAndEndDate(i.startDate,i.endDate),n}checkIfTodayIsBetweenStartAndEndDate(e,i){return new Date(i)>new Date&&new Date(e)<new Date}createExamTables(e,i){let n=i.map(h=>{let D=this.dateLocalizationService.localizeDate(h.startDate,void 0,{dateStyle:"long",timeStyle:"short"}),B=h.maxNumberOfApplicants!==null?h.maxNumberOfApplicants:this.transloco.translate("exams.unlimited").toLowerCase(),te=`${h.numberOfApplicants} / ${B}`,w=this.dateLocalizationService.localizeDate(h.exactTime??"",void 0,{dateStyle:"long",timeStyle:"short"}),q=this.dateLocalizationService.localizeDate(h.examApplicationDate??"",void 0,{dateStyle:"long",timeStyle:"short"});return{data:{description:h.description,examTime:D,examNumberOfApplicants:te,examIdentifier:h.examIdentifier,role:w,result:h.result,examApplicationDate:q,uiDisplayState:this.finalExamsApplicationService.getUIDisplayState(h.isSzev??!1,h.examApplicationId?.toString()??"",h.examAbsenceStatus)},actions:{detail:this.navigateToExamDetails(h,D,e.periodId,e.applicationId),changeExam:this.getExamChangeAction(e,h),application:this.getApplicationAction(e,h)}}}),{primaryButtonData:o,secondaryButtonData:x}=this.getButtonData(e);return{title:e.name,subtitle:"",rows:n,primaryButtonData:o,secondaryButtonData:x,applicationId:e.applicationId,periodId:e.periodId,isSubjectAndExamPeriod:this.isReminderTextVisible(e),requestFormFillBeforeApplication:e.requestFormFillBeforeApplication,intervalEndDate:new Date(e.endDate),isExam:!0,finalExamPeriod:this.intervalDateTimePipe.transform(e.startDate,e.endDate,void 0,!1)||"\u2013"}}createSubjectTables(e,i){let{primaryButtonData:n,secondaryButtonData:o}=this.getButtonData(e),x=i.map(h=>({data:{description:h.description,subject:h.name,subjectCode:h.code,applicationDate:h.subjectApplicationDate,result:h.result,uiDisplayState:this.finalExamsApplicationService.getUIDisplayState(!1,h.subjectApplicationId,Ct.DEFAULT)},actions:{relatedExams:this.getSubjectRelatedExamsAction(e,h),details:this.getSubjectRelatedExamsSubjectDetailsAction(h),application:this.createSubjectTableApplicationActions(e,h)}}));return{title:e.name,subtitle:"",rows:x,primaryButtonData:n,secondaryButtonData:o,applicationId:e.applicationId,periodId:e.periodId,isSubjectAndExamPeriod:this.isReminderTextVisible(e),requestFormFillBeforeApplication:e.requestFormFillBeforeApplication,intervalEndDate:new Date(e.endDate),isExam:!1,finalExamPeriod:this.intervalDateTimePipe.transform(e.startDate,e.endDate,void 0,!1)||"\u2013"}}navigateToExamDetails(e,i,n,o){return{text:"finalExams.buttonDetails",icon:ee.Info,color:G.Primary,hasArrow:!0,buttonStyle:"stroked",permission:{actionName:"GetFinalExamDetails",controllerName:"FinalExams"},callback:()=>{this.router.navigate(["exam",e.finalExamId],{relativeTo:this.activatedRoute,queryParams:b({finalExamId:e.finalExamId,examTime:i,periodId:n,applicationId:o},e.enableCancelExamApplication&&{finalExamApplicationId:e.examApplicationId})})}}}isReminderTextVisible(e){return e.withSubject&&!!e.applicationId}getSubjectRelatedExamsSubjectDetailsAction(e){let i=()=>{this.router.navigate(["subject-details",e.subjectId],{relativeTo:this.activatedRoute,queryParams:{subjectName:e.name,subjectCode:e.code},queryParamsHandling:"merge"})},n={controllerName:"FinalExams",actionName:"GetSubjectDetailsForFinalExam"};return{icon:ee.Info,color:G.Primary,buttonStyle:"stroked",text:"button.details",callback:i,permission:n,default:!0}}getSubjectRelatedExamsAction(e,i){let n=e.applicationId&&i.subjectApplicationId,o=n?"finalExams.subjectExams":"",x=i.takenExamsCount,h={text:o,color:G.Primary,buttonStyle:"stroked",hasArrow:!1,permission:{actionName:"GetFinalExamsByTakenSubjects",controllerName:"FinalExams"},isHidden:!o,callback:()=>this.router.navigate(["subject-related-exams",i.subjectId],{relativeTo:this.activatedRoute,queryParams:{applicationId:e.applicationId,periodId:e.periodId,subjectApplicationId:i.subjectApplicationId,subjectName:i.name,subjectCode:i.code,enableCancelForSubject:i.enableCancelForSubject}})};return n&&(h.badge=x.toString()),h}createSubjectTableApplicationActions(e,i){let n={text:"",color:G.Primary,buttonStyle:"flat",hasArrow:!1,callback:()=>{},permission:void 0,isHidden:!0},o=`${e.periodId}_${i.subjectId}_${e.applicationId}`;return e.firstSubPeriod&&this.isApplicationEnabledForSubject(e.applicationId,i.enableApplyForSubject,e.firstSubPeriod)||e.secondSubPeriod&&this.isApplicationEnabledForSubject(e.applicationId,i.enableApplyForSubject,e.
4secondSubPeriod)?n={text:"finalExams.buttonRegister",color:G.Primary,buttonStyle:"flat",hasArrow:!0,callback:()=>this.subjectApplication(e,i,o),permission:{actionName:"ApplicationForSubject",controllerName:"FinalExams"},isHidden:!1,isLoading$:this.getIsInProgress(o)}:(e.firstSubPeriod&&this.isCancelApplicationEnabledForSubject(e.applicationId,i.enableCancelForSubject,e.firstSubPeriod)||e.secondSubPeriod&&this.isCancelApplicationEnabledForSubject(e.applicationId,i.enableCancelForSubject,e.secondSubPeriod))&&(n={text:"finalExams.buttonWithdraw",color:G.Error,buttonStyle:"flat",hasArrow:!0,permission:{actionName:"CancelSubjectApplication",controllerName:"FinalExams"},isHidden:!1,callback:()=>this.openCancelApplicationDialog(e,i)}),n}openCancelApplicationDialog(e,i){this.dialogService.openDialog(eo,{periodId:e.periodId,applicationId:e.applicationId,subjectId:i.subjectId,subjectApplicationId:i.subjectApplicationId,subjectName:i.name,refreshExamListOnSuccess:!0,hasTakenExam:i.takenExamsCount>0})}isApplicationEnabledForSubject(e,i,n){let o=new Date;return!!e&&i&&n.enableApplyForSubject&&o<new Date(n.endDate)&&o>new Date(n.startDate)}isCancelApplicationEnabledForSubject(e,i,n){let o=new Date;return!!e&&i&&n.enableCancelSubjectApplication&&o<new Date(n.endDate)&&o>new Date(n.startDate)}getApplicationAction(e,i){let n={text:"",color:G.Primary,hasArrow:!1,permission:void 0,isHidden:!0,callback:()=>{}};
4if(e.applicationId&&!i.examApplicationId&&i.enableApplyForExam){let o=`${e.periodId}_${i.finalExamId}_${e.applicationId}`;n={text:"finalExams.buttonRegister",color:G.Primary,hasArrow:!0,permission:{actionName:"ApplicationForPeriod",controllerName:"FinalExams"},buttonStyle:"flat",isHidden:!1,disabled:this.isCheckButtonDisabled(i),callback:()=>{this.applyForExam(e,i,o).pipe(W(1)).subscribe()},isLoading$:this.getIsInProgress(o)}}else if(e.applicationId&&i.examApplicationId&&i.enableCancelExamApplication){let o=`${e.periodId}_${i.examApplicationId}`;n={text:"finalExams.buttonWithdraw",color:G.Error,buttonStyle:"flat",hasArrow:!0,permission:{actionName:"CancelPeriodApplication",controllerName:"FinalExams"},disabled:!1,isHidden:!1,callback:()=>{this.cancelExamApplication(e,i,o).pipe(W(1)).subscribe()},isLoading$:this.getIsInProgress(o)}}return n}getExamChangeAction(e,i){let n={text:"",color:G.Primary,hasArrow:!1,callback:void 0,permission:void 0,isHidden:!0};if(e.applicationId&&i.examApplicationId&&i.enableExamChange){let o=i.examApplicationId.toString();n={text:"exams.changeExam",color:G.Primary,hasArrow:!0,buttonStyle:"flat",permission:{actionName:"GetFinalExamsForExamChange",controllerName:"FinalExams"},isHidden:!1,disabled:!i.examApplicationId&&this.isCheckButtonDisabled(i),callback:()=>{this.dialogService.openDialog(Ja,{finalExamId:i.finalExamId,periodId:e.periodId,applicationId:e.applicationId,examApplicationId:o}).afterClosed().pipe(le(Boolean),F(()=>this.store.dispatch(new Fe.AddSuccessPushNotification({title:"exams.switchSuccessful"})))).subscribe()}}}return n}isCheckButtonDisabled(e){return!!e.maxNumberOfApplicants&&e.numberOfApplicants===e.maxNumberOfApplicants}getButtonData(e){let i=this.createPrimaryButtonText(e),n=this.createPrimaryButtonPermission(e),o={actionName:"GetPeriodDetails",controllerName:"FinalExams"};return{primaryButtonData:{text:i,isNotVisible:this.isPrimaryButtonHidden(e),color:i===Ri.Deregister?G.Warn:G.Primary,permission:n},secondaryButtonData:{text:this.transloco.translate(Ri.PeriodData),permission:o}}}createPrimaryButtonText(e){return e.applicationId?Ri.Deregister:Ri.Register}createPrimaryButtonPermission(e){return e.withTopic&&!e.applicationId?{actionName:"ApplicationForSubject",controllerName:"FinalExams"}:e.applicationId?{actionName:"CancelPeriodApplication",controllerName:"FinalExams"}:{actionName:"ApplicationForPeriod",controllerName:"FinalExams"}}isPrimaryButtonHidden(e){return!(this.isTopicRegistrationRequired(e)||this.isApplicationEnabled(e)||this.isCancellationEnabled(e))}
4isTopicRegistrationRequired(e){return this.isTopicApplicationAllowed&&e.withTopic&&!e.applicationId}isApplicationEnabled(e){return!e.applicationId&&(e.enableApplicationForPeriod||e.requestFormFillBeforeApplication)}isCancellationEnabled(e){return!!e.applicationId&&e.enableCancelPeriodApplication}applyForExam(e,i,n){return this.progressSubject.next({id:n,isInProgress:!0}),this.finalExamsApplicationService.applicationForExam(e.periodId,i.finalExamId,e.applicationId).pipe(W(1),pe(o=>(this.progressSubject.next({id:n,isInProgress:!1}),lt(()=>o))))}cancelExamApplication(e,i,n){return this.progressSubject.next({id:n,isInProgress:!0}),this.finalExamsApplicationService.cancelExamApplication(e.periodId,i.examApplicationId.toString()).pipe(W(1),pe(o=>(this.progressSubject.next({id:n,isInProgress:!1}),lt(()=>o))))}onPrimaryButtonClick(e){e.primaryButtonData.text===Ri.Deregister?this.finalExamsApplicationService.cancelPeriodApplication(e.applicationId,e.periodId).pipe(W(1),F(()=>this.store.dispatch(new Fe.AddSuccessPushNotification({title:"notification.successfulDeregistration"})))).subscribe():e.primaryButtonData.text===Ri.Register&&(this.activePeriod.withTopic?this.dialogService.openDialog(En,{periodId:e.periodId,moduleId:this.activePeriod.moduleId,requestFormFillBeforeApplication:e.requestFormFillBeforeApplication,intervalEndDate:e.intervalEndDate}):e.requestFormFillBeforeApplication?this.finalExamsApplicationService.applicationForPeriodWithRequestForm({moduleId:this.activePeriod.moduleId,periodId:e.periodId,intervalEndDate:e.intervalEndDate}).pipe(W(1)).subscribe():this.finalExamsApplicationService.applicationForPeriod({periodId:e.periodId,moduleId:this.activePeriod.moduleId}).pipe(W(1),F(()=>{this.store.dispatch(new Fe.AddSuccessPushNotification({title:"notification.successfulApplication"}))})).subscribe())}onSecondaryButtonClick(e){this.router.navigate(["period",e.periodId],{relativeTo:this.activatedRoute,queryParams:{applicationId:e.applicationId,periodName:e.title,moduleId:this.activePeriod.moduleId,"tab-selector-final-exams-period":0,"tab-final-exams-period":0},queryParamsHandling:"merge"})}subjectApplication(e,i,n){this.progressSubject.next({id:n,isInProgress:!0}),this.finalExamsApplicationService.applyForSubject(e.periodId,i.subjectId,e.applicationId).pipe(W(1),F(()=>{this.store.dispatch(new Fe.AddSuccessPushNotification({title:"finalExams.subjectRegistrationSuccessful",description:i.name}))}),pe(o=>(this.progressSubject.next({id:n,isInProgress:!1}),lt(()=>o)))).subscribe()}getIsInProgress(e){return this.progress$.pipe(T(i=>i.some(n=>n.id===e)))}static{this.\u0275fac=function(i){return new(i||t)(f(Ve),f(Oe),f(Z),f(fe),f(re),f(ie),f(X),f(za))}}static{this.\u0275cmp=N({type:t,selectors:[["neptun-exam-one-sub-period","activePeriod",""]],inputs:{activePeriod:"activePeriod",examColumns:"examColumns",subjectColumns:"subjectColumns",periodIndex:"periodIndex"},outputs:{examItemAction:"examItemAction",subjectItemAction:"subjectItemAction"},attrs:D0,decls:4,vars:4,consts:[["loading",""],[3,"finalExamStepper","dataTable","examColumns","subjectColumns","periodIndex","primaryButtonClick","secondaryButtonClick","examItemAction","subjectItemAction",4,"ngIf","ngIfElse"],[3,"primaryButtonClick","secondaryButtonClick","examItemAction","subjectItemAction","finalExamStepper","dataTable","examColumns","subjectColumns","periodIndex"],[1,"neptun-wrapper"],[1,"skeleton",3,"gridSize","skeletons","gap"]],template:function(i,n){if(i&1&&(u(0,w0,1,5,"neptun-final-exams-registration",1),c(1,"async"),u(2,A0,2,4,"ng-template",null,0,ae)),i&2){let o=Y(3);m("ngIf",d(1,2,n.activePeriodDetails$))("ngIfElse",o)}},dependencies:[Q,rm,or,H],styles:[".neptun-wrapper[_ngcontent-%COMP%]{margin-top:40px}"],changeDetection:0})}}return t})();function O0(t,r){if(t&1){let e=j();E(0),p(1,"neptun-exam-one-sub-period",5),A("examItemAction",function(n){C(e);let o=s(5);return v(o.onExamItemAction(n))})("subjectItemAction",function(n){C(e);let o=s(5);return v(o.onSubjectItemAction(n))}),l(),S()}if(t&2){let e=r.$implicit,i=r.index,n=s(2).ngIf,o=s().ngIf;a(),m("activePeriod",e)("examColumns",o)("subjectColumns",n)("periodIndex",i)}}function M0(t,r){if(t&1&&(E(0),u(1,O0,2,4,"ng-container",4),S()),t&2){let e=r.ngIf;a(),m("ngForOf",e)}}function L0(t,r){if(t&1&&(E(0),u(1,M0,2,1,"ng-container",3),c(2,"async"),S()),t&2){let e=s(3);a(),m("ngIf",d(2,1,e.activePeriods$))}}function j0(t,r){if(t&1&&(E(0),u(1,L0,3,3,"ng-container",3),c(2,"async"),S()),t&2){let e=s(2);a(),m("ngIf",d(2,1,e.subjectTOBS.displayedColumns$))}}function k0(t,r){if(t&1&&(E(0),g(1,"neptun-primary-title",1),p(2,"div",2),u(3,j0,3,3,"ng-container",3),c(4,"async"),l(),S()),t&2){let e=r.$implicit,i=s();a(),m("title",e("menu.application")),a(2),m("ngIf",d(4,2,i.examTOBS.displayedColumns$))}}var mm=(()=>{class t{constructor(e,i,n,o,x){this.loadingService=e,this.finalExamsApplicationService=i,this.activePeriods$=this.finalExamsApplicationService.getActivePeriodDetails$(),this.isLoading$=this.loadingService.isLoadingByUrls(["FinalExams/ApplicationForPeriod","FinalExams/CancelPeriodApplication"]),this.examTOBS=new bt(x,n),this.examTOBS.interfaceIdentity=me.FinalExamsRegistrationExam,this.subjectTOBS=new bt(o,n),this.subjectTOBS.interfaceIdentity=me.FinalExamsRegistrationSubject}ngOnInit(){this.examTOBS.ngOnInit(),this.subjectTOBS.ngOnInit()}ngOnDestroy(){this.examTOBS.ngOnDestroy(),this.subjectTOBS.ngOnDestroy()}onExamItemAction(e){this.examTOBS.itemAction(e)}onSubjectItemAction(e){this.subjectTOBS.itemAction(e)}static{this.\u0275fac=function(i){return new(i||t)(f(Rt),f(Oe),f(dt),f(Za),f(Ya))}}static{this.\u0275cmp=N({type:t,selectors:[["neptun-final-exam-registration-container"]],decls:1,vars:0,consts:[[4,"transloco"],[3,"title"],[1,"neptun-wrapper"],[4,"ngIf"],[4,"ngFor","ngForOf"],[3,"examItemAction","subjectItemAction","activePeriod","examColumns","subjectColumns","periodIndex"]],template:function(i,n){i&1&&u(0,k0,5,4,"ng-container",0)},dependencies:[z,ue,Q,xe,sm,H],encapsulation:2})}}return t})();var lm=(()=>{class t extends Qn{constructor(e){super(e),this.formDetailsApiUrl=`${J.settings.apiServer.url}FinalExams/GetSentBackToCorrectionRequestFormDetails`}static{this.\u0275fac=function(i){return new(i||t)(k(de))}}static{this.\u0275prov=M({token:t,factory:t.\u0275fac,providedIn:"root"})}}return t})();var to=(()=>{class t{static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275cmp=N({type:t,selectors:[["neptun-final-exams-sent-back-request-form-details"]],features:[oe([{provide:Wn,useClass:lm}])],decls:1,vars:1,consts:[[3,"isFullPathNecessaryForFormFilling"]],template:function(i,n){i&1&&g(0,"neptun-sent-back-request-form-details-view",0),i&2&&m("isFullPathNecessaryForFormFilling",!0)},dependencies:[Kn],encapsulation:2,changeDetection:0})}}return t})();var io=(()=>{class t extends ut{constructor(e){super({finalExamSubjectDetails:R}),this.subjectService=e,this.subjectDetails$=this.select(i=>i.finalExamSubjectDetails),this.addDetails=this.updater((i,n)=>I(b({},i),{finalExamSubjectDetails:n}
4)),this.getSubjectDetails=this.effect(i=>i.pipe(F(()=>{this.addDetails(Le)}),Oo(n=>this.subjectService.getSubjectDetails(n).pipe(F(o=>this.addDetails({data:o})),pe(o=>(this.addDetails(ge),lt(()=>o)))))))}static{this.\u0275fac=function(i){return new(i||t)(k(Ka))}}static{this.\u0275prov=M({token:t,factory:t.\u0275fac})}}return t})();function $0(t,r){t&1&&(E(0),p(1,"div",6),g(2,"neptun-request-error-indicator",7),l(),S())}function B0(t,r){t&1&&(E(0),g(1,"neptun-details-loading-placeholder"),S())}function q0(t,r){if(t&1){let e=j();E(0),p(1,"neptun-data-view")(2,"dl")(3,"button",8),A("click",function(){C(e);let n=s(2).ngIf,o=s(2);return v(o.printSubjectDetails(n.data))}),_(4),l(),p(5,"div",9)(6,"dt"),_(7),l(),p(8,"dd"),_(9),c(10,"hyphen"),l()(),p(11,"div",9)(12,"dt"),_(13),l(),p(14,"dd"),_(15),c(16,"hyphen"),l()(),p(17,"div",9)(18,"dt"),_(19),l(),p(20,"dd"),_(21),c(22,"hyphen"),l()(),p(23,"div",9)(24,"dt"),_(25),l(),p(26,"dd"),_(27),c(28,"hyphen"),l()(),p(29,"div",9)(30,"dt"),_(31),l(),p(32,"dd"),_(33),c(34,"hyphen"),l()(),p(35,"div",9)(36,"dt"),_(37),l(),p(38,"dd"),_(39),c(40,"hyphen"),l()(),p(41,"div",9)(42,"dt"),_(43),l(),p(44,"dd"),_(45),c(46,"hyphen"),l()(),p(47,"div",9)(48,"dt"),_(49),l(),p(50,"dd"),_(51),c(52,"hyphen"),l()(),p(53,"div",9)(54,"dt"),_(55),l(),p(56,"dd"),_(57),c(58,"hyphen"),l()(),p(59,"div",9)(60,"dt"),_(61),l(),g(62,"dd",10),c(63,"hyphen"),l()()(),S()}if(t&2){let e=s(2).ngIf,i=s().$implicit,n=s();a(3),m("permissionRequired",n.printPermission),a(),O(" ",i("subjectsCourses.printBasicData")," "),a(3),y(i("subjects.credit")),a(2),O(" ",d(10,22,e.data.credit)," "),a(4),y(i("subjectsCourses.requirementType")),a(2),O(" ",d(16,24,e.data.requirementType)," "),a(4),y(i("subjects.prerequisite")),a(2),O(" ",d(22,26,e.data.preRequirement)," "),a(4),y(i("subjectsCourses.finalRequirement")),a(2),O(" ",d(28,28,e.data.finalrequirement)," "),a(4),y(i("subjectsCourses.responsibleLecturer")),a(2),O(" ",d(34,30,e.data.subjectOwner)," "),a(4),y(i("publication.organization")),a(2),O(" ",d(40,32,e.data.organizationName)," "),a(4),y(i("subjectsCourses.administrativeOrganizationalUnit")),a(2),O(" ",d(46,34,e.data.adminOrganizationName)," "),a(4),y(i("communalSpace.webAddress")),a(2),O(" ",d(52,36,e.data.URL)," "),a(4),y(i("publication.comment")),a(2),O(" ",d(58,38,e.data.note)," "),a(4),y(i("global.description")),a(),m("innerHTML",d(63,40,e.data.description),Rn)}}function V0(t,r){if(t&1&&(u(0,q0,64,42,"ng-container",4),c(1,"isResultRequest")),t&2){let e=s().ngIf;m("ngIf",d(1,1,e))}}function U0(t,r){if(t&1&&(E(0),u(1,$0,3,0,"ng-container",4),c(2,"hasError"),u(3,B0,2,0,"ng-container",5),c(4,"isLoadingRequest"),u(5,V0,2,3,"ng-template",null,0,ae),S()),t&2){let e=r.ngIf,i=Y(6);a(),m("ngIf",d(2,3,e)),a(2),m("ngIf",d(4,5,e))("ngIfElse",i)}}function H0(t,r){if(t&1&&(E(0),g(1,"neptun-primary-title",2),p(2,"div",3),u(3,U0,7,7,"ng-container",4),c(4,"async"),l(),S()),t&2){let e=s();a(),m("title",e.pageTitle)("description",e.subjectCode),a(2),m("ngIf",d(4,3,e.subjectDetails$))}}var yn=(()=>{class t{constructor(e,i,n){this.activatedRoute=e,this.subjectDetailsStore=i,this.printService=n,this.printPermission={controllerName:"",actionName:"",permissionGuid:Pe.PrintableTemplates_PrintSubjectDetailsForFinalExams},this.pageTitle=this.activatedRoute?.snapshot?.queryParams?.subjectName,this.subjectCode=this.activatedRoute?.snapshot?.queryParams?.subjectCode,this.subjectDetails$=this.subjectDetailsStore.subjectDetails$}printSubjectDetails(e){this.printService.getPrintSubjectDetailsFormTypeId().pipe(U(({formTypeId:i})=>this.printService.getTemplate({formTypeId:i,callback:({value:n})=>this.printService.printSubjectDetailsForFinalExams(n,e.subjectId).pipe(F(o=>zo.downloadFile(o)))})),W(1)).subscribe()}ngOnInit(){this.subjectDetailsStore.getSubjectDetails(this.activatedRoute?.snapshot?.params.subjectId)}static{this.\u0275fac=function(i){return new(i||t)(f(ie),f(io),f(Gn))}}static{this.\u0275cmp=N({type:t,selectors:[["neptun-final-exams-subject-details"]],features:[oe([io])],decls:1,vars:0,consts:[["loadedContent",""],[4,"transloco"],[3,"title","description"],[1,"neptun-wrapper-padding"],[4,"ngIf"],[4,"ngIf","ngIfElse"],[1,"request-error-message"],["test-id","error"],["matDialogClose","","neptun-button","","accent","flat",1,"print-button",3,"click","permissionRequired"],["neptunDataViewItem",""],[3,"innerHTML"]],template:function(i,n){i&1&&u(0,H0,5,5,"ng-container",1)},dependencies:[z,ue,Q,Ye,Ui,xt,we,_i,Ne,gt,H,Re,Ze,We,ze],styles:[".print-button[_ngcontent-%COMP%]{margin:24px 0}.request-error-message[_ngcontent-%COMP%]{font-size:20px;margin-top:64px;text-align:center}"],changeDetection:0})}}return t})();function G0(t,r){if(t&1){let e=j();p(0,"button",8),A("click",function(){C(e);let n=s(2);return v(n.unsubscribeFromSubject())}),_(1),l()}if(t&2){let e=s().$implicit;a(),O(" ",e("finalExams.buttonWithdraw")," ")}}function z0(t,r){if(t&1&&g(0,"neptun-data-table",9),t&2){let e=r.ngIf,i=s(2);m("dataSource",e)("columns",i.finalExamColumns)("isMultipleActionMobileModeSupported",!0)("isNextVisible",!1)}}function W0(t,r){if(t&1&&g(0,"neptun-data-table-placeholder",11),t&2){let e=s().ngIf;m("loading",e)}}function Q0(t,r){if(t&1&&(E(0),u(1,W0,1,1,"neptun-data-table-placeholder",10),S()),t&2){let e=r.ngIf;a(),m("ngIf",e===!0)}}function K0(t,r){if(t&1&&(E(0),g(1,"neptun-primary-title",1),p(2,"div",2)(3,"h3"),_(4),l(),p(5,"p"),_(6),l(),p(7,"div",3),u(8,G0,2,1,"button",4),l()(),p(9,"div",5),u(10,z0,1,4,"neptun-data-table",6),c(11,"async"),u(12,Q0,2,1,"ng-container",7),c(13,"async"),l(),S()),t&2){let e=r.$implicit,i=s();a(),m("title",e("exams.takeExam")),a(3),y(i.subjectName),a(2),y(i.subjectCode),a(2),m("ngIf",!!i.subjectApplicationId&&i.enableCancelForSubject),a(2),m("ngIf",d(11,6,i.finalExams$)),a(2),m("ngIf",d(13,8,i.isLoading$))}}var cm=(()=>{class t{constructor(e,i,n,o,x,h,D,B,te){this.activatedRoute=e,this.router=i,this.dialogService=n,this.cdr=o,this.finalExamsService=x,this.finalExamsApplicationService=h,this.dateLocalizationService=D,this.translocoService=B,this.loadingService=te,this.subjectId=this.activatedRoute.snapshot.params.subjectId,this.subjectApplicationId=this.activatedRoute.snapshot.queryParams.subjectApplicationId,this.subjectName=this.activatedRoute.snapshot.queryParams.subjectName,this.subjectCode=this.activatedRoute.snapshot.queryParams.subjectCode,this.periodId=this.activatedRoute.snapshot.queryParams.periodId,this.applicationId=this.activatedRoute.snapshot.queryParams.applicationId,this.enableCancelForSubject=JSON.parse(this.activatedRoute.snapshot.queryParams.enableCancelForSubject),this.isLoading$=this.loadingService.isLoadingByUrl("FinalExams/GetFinalExamsByTakenSubjects"),this.hasTakenExam=!1,this.finalExamColumns=[{key:"startDate",text:"exams.examTime",disableSort:!0},{key:"applicants",text:"finalExams.applicants",disableSort:!0},{key:"description",text:"finalExams.examDescription",disableSort:!0}],this.finalExams$=this.finalExamsService.getFinalExamsByTakenSubjects(this.periodId,this.applicationId,this.subjectId).pipe(F(w=>{w.find(q=>q.examApplicationId)!==void 0&&(this.hasTakenExam=!0)}),T(w=>w.map(q=>this.convertToFinalExamTableRow(q))))}convertToFinalExamTableRow(e){let i=this.dateLocalizationService.localizeDate(e.startDate,void 0,{timeStyle:"short",dateStyle:"long"}),n=e.maxNumberOfApplicants!==null?e.maxNumberOfApplicants:this.translocoService.translate("exams.unlimited").toLowerCase(),o=`${e.numberOfApplicants} / ${n}`,x=I(b({},e),{startDate:i,applicants:o,uiDisplayState:this.finalExamsApplicationService.getUIDisplayState(!!e.isSzev,e.examApplicationId,Ct.DEFAULT)}),h=()=>this.router.navigate(["exams","final-exams","registration","exam",e.finalExamId],{queryParams:{finalExamId:e.finalExamId,examTime:i,periodId:this.periodId,applicationId:this.applicationId,subjectName:this.subjectName}});return{data:x,detailsCallback:h,actions:{info:{text:"studies.registrySheet.details",buttonStyle:"stroked",icon:ee.Info,hasArrow:!0,color:G.Primary,callback:h},changeExam:this.getExamChangeAction(e),applictaion:this.getApplicationAction(e)}}}unsubscribeFromSubject(){this.dialogService.openDialog(eo,{periodId:this.periodId,applicationId:this.applicationId,subjectId:this.subjectId,subjectApplicationId:this.subjectApplicationId,subjectName:this.subjectName,refreshExamListOnSuccess:!1,hasTakenExam:this.hasTakenExam}).afterClosed().pipe(le(e=>e),F(()=>{this.subjectApplicationId=null,this.navigateToRegistration(),this.cdr.detectChanges()})).subscribe()}getApplicationAction(e){let i="",n=G.Primary,o=!1,x=()=>{}
4,h,D=!e.examApplicationId&&e.enableApplyForExam,B=e.examApplicationId&&e.enableCancelExamApplication;return D?(i="finalExams.buttonRegister",n=G.Primary,o=!0,h={actionName:"ApplicationForExam",controllerName:"FinalExams"},x=()=>{this.applyForExam(e).pipe(W(1)).subscribe()}):B&&(i="finalExams.buttonWithdraw",n=G.Error,o=!0,h={actionName:"CancelExamApplication",controllerName:"FinalExams"},x=()=>{this.cancelExamApplication(e).pipe(W(1)).subscribe()}),{text:i,color:n,buttonStyle:"flat",hasArrow:o,callback:x,permission:h,disabled:D&&this.isApplicationButtonDisabled(e)}}getExamChangeAction(e){let i="",n=G.Primary,o=!1,x=()=>{},h=e.examApplicationId&&e.enableExamChange;if(h){i="exams.changeExam",n=G.Primary,o=!0;let D=e.examApplicationId;x=()=>{this.dialogService.openDialog(Ja,{finalExamId:e.finalExamId,periodId:this.periodId,applicationId:this.applicationId,examApplicationId:D,subjectId:this.subjectId,subjectApplicationId:this.subjectApplicationId})}}return{text:i,color:n,buttonStyle:"flat",hasArrow:o,callback:x,disabled:!h}}applyForExam(e){return this.finalExamsApplicationService.applicationForExam(this.periodId,e.finalExamId,this.applicationId,this.subjectApplicationId)}cancelExamApplication(e){return this.finalExamsApplicationService.cancelExamApplication(this.periodId,e.examApplicationId)}isApplicationButtonDisabled(e){return!!e.maxNumberOfApplicants&&e.numberOfApplicants===e.maxNumberOfApplicants}navigateToRegistration(){this.router.navigate(["exams","final-exams","registration"],{queryParams:{applicationId:this.applicationId,periodId:this.periodId,subjectName:this.subjectName,subjectCode:this.subjectCode},replaceUrl:!0})}static{this.\u0275fac=function(i){return new(i||t)(f(ie),f(re),f(Ve),f(Uo),f(Fi),f(Oe),f(fe),f(Z),f(Rt))}}static{this.\u0275cmp=N({type:t,selectors:[["neptun-final-exams-subject-related-exams"]],decls:1,vars:0,consts:[[4,"transloco"],[3,"title"],[1,"neptun-wrapper-padding"],[1,"exam-actions"],["neptun-button","","accent","stroked","color","error","class","responsive",3,"click",4,"ngIf"],[1,"neptun-wrapper"],[3,"dataSource","columns","isMultipleActionMobileModeSupported","isNextVisible",4,"ngIf"],[4,"ngIf"],["neptun-button","","accent","stroked","color","error",1,"responsive",3,"click"],[3,"dataSource","columns","isMultipleActionMobileModeSupported","isNextVisible"],[3,"loading",4,"ngIf"],[3,"loading"]],template:function(i,n){i&1&&u(0,K0,14,10,"ng-container",0)},dependencies:[z,ue,Q,we,Ue,Ei,H],styles:["p[_ngcontent-%COMP%]{margin-top:4px}.exam-actions[_ngcontent-%COMP%]{display:flex;align-items:center;gap:12px;margin-top:16px}a[_ngcontent-%COMP%]{display:flex;align-items:center;color:#a62c2c}"],changeDetection:0})}}return t})();var pm=(()=>{class t extends Yn{constructor(){super(...arguments),this._formDetailsApiUrl="FinalExams/GetSubmittedRequestFormDetails"}static{this.\u0275fac=(()=>{let e;return function(n){return(e||(e=ci(t)))(n||t)}})()}static{this.\u0275prov=M({token:t,factory:t.\u0275fac,providedIn:"root"})}}return t})();var no=(()=>{class t{static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275cmp=N({type:t,selectors:[["neptun-final-exams-submitted-request-form-details"]],features:[oe([{provide:Xn,useClass:pm}])],decls:1,vars:0,template:function(i,n){i&1&&g(0,"neptun-submitted-request-form-details-view")},dependencies:[Zn],encapsulation:2,changeDetection:0})}}return t})();var oo=class ao{constructor(){}static{this.\u0275fac=function(e){return new(e||ao)}}static{this.\u0275prov=M({token:ao,factory:ao.\u0275fac})}};oo=K([ke({name:"exam",defaults:{title:""},children:[Bt]}),P("design:paramtypes",[])],oo);var Ao={path:":examId",data:{breadcrumb:t=>t.subjectName},children:[{path:"",component:Gr,data:{breadcrumb:""}},{path:"online",data:{breadcrumb:"onlineOccasions"},children:[{path:"",component:es,data:{breadcrumb:""}},{path:":id",component:vr,data:{breadcrumb:t=>t.onlineOccasionName}}]},{path:"submitted-requests",data:{breadcrumb:"submittedRequests"},children:[{path:"",component:Rs,data:{breadcrumb:""}},pn(as),cn(is,fr,!1)]},{path:"subjects",data:{breadcrumb:"exams.subjects"},children:[{path:"",component:ps,data:{breadcrumb:""}}]},{path:"examiners",component:Kr,data:{breadcrumb:"exams.examiners"}},{path:"rooms",data:{breadcrumb:"exams.rooms"},children:[{path:"",component:ls,data:{breadcrumb:""}},{path:":id",component:rs,data:{breadcrumb:t=>t.roomName}}]},{path:"history",component:Yr,data:{breadcrumb:"exams.history"}},{path:"request-form-to-be-completed/:requestFormTemplateId/:examId",data:{breadcrumb:t=>t.requestFormName},children:[{path:"",component:Er,data:{breadcrumb:""}},{path:"filling",component:hr,data:{disableBreadcrumb:!0}}]}]},X0=[{path:"",component:Lr,data:{breadcrumb:""}},{path:"overview",data:{breadcrumb:"exams.overview"},children:[{path:"",component:Os,data:{breadcrumb:null}},{path:"registration",data:{breadcrumb:"exams.examRegistration"},children:[{path:"",component:_s,data:{breadcrumb:""}},Ao]},{path:"taken",data:{breadcrumb:"exams.registeredExams"},children:[{path:"",component:ws,data:{breadcrumb:""}},Ao]},{path:"remaining",data:{breadcrumb:"exams.remainingRegisteredExams"},children:[{path:"",component:hs,data:{breadcrumb:""}},Ao]},{path:"results",data:{breadcrumb:"exams.results"},children:[{path:"",component:ys,data:{breadcrumb:""}},{path:":id",data:{breadcrumb:t=>t.resultName},children:[{path:"",component:vo,data:{breadcrumb:""}},{path:"result-history/:subjectCode",data:{breadcrumb:"exams.history"},children:[{path:"",component:Ss,data:{breadcrumb:""}},{path:"details",component:vo,data:{breadcrumb:t=>t.resultName}}]}]}]}]},{path:"final-exams",data:{breadcrumb:"finalExams.title"},children:[{path:"registration",data:{breadcrumb:"finalExams.registration"},children:[{path:"subject-details/:subjectId",component:yn,data:{breadcrumb:t=>t.subjectName}},{path:"period/:periodId",data:{breadcrumb:t=>t.periodName},children:[{path:"",component:Do,data:{breadcrumb:""}},{path:"subject-details/:subjectId",component:yn,data:{breadcrumb:t=>t.subjectName}},pn(no),cn(to,ta,!1)]},{path:"subject-related-exams/:subjectId",data:{breadcrumb:"takeExam"},children:[{path:"",component:cm,data:{breadcrumb:""}},Cr]},{path:"exam/:examId",component:Ua,data:{breadcrumb:t=>t.examTime}},{path:"",component:mm,data:{breadcrumb:""}}]},{path:"previous-registrations/:applicationId",data:{breadcrumb:t=>t.periodName},children:[{path:"",component:Zs,data:{breadcrumb:""}},{path:"subject-details/:subjectId",component:yn,data:{breadcrumb:t=>t.subjectName}},{path:"exam/:examId",component:Ua,data:{breadcrumb:t=>t.examTime}},pn(no),cn(to,ta,!1)]},{path:"current-registration/:periodId",data:{breadcrumb:t=>t.periodName},children:[{path:"exam/:examId",component:Ua,data:{breadcrumb:t=>t.examTime}},{path:"",component:Do,data:{breadcrumb:""}},{path:"subject-details/:subjectId",component:yn,data:{breadcrumb:t=>t.subjectName}},pn(no),cn(to,ta,!1)]},{path:"period-list",component:Qs,data:{breadcrumb:()=>!1,defaultText:"finalExams.periodList"}},{path:"",component:qs,data:{breadcrumb:""}}]}],Hj=[{path:"",data:{breadcrumb:""},providers:[Go([oo,Bt,gr,ii,ni,ti,Wt,ei,ai,mi,oi,ri]),Qo,dn,ft,ua],children:X0}];export{Hj as routes};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.