{"version":3,"sources":["/./$_lazy_route_resource lazy namespace object","/./src/app/app.component.html","/./src/app/app.component.scss","/./src/app/app.component.ts","/./src/app/app.module.ts","/./src/environments/environment.ts","/./src/main.ts"],"names":[],"mappings":";;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE;AACF;AACA,4CAA4C,WAAW;AACvD;AACA;AACA,wE;;;;;;;;;;;ACZA,u1BAAu1B,gMAAgM,8gBAA8gB,6LAA6L,woBAAwoB,8IAA8I,UAAU,0FAA0F,mBAAmB,sDAAsD,gIAAgI,mWAAmW,KAAK,gNAAgN,KAAK,upBAAupB,uEAAuE,iTAAiT,KAAK,+rB;;;;;;;;;;;ACAt3I,mCAAmC,wCAAwC,GAAG,qBAAqB,qCAAqC,GAAG,oBAAoB,uCAAuC,GAAG,gBAAgB,gEAAgE,8BAA8B,kBAAkB,GAAG,kBAAkB,8BAA8B,gBAAgB,GAAG,sCAAsC,2BAA2B,iBAAiB,GAAG,qCAAqC,8BAA8B,GAAG,2BAA2B,2BAA2B,GAAG,qBAAqB,sBAAsB,yBAAyB,qBAAqB,8BAA8B,iBAAiB,GAAG,6CAA6C,urF;;;;;;;;;;;;;;;;;;;ACAhuB;AAEX;AACQ;AAOxD,IAAa,YAAY,GAAzB,MAAa,YAAY;IAqBvB,YAAoB,IAAgB;QAAhB,SAAI,GAAJ,IAAI,CAAY;QAlBpC,yBAAoB,GAAG,EAAE,CAAC;QAC1B,eAAU,GAAG,IAAI,CAAC;QAClB,sBAAiB,GAAG,KAAK,CAAC;QAC1B,WAAM,GAAG,MAAM,CAAC,CAAC,uCAAuC;QAExD,iBAAY,GAAkB;YAC5B,YAAY,EAAE,IAAI;YAClB,QAAQ,EAAE,IAAI;YACd,SAAS,EAAE,eAAe,CAAC,OAAO;YAClC,GAAG,EAAE,eAAe;SACrB,CAAC;QACF,gBAAW,GAAkB;YAC3B,YAAY,EAAE,IAAI;YAClB,QAAQ,EAAE,IAAI;YACd,SAAS,EAAE,eAAe,CAAC,OAAO;YAClC,GAAG,EAAE,cAAc;SACpB,CAAC;IAGF,CAAC;IAED,QAAQ;QACN,IAAI,CAAC,cAAc,EAAE,CAAC;QACtB,IAAI,CAAC,eAAe,EAAE,CAAC;QACvB,IAAI,CAAC,gBAAgB,EAAE,CAAC;IAC1B,CAAC;IAED,WAAW;QACT,IAAI,IAAI,CAAC,YAAY,EAAE;YACrB,IAAI,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC;SACjC;QACD,IAAI,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE;YAClC,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC;SAC9C;QACD,IAAI,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE;YACjC,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC;SAC7C;QACD,IAAI,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE;YAC9B,aAAa,CAAC,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;SAC3C;QACD,IAAI,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE;YAC7B,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;SAC1C;IACH,CAAC;IAED,eAAe;QACb,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAChD,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACjD,CAAC;IAED,uBAAuB,CAAC,SAAwB;QAC9C,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;QAClC,SAAS,CAAC,QAAQ,GAAG,WAAW,CAAC,GAAG,EAAE;YACpC,IAAI,CAAC,sBAAsB,CAAC,SAAS,CAAC,CAAC;QACzC,CAAC,EAAE,IAAI,CAAC,CAAC;IACX,CAAC;IAEO,sBAAsB,CAAC,SAAwB;QACrD,IAAI,SAAS,CAAC,YAAY,EAAE;YAC1B,SAAS,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC;SACtC;QACD,SAAS,CAAC,YAAY,GAAG,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;IAC7D,CAAC;IAEO,iBAAiB,CAAC,SAAwB;QAChD,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,qEAAW,CAAC,OAAO,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,GAAQ,EAAE,EAAE;YAC/E,IAAI,GAAG,IAAI,GAAG,CAAC,KAAK,EAAE;gBACpB,SAAS,CAAC,SAAS,GAAG,eAAe,CAAC,MAAM,CAAC;aAC9C;iBAAM;gBACL,SAAS,CAAC,SAAS,GAAG,eAAe,CAAC,OAAO,CAAC;aAC/C;QACH,CAAC,EAAE,GAAG,CAAC,EAAE;YACP,OAAO,CAAC,KAAK,CAAC,aAAa,EAAE,SAAS,CAAC,GAAG,EAAE,UAAU,EAAE,GAAG,CAAC,CAAC;YAC7D,SAAS,CAAC,SAAS,GAAG,eAAe,CAAC,OAAO,CAAC;QAChD,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,cAAc;QACpB,IAAI,IAAI,CAAC,YAAY,EAAE;YACrB,IAAI,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC;SAEjC;QACD,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,qEAAW,CAAC,OAAO,GAAG,WAAW,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE;YACjF,IAAI,CAAC,QAAQ,GAAI,GAAkB,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YACnE,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAC/B,CAAC,EAAE,GAAG,CAAC,EAAE;YACP,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;QAC5B,CAAC,CACF,CAAC;IACJ,CAAC;IAED,gBAAgB;QACd,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,qEAAW,CAAC,OAAO,GAAG,WAAW,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE;YAC/D,IAAI,CAAC,UAAU,GAAG,GAAG,CAAC;QACxB,CAAC,EAAE,GAAG,CAAC,EAAE;YACP,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;QAC5B,CAAC,CAAC,CAAC;IACL,CAAC;IAED,gBAAgB;QACd,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,qEAAW,CAAC,OAAO,GAAG,WAAW,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE;YAClE,OAAO,CAAC,GAAG,CAAE,GAAW,CAAC,OAAO,CAAC,CAAC;YAClC,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;QACvB,CAAC,EAAE,GAAG,CAAC,EAAE;YACP,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;YAC1B,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAC1B,CAAC,CAAC,CAAC;IACL,CAAC;IAED,qBAAqB;QACnB,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YAC5B,IAAI,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE;gBACvC,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;aACnD;YACD,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,qEAAW,CAAC,OAAO,GAAG,cAAc,GAAG,KAAK,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE;gBACnH,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC;gBAC/B,KAAK,CAAC,QAAQ,GAAG,GAAG,CAAC;YACvB,CAAC,EAAE,GAAG,CAAC,EAAE;gBACP,IAAI,GAAG,CAAC,KAAK,IAAI,GAAG,CAAC,KAAK,CAAC,KAAK,IAAI,GAAG,CAAC,KAAK,CAAC,KAAK,KAAK,iBAAiB,EAAE;oBACzE,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;iBAC/B;YACH,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAED,OAAO;QACL,IAAI,CAAC,YAAY,CAAC,SAAS,GAAG,eAAe,CAAC,OAAO,CAAC;QACtD,IAAI,CAAC,WAAW,CAAC,SAAS,GAAG,eAAe,CAAC,OAAO,CAAC;QACrD,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,CAAC,QAAQ,EAAE,CAAC;IAClB,CAAC;CACF;;YAjH2B,+DAAU;;AArBzB,YAAY;IALxB,+DAAS,CAAC;QACT,QAAQ,EAAE,UAAU;QACpB,uIAAmC;;KAEpC,CAAC;GACW,YAAY,CAsIxB;AAtIwB;AAwIzB,IAAK,eAEJ;AAFD,WAAK,eAAe;IAClB,sCAAmB;IAAE,oCAAiB;IAAE,sCAAmB;AAC7D,CAAC,EAFI,eAAe,KAAf,eAAe,QAEnB;;;;;;;;;;;;;;;;;;;;;;;;ACpJuD;AACjB;AAEM;AACS;AACuB;AACoC;AAC3D;AAoBtD,IAAa,SAAS,GAAtB,MAAa,SAAS;CACrB;AADY,SAAS;IAlBrB,8DAAQ,CAAC;QACR,YAAY,EAAE;YACZ,2DAAY;SACb;QACD,OAAO,EAAE;YACP,uEAAa;YACb,4FAAuB;YACvB,+DAAa;YACb,kEAAgB;YAChB,+DAAa;YACb,qEAAgB;YAChB,iEAAe;YACf,qEAAgB;YAChB,+DAAa;SACd;QACD,SAAS,EAAE,EAAE;QACb,SAAS,EAAE,CAAC,2DAAY,CAAC;KAC1B,CAAC;GACW,SAAS,CACrB;AADqB;;;;;;;;;;;;;AC3BtB;AAAA;AAAA,gFAAgF;AAChF,0EAA0E;AAC1E,gEAAgE;AAEzD,MAAM,WAAW,GAAG;IACzB,UAAU,EAAE,KAAK;IACjB,OAAO,EAAE,2BAA2B;CACrC,CAAC;AAEF;;;;;;GAMG;AACH,mEAAmE;;;;;;;;;;;;;AChBnE;AAAA;AAAA;AAAA;AAAA;AAA+C;AAC4B;AAE9B;AACY;AAEzD,IAAI,qEAAW,CAAC,UAAU,EAAE;IAC1B,oEAAc,EAAE,CAAC;CAClB;AAED,gGAAsB,EAAE,CAAC,eAAe,CAAC,yDAAS,CAAC;KAChD,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC","file":"main-es2015.js","sourcesContent":["function webpackEmptyAsyncContext(req) {\n\t// Here Promise.resolve().then() is used instead of new Promise() to prevent\n\t// uncaught exception popping up in devtools\n\treturn Promise.resolve().then(function() {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t});\n}\nwebpackEmptyAsyncContext.keys = function() { return []; };\nwebpackEmptyAsyncContext.resolve = webpackEmptyAsyncContext;\nmodule.exports = webpackEmptyAsyncContext;\nwebpackEmptyAsyncContext.id = \"./$$_lazy_route_resource lazy recursive\";","module.exports = \"
\\n
\\n
\\n

\\n Oldtimer Veteránautó-kölcsönző - Adminisztrációs oldal\\n

\\n
\\n

Ezzel a gombbal újratöltheti a lekérdezéseket:

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

Szerver státusz:

\\n \\n

\\n Az alábbi gombok jelzik, hogy rendben működik-e az Alkalmazásszerver és az Adatbázis:\\n

\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
Alkalmazásserver státusz:\\n \\n
MySQL adatbázis státusz:\\n \\n
\\n
\\n\\n

SQL lekérdezések eredményei:

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

{{entry.id}} Feladat:

\\n
\\n\\n

{{entry.description}}

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

Ehhez a feladathoz még nem szerepel SQL lekérdezés a beadandó fájlban\\n (/lekerdezesek/lekerdezesek.sql).

\\n
\\n \\n \\n \\n \\n \\n\\n \\n \\n \\n \\n \\n
{{key}}
{{val}}
\\n
\\n\\n
\\n\\n\\n \\n
\\n
\\n

Felhasználói vélemények

\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
BejegyzésDátum
{{val}}
\\n
\\n
\\n\\n \\n \\n Az alkalamzás szervernek futnia kell a vélemények betöltéséhez.\\n \\n \\n\\n \\n Nem sikerült az SQL lekérdezéseket lekérdezni.\\n \\n\\n \\n

A lekérdezéshez tartozó válasz betöltése nem sikerült.

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

A Vélemény bejegyzéseket nem sikerült lekérdezni.

\\n
\\n\\n
\\n
\\n\\n\"","module.exports = \".pending-button {\\n background-color: yellow !important;\\n}\\n\\n.offline-button {\\n background-color: red !important;\\n}\\n\\n.active-button {\\n background-color: green !important;\\n}\\n\\n.container {\\n font-family: \\\"Trebuchet MS\\\", Arial, Helvetica, sans-serif;\\n background-color: #d3eadf;\\n padding: 10px;\\n}\\n\\n.query-table {\\n border-collapse: collapse;\\n width: 100%;\\n}\\n\\n.query-table td, .query-table th {\\n border: 1px solid #ddd;\\n padding: 8px;\\n}\\n\\n.query-table tr:nth-child(even) {\\n background-color: #f2f2f2;\\n}\\n\\n.query-table tr:hover {\\n background-color: #ddd;\\n}\\n\\n.query-table th {\\n padding-top: 12px;\\n padding-bottom: 12px;\\n text-align: left;\\n background-color: #4CAF50;\\n color: white;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvQzpcXFVzZXJzXFxvcmFjbGVcXERlc2t0b3BcXEZvcmVzdFxcMS43XFxhZG1pbi1sZWbDvGxldC1zb3VyY2Uta8OzZGphXFxhZG1pbi9zcmNcXGFwcFxcYXBwLmNvbXBvbmVudC5zY3NzIiwic3JjL2FwcC9hcHAuY29tcG9uZW50LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7RUFDRSxtQ0FBQTtBQ0NGOztBREVBO0VBQ0UsZ0NBQUE7QUNDRjs7QURFQTtFQUNFLGtDQUFBO0FDQ0Y7O0FERUE7RUFDRSx5REFBQTtFQUNBLHlCQUFBO0VBQ0EsYUFBQTtBQ0NGOztBREVBO0VBQ0UseUJBQUE7RUFDQSxXQUFBO0FDQ0Y7O0FEQ0U7RUFDRSxzQkFBQTtFQUNBLFlBQUE7QUNDSjs7QURFRTtFQUNFLHlCQUFBO0FDQUo7O0FER0U7RUFDRSxzQkFBQTtBQ0RKOztBRElFO0VBQ0UsaUJBQUE7RUFDQSxvQkFBQTtFQUNBLGdCQUFBO0VBQ0EseUJBQUE7RUFDQSxZQUFBO0FDRkoiLCJmaWxlIjoic3JjL2FwcC9hcHAuY29tcG9uZW50LnNjc3MiLCJzb3VyY2VzQ29udGVudCI6WyIucGVuZGluZy1idXR0b24ge1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHllbGxvdyAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4ub2ZmbGluZS1idXR0b24ge1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHJlZCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uYWN0aXZlLWJ1dHRvbiB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogZ3JlZW4gIWltcG9ydGFudDtcclxufVxyXG5cclxuLmNvbnRhaW5lciB7XHJcbiAgZm9udC1mYW1pbHk6IFwiVHJlYnVjaGV0IE1TXCIsIEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2QzZWFkZjtcclxuICBwYWRkaW5nOiAxMHB4O1xyXG59XHJcblxyXG4ucXVlcnktdGFibGUge1xyXG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XHJcbiAgd2lkdGg6IDEwMCU7XHJcblxyXG4gIHRkLCB0aCB7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZGRkO1xyXG4gICAgcGFkZGluZzogOHB4O1xyXG4gIH1cclxuXHJcbiAgdHI6bnRoLWNoaWxkKGV2ZW4pIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmMmYyZjI7XHJcbiAgfVxyXG5cclxuICB0cjpob3ZlciB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGRkO1xyXG4gIH1cclxuXHJcbiAgdGgge1xyXG4gICAgcGFkZGluZy10b3A6IDEycHg7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMTJweDtcclxuICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNENBRjUwO1xyXG4gICAgY29sb3I6IHdoaXRlO1xyXG4gIH1cclxufVxyXG4iLCIucGVuZGluZy1idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB5ZWxsb3cgIWltcG9ydGFudDtcbn1cblxuLm9mZmxpbmUtYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmVkICFpbXBvcnRhbnQ7XG59XG5cbi5hY3RpdmUtYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogZ3JlZW4gIWltcG9ydGFudDtcbn1cblxuLmNvbnRhaW5lciB7XG4gIGZvbnQtZmFtaWx5OiBcIlRyZWJ1Y2hldCBNU1wiLCBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDNlYWRmO1xuICBwYWRkaW5nOiAxMHB4O1xufVxuXG4ucXVlcnktdGFibGUge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICB3aWR0aDogMTAwJTtcbn1cbi5xdWVyeS10YWJsZSB0ZCwgLnF1ZXJ5LXRhYmxlIHRoIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2RkZDtcbiAgcGFkZGluZzogOHB4O1xufVxuLnF1ZXJ5LXRhYmxlIHRyOm50aC1jaGlsZChldmVuKSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMmYyZjI7XG59XG4ucXVlcnktdGFibGUgdHI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGRkO1xufVxuLnF1ZXJ5LXRhYmxlIHRoIHtcbiAgcGFkZGluZy10b3A6IDEycHg7XG4gIHBhZGRpbmctYm90dG9tOiAxMnB4O1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNENBRjUwO1xuICBjb2xvcjogd2hpdGU7XG59Il19 */\"","import {Component, OnDestroy, OnInit} from '@angular/core';\nimport {Subscription, TimeInterval} from 'rxjs';\nimport {HttpClient} from '@angular/common/http';\nimport {environment} from '../environments/environment';\n\n@Component({\n selector: 'app-root',\n templateUrl: './app.component.html',\n styleUrls: ['./app.component.scss']\n})\nexport class AppComponent implements OnInit, OnDestroy {\n subscription: Subscription;\n sqlTasks: any;\n sqlTaskSubscriptions = {};\n velemenyek = null;\n dbIsNotYetCreated = false;\n Object = Object; // a template fájlokban is elérhető így\n\n serverStatus: IStatusObject = {\n subscription: null,\n interval: null,\n indicator: StatusIndicator.pending,\n url: '/serverStatus'\n };\n mysqlStatus: IStatusObject = {\n subscription: null,\n interval: null,\n indicator: StatusIndicator.pending,\n url: '/mysqlStatus'\n };\n\n constructor(private http: HttpClient) {\n }\n\n ngOnInit(): void {\n this.reloadSqlTasks();\n this.startMonitoring();\n this.reloadVelemenyek();\n }\n\n ngOnDestroy(): void {\n if (this.subscription) {\n this.subscription.unsubscribe();\n }\n if (this.serverStatus.subscription) {\n this.serverStatus.subscription.unsubscribe();\n }\n if (this.mysqlStatus.subscription) {\n this.mysqlStatus.subscription.unsubscribe();\n }\n if (this.serverStatus.interval) {\n clearInterval(this.serverStatus.interval);\n }\n if (this.mysqlStatus.interval) {\n clearInterval(this.mysqlStatus.interval);\n }\n }\n\n startMonitoring() {\n this.startMonitoringInterval(this.serverStatus);\n this.startMonitoringInterval(this.mysqlStatus);\n }\n\n startMonitoringInterval(statusObj: IStatusObject) {\n this.createHttpRequest(statusObj);\n statusObj.interval = setInterval(() => {\n this.createRESTSubscription(statusObj);\n }, 5000);\n }\n\n private createRESTSubscription(statusObj: IStatusObject) {\n if (statusObj.subscription) {\n statusObj.subscription.unsubscribe();\n }\n statusObj.subscription = this.createHttpRequest(statusObj);\n }\n\n private createHttpRequest(statusObj: IStatusObject) {\n return this.http.get(environment.baseUrl + statusObj.url).subscribe((res: any) => {\n if (res && res.alive) {\n statusObj.indicator = StatusIndicator.active;\n } else {\n statusObj.indicator = StatusIndicator.offline;\n }\n }, err => {\n console.error('Error with ', statusObj.url, ' status:', err);\n statusObj.indicator = StatusIndicator.offline;\n });\n }\n\n private reloadSqlTasks() {\n if (this.subscription) {\n this.subscription.unsubscribe();\n\n }\n this.subscription = this.http.get(environment.baseUrl + '/sqltasks').subscribe(res => {\n this.sqlTasks = (res as Array).filter(task => task.adminPage);\n this.requestSqlTaskResults();\n }, err => {\n console.log('err: ', err);\n }\n );\n }\n\n reloadVelemenyek() {\n this.http.get(environment.baseUrl + '/velemeny').subscribe(res => {\n this.velemenyek = res;\n }, err => {\n console.log('err: ', err);\n });\n }\n\n deleteVelemenyek() {\n this.http.delete(environment.baseUrl + '/velemeny').subscribe(res => {\n console.log((res as any).message);\n this.velemenyek = [];\n }, err => {\n console.log('err: ', err);\n this.reloadVelemenyek();\n });\n }\n\n requestSqlTaskResults() {\n this.sqlTasks.forEach(entry => {\n if (this.sqlTaskSubscriptions[entry.id]) {\n this.sqlTaskSubscriptions[entry.id].unsubscribe();\n }\n this.sqlTaskSubscriptions[entry.id] = this.http.get(environment.baseUrl + '/lekerdezes/' + entry.id).subscribe(res => {\n this.dbIsNotYetCreated = false;\n entry.response = res;\n }, err => {\n if (err.error && err.error.error && err.error.error === 'ER_BAD_DB_ERROR') {\n this.dbIsNotYetCreated = true;\n }\n });\n });\n }\n\n refresh() {\n this.serverStatus.indicator = StatusIndicator.pending;\n this.mysqlStatus.indicator = StatusIndicator.pending;\n this.ngOnDestroy();\n this.ngOnInit();\n }\n}\n\nenum StatusIndicator {\n pending = 'pending', active = 'active', offline = 'offline'\n}\n\ninterface IStatusObject {\n subscription: Subscription;\n interval: any;\n indicator: StatusIndicator;\n url: string;\n}\n","import {BrowserModule} from '@angular/platform-browser';\nimport {NgModule} from '@angular/core';\n\nimport {AppComponent} from './app.component';\nimport {HttpClientModule} from '@angular/common/http';\nimport {BrowserAnimationsModule} from '@angular/platform-browser/animations';\nimport {MatButtonModule, MatCardModule, MatDividerModule, MatIconModule, MatListModule} from '@angular/material';\nimport {FlexLayoutModule} from '@angular/flex-layout';\n\n@NgModule({\n declarations: [\n AppComponent\n ],\n imports: [\n BrowserModule,\n BrowserAnimationsModule,\n MatCardModule,\n MatDividerModule,\n MatListModule,\n HttpClientModule,\n MatButtonModule,\n FlexLayoutModule,\n MatIconModule\n ],\n providers: [],\n bootstrap: [AppComponent]\n})\nexport class AppModule {\n}\n","// This file can be replaced during build by using the `fileReplacements` array.\n// `ng build --prod` replaces `environment.ts` with `environment.prod.ts`.\n// The list of file replacements can be found in `angular.json`.\n\nexport const environment = {\n production: false,\n baseUrl: 'http://localhost:8000/api'\n};\n\n/*\n * For easier debugging in development mode, you can import the following file\n * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`.\n *\n * This import should be commented out in production mode because it will have a negative impact\n * on performance if an error is thrown.\n */\n// import 'zone.js/dist/zone-error'; // Included with Angular CLI.\n","import { enableProdMode } from '@angular/core';\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\n\nimport { AppModule } from './app/app.module';\nimport { environment } from './environments/environment';\n\nif (environment.production) {\n enableProdMode();\n}\n\nplatformBrowserDynamic().bootstrapModule(AppModule)\n .catch(err => console.error(err));\n"],"sourceRoot":""}