From c98be7b23fa574032c562894037fe49fc0a7e67b Mon Sep 17 00:00:00 2001 From: Stefan Date: Sat, 4 Jul 2026 16:37:23 +0200 Subject: [PATCH] Enhance banking transaction data structure and validation - Increased the length of the NameOfPayer field from NVARCHAR(60) to NVARCHAR(140) in the banking transactions function, table, temporary table, and user-defined type to accommodate longer names. - Expanded the SepaRemittanceInformation field from VARCHAR(150) to VARCHAR(200) in the banking transactions function for more detailed remittance information. - Modified the stored procedure fds__setBankingtransaction_done to return additional transaction data (ValueDate and Amount) along with the success flag for improved notification messaging. - Added validation in MFRClientConfig constructor to ensure the provided URL is not null or empty, enhancing error handling for configuration settings. --- Fuchs.Tests/BankingTests.cs | 47 ++++++++++++++++ Fuchs.Tests/CamtParserTests.cs | 10 ++-- Fuchs.Tests/MFRClientTests.cs | 12 +++++ .../Controllers/IntranetController.Banking.cs | 12 ++++- Fuchs/Notifications/DomainEvent.cs | 1 + Fuchs/Notifications/EventService.cs | 38 +++++++++++++ Fuchs/Notifications/IEventService.cs | 1 + Fuchs/Program.cs | 5 ++ Fuchs/Services/BankingService.cs | 48 +++++++++++++++++ Fuchs/appsettings.Development.json | 9 +++- Fuchs/appsettings.json | 9 +++- Fuchs/css/intranet/fis_main.scss | 54 ++++++++++--------- Fuchs/js/intranet/fis_main.js | 16 +++++- Fuchs/wwwroot/web/fis.css | 52 +++++++++--------- Fuchs/wwwroot/web/fis.js | 16 +++++- Fuchs/wwwroot/web/fis.min.css | 2 +- Fuchs/wwwroot/web/fis.min.js | 2 +- Fuchs/wwwroot/web/tools.js | 5 +- .../Functions/fds__fn_bankingtransactions.sql | 4 +- .../fds__setBankingtransaction_done.sql | 9 +++- .../dbo/Tables/fds__bankingtransactions.sql | 2 +- .../Tables/tmp__fds__bankingtransactions.sql | 2 +- .../fds__tt__bankingtransactions.sql | 2 +- MFR_RESTClient/MFRClientModels.cs | 3 ++ 24 files changed, 287 insertions(+), 74 deletions(-) diff --git a/Fuchs.Tests/BankingTests.cs b/Fuchs.Tests/BankingTests.cs index b6904e7..b239bcb 100644 --- a/Fuchs.Tests/BankingTests.cs +++ b/Fuchs.Tests/BankingTests.cs @@ -129,4 +129,51 @@ public class BankingParseToDatatableTests var ex = Record.Exception(() => Svc.ParseToDatatable(stream)); Assert.Null(ex); } + + [Theory] + [InlineData("AccountIdentification", 50)] + [InlineData("NameOfPayer", 140)] + [InlineData("SepaRemittanceInformation", 200)] + [InlineData("DebitCreditMark", 2)] + [InlineData("UnstructuredData", 390)] + public void ParseToDatatable_DefaultSchema_EnforcesKnownColumnWidth(string column, int expectedMaxLength) + { + using var stream = ToStream(MinimalMT940); + var table = Svc.ParseToDatatable(stream); + Assert.Equal(expectedMaxLength, table.Columns[column]!.MaxLength); + } + + [Fact] + public void ParseToDatatable_SchemaWithoutMaxLength_StillEnforcesKnownWidths() + { + // Mirrors the real bug: SELECT TOP(0) * FROM @tmp (a table-type variable) comes back + // from ADO.NET with MaxLength = -1 for every string column, so a schema built purely + // from that fetch cannot truncate on its own. ApplyKnownColumnWidths must patch it up + // regardless of what the caller-supplied schema carries. + var schema = new DataTable(); + schema.Columns.Add("AccountIdentification", typeof(string)); + schema.Columns.Add("Amount", typeof(decimal)); + schema.Columns.Add("DebitCreditMark", typeof(string)); + Assert.Equal(-1, schema.Columns["AccountIdentification"]!.MaxLength); + + using var stream = ToStream(MinimalMT940); + var table = Svc.ParseToDatatable(stream, schemaDatatable: schema); + + Assert.Equal(50, table.Columns["AccountIdentification"]!.MaxLength); + Assert.Equal(2, table.Columns["DebitCreditMark"]!.MaxLength); + } + + [Fact] + public void ParseToDatatable_OverlongAccountIdentification_TruncatesInsteadOfThrowing() + { + string longAccount = "DE" + new string('9', 60); // 62 chars, over the 50-char column width + string mt940 = MinimalMT940.Replace("DE12345678901234567890", longAccount); + + using var stream = ToStream(mt940); + var table = Svc.ParseToDatatable(stream); + + Assert.Equal(1, table.Rows.Count); + Assert.Equal(50, ((string)table.Rows[0]["AccountIdentification"]).Length); + Assert.Equal(longAccount[..50], table.Rows[0]["AccountIdentification"]); + } } diff --git a/Fuchs.Tests/CamtParserTests.cs b/Fuchs.Tests/CamtParserTests.cs index 4203471..97a7ef4 100644 --- a/Fuchs.Tests/CamtParserTests.cs +++ b/Fuchs.Tests/CamtParserTests.cs @@ -391,7 +391,7 @@ public class BankingDualFormatTests t.Columns.Add("Amount", typeof(decimal)); t.Columns.Add("ValueDate", typeof(DateTime)); t.Columns.Add("FundsCode", typeof(string)).MaxLength = 1; // VARCHAR(1) — currency "EUR" must not land here - t.Columns.Add("NameOfPayer", typeof(string)).MaxLength = 60; + t.Columns.Add("NameOfPayer", typeof(string)).MaxLength = 140; t.Columns.Add("PostingText", typeof(string)).MaxLength = 30; t.Columns.Add("TransactionTypeIdCode", typeof(string)).MaxLength = 3; t.Columns.Add("SepaRemittanceInformation", typeof(string)).MaxLength = 200; @@ -418,7 +418,9 @@ public class BankingDualFormatTests [Fact] public void ParseToDatatable_Camt_OverlongFields_AreTruncatedNotDropped() { - const string longName = "Ein sehr langer Zahlungspflichtiger Name der weit ueber sechzig Zeichen hinausgeht GmbH Co KG"; + // Some banks put the full postal address into , not just a name — real-world case + // that exceeds even the ISO 20022 Max140Text width this column is now sized to. + const string longName = "Ein sehr langer Zahlungspflichtiger Name der weit ueber hundertvierzig Zeichen hinausgeht GmbH Co KG, Musterstrasse 123, 12345 Musterstadt, Deutschland"; string camt = """ @@ -440,7 +442,7 @@ public class BankingDualFormatTests var t = Svc.ParseToDatatable(s, schemaDatatable: DbLikeSchema()); Assert.Equal(1, t.Rows.Count); - Assert.Equal(60, ((string)t.Rows[0]["NameOfPayer"]).Length); // truncated to column width, row kept - Assert.Equal(longName[..60], t.Rows[0]["NameOfPayer"]); + Assert.Equal(140, ((string)t.Rows[0]["NameOfPayer"]).Length); // truncated to column width, row kept + Assert.Equal(longName[..140], t.Rows[0]["NameOfPayer"]); } } diff --git a/Fuchs.Tests/MFRClientTests.cs b/Fuchs.Tests/MFRClientTests.cs index 70e2272..7d48021 100644 --- a/Fuchs.Tests/MFRClientTests.cs +++ b/Fuchs.Tests/MFRClientTests.cs @@ -55,6 +55,18 @@ public class MFRClientConfigTests Assert.Equal("", config.LogoutAddress); Assert.Equal("", config.TokenCookieName); } + + // Regression: an empty/missing host used to be silently turned into "https:///odata/" + // (empty authority), which only failed much later inside RestSharp with a cryptic + // "Invalid URI: The hostname could not be parsed." Fail fast at construction instead. + [Theory] + [InlineData(null)] + [InlineData("")] + [InlineData(" ")] + public void Constructor_WithMissingHost_ThrowsArgumentException(string? url) + { + Assert.Throws(() => new MFRClientConfig(url!)); + } } public class MFRClientCredentialsTests diff --git a/Fuchs/Controllers/IntranetController.Banking.cs b/Fuchs/Controllers/IntranetController.Banking.cs index 6e6d545..6c69d04 100644 --- a/Fuchs/Controllers/IntranetController.Banking.cs +++ b/Fuchs/Controllers/IntranetController.Banking.cs @@ -190,11 +190,19 @@ public partial class IntranetController { if (!HasForm("taid")) return BadRequest400(); var pl = StdParamlist(SQL_VarChar("@taID", Form("taid"), dbNull_IfEmpty: true)); - var res = await getSQLValue_async( + var res = await getSQLDatatable_async( "EXECUTE [dbo].[fds__setBankingtransaction_done] @taID, @authuser;", _intranet.Intranet__SQLConnectionString, pl, Security: DbSec, options: SqlOpt(fn, id, code)); - return res.Result is true + var row = res.FirstRow; + bool success = row["success"] is true; + if (success) + { + DateTime? valueDate = row["ValueDate"] == DBNull.Value ? null : (DateTime)row["ValueDate"]; + decimal? amount = row["Amount"] == DBNull.Value ? null : (decimal)row["Amount"]; + await _events.BankingTransactionMarkedDoneAsync(Form("taid"), valueDate, amount, UserAccountID); + } + return success ? await JSONAsync(new { ok = true }) : StatusCode(500, new { error = "not successful" }); } diff --git a/Fuchs/Notifications/DomainEvent.cs b/Fuchs/Notifications/DomainEvent.cs index 17cd4a2..aaada0b 100644 --- a/Fuchs/Notifications/DomainEvent.cs +++ b/Fuchs/Notifications/DomainEvent.cs @@ -21,6 +21,7 @@ public enum DomainEventType ReminderSendFailed, BankingTransactionsImported, BankingImportFailed, + BankingTransactionMarkedDone, UserIssue } diff --git a/Fuchs/Notifications/EventService.cs b/Fuchs/Notifications/EventService.cs index 609ba0f..4a11c37 100644 --- a/Fuchs/Notifications/EventService.cs +++ b/Fuchs/Notifications/EventService.cs @@ -1,3 +1,4 @@ +using System.Globalization; using Fuchs.intranet; using Microsoft.AspNetCore.SignalR; using Microsoft.Extensions.Logging; @@ -130,6 +131,18 @@ public sealed class EventService : IEventService "Banking", new Dictionary { ["fileName"] = fileName, ["message"] = message })); + public Task BankingTransactionMarkedDoneAsync(string taId, DateTime? valueDate, decimal? amount, string userAccountId) + => PublishAsync(new DomainEvent( + DomainEventType.BankingTransactionMarkedDone, + userAccountId, + "Banking", + new Dictionary + { + ["taId"] = taId, + ["valueDate"] = valueDate, + ["amount"] = amount + })); + public Task UserIssueAsync(string title, string message, string userAccountId, IReadOnlyDictionary? context = null) { Dictionary ctx = context == null @@ -181,6 +194,8 @@ public sealed class EventService : IEventService BankingImportMessage(domainEvent), DomainEventType.BankingImportFailed => Ctx(domainEvent, "message"), + DomainEventType.BankingTransactionMarkedDone => + BankingTransactionMarkedDoneMessage(domainEvent), DomainEventType.UserIssue => Ctx(domainEvent, "message"), _ => domainEvent.Title @@ -242,6 +257,29 @@ public sealed class EventService : IEventService return DateTime.TryParse(value.ToString(), out var parsed) ? parsed : null; } + private static string BankingTransactionMarkedDoneMessage(DomainEvent domainEvent) + { + DateTime? valueDate = DateCtx(domainEvent, "valueDate"); + string amount = AmountCtx(domainEvent, "amount"); + string datePart = valueDate == null ? "" : $" vom {valueDate.Value:dd.MM.yy}"; + string amountPart = string.IsNullOrEmpty(amount) ? "" : $" über {amount}€"; + return $"Bank-Transaktion{datePart}{amountPart} wurde als erledigt markiert."; + } + + private static string AmountCtx(DomainEvent domainEvent, string key) + { + if (!domainEvent.Context.TryGetValue(key, out var value) || value == null) return ""; + decimal? amount = value switch + { + decimal d => d, + double d => (decimal)d, + _ => decimal.TryParse(value.ToString(), NumberStyles.Any, CultureInfo.InvariantCulture, out var parsed) + ? parsed + : null + }; + return amount?.ToString("0.00", Fuchs_intranet.DeCulture) ?? ""; + } + private static Dictionary InvoiceContext(FdsInvoiceData invoice) { string invoiceNumber = invoice.InvoiceId; diff --git a/Fuchs/Notifications/IEventService.cs b/Fuchs/Notifications/IEventService.cs index 98bad10..93e2c88 100644 --- a/Fuchs/Notifications/IEventService.cs +++ b/Fuchs/Notifications/IEventService.cs @@ -20,6 +20,7 @@ public interface IEventService Task BankingTransactionsImportedAsync(DateTime? from, DateTime? to, int rows, string fileName, string userAccountId); Task BankingImportIssueAsync(string message, string fileName, string userAccountId); + Task BankingTransactionMarkedDoneAsync(string taId, DateTime? valueDate, decimal? amount, string userAccountId); Task UserIssueAsync(string title, string message, string userAccountId, IReadOnlyDictionary? context = null); } diff --git a/Fuchs/Program.cs b/Fuchs/Program.cs index 3b51cad..ce550e3 100644 --- a/Fuchs/Program.cs +++ b/Fuchs/Program.cs @@ -144,6 +144,11 @@ public class Program private static void ConfigureApp(WebApplication app) { + // OCORE's internal logging helpers (e.g. DatatableWriterAsync's exception logging) + // call the static OCORE.Logging.Logger via a null-conditional — without this, those + // calls silently no-op instead of reaching Debug output / ErrorLog.txt. + OCORE.Logging.Logger = app.Logger; + if (!app.Environment.IsDevelopment()) { app.UseExceptionHandler("/error"); diff --git a/Fuchs/Services/BankingService.cs b/Fuchs/Services/BankingService.cs index 5ee3918..c0d78eb 100644 --- a/Fuchs/Services/BankingService.cs +++ b/Fuchs/Services/BankingService.cs @@ -36,6 +36,7 @@ public class BankingService : IBankingService using var act = FuchsTelemetry.StartActivity("banking.parse"); var sw = Stopwatch.StartNew(); var tbl = schemaDatatable?.Clone() ?? BuildDefaultSchema(); + ApplyKnownColumnWidths(tbl); var diag = new ParseDiagnostics(); // Buffer once so we can sniff the format and (re)parse from the bytes. @@ -280,6 +281,53 @@ public class BankingService : IBankingService } } + /// + /// The schema DataTable fetched from [dbo].[fds__tt__bankingtransactions] via + /// SELECT TOP(0) * FROM @tmp comes back with = -1 + /// for every string column — ADO.NET does not carry character-length facets through a + /// table-variable-typed SELECT. Without a real MaxLength, 's truncation + /// guard never engages, so an over-long real-world CAMT field (routine for rich SEPA + /// remittance/reference data) sails through parsing and the temp-table bulk copy — which + /// builds its columns from this same DataTable and creates them as NVARCHAR(MAX) — only to + /// throw "String or binary data would be truncated" once the merge stored procedure inserts + /// into the real, correctly-width-constrained target table. These widths mirror + /// [dbo].[fds__tt__bankingtransactions] / [dbo].[fds__bankingtransactions] (kept identical by + /// design) so truncation happens safely here instead of failing the whole import downstream. + /// + private static readonly Dictionary KnownColumnMaxLengths = new() + { + ["AccountIdentification"] = 50, + ["FundsCode"] = 1, + ["AccountNumberOfPayer"] = 30, + ["BankCodeOfPayer"] = 11, + ["CompensationAmount"] = 50, + ["CreditorReference"] = 30, + ["CreditorsReferenceParty"] = 50, + ["CustomerReference"] = 50, + ["EndToEndReference"] = 50, + ["JournalNumber"] = 10, + ["MandateReference"] = 50, + ["NameOfPayer"] = 140, // ISO 20022 Max140Text — some banks put the full postal address in , not just a name + ["OriginalAmount"] = 150, + ["OriginatorsIdentificationCode"] = 150, + ["PayersReferenceParty"] = 150, + ["PostingText"] = 30, + ["SepaRemittanceInformation"] = 200, + ["UnstructuredData"] = 390, + ["UnstructuredRemittanceInformation"] = 390, + ["DebitCreditMark"] = 2, + ["TransactionTypeIdCode"] = 3, + }; + + private static void ApplyKnownColumnWidths(DataTable tbl) + { + foreach (var (columnName, maxLength) in KnownColumnMaxLengths) + { + if (tbl.Columns.Contains(columnName) && tbl.Columns[columnName]!.DataType == typeof(string)) + tbl.Columns[columnName]!.MaxLength = maxLength; + } + } + private static DataTable BuildDefaultSchema() { var t = new DataTable(); diff --git a/Fuchs/appsettings.Development.json b/Fuchs/appsettings.Development.json index 73a182f..ddf0dd2 100644 --- a/Fuchs/appsettings.Development.json +++ b/Fuchs/appsettings.Development.json @@ -6,8 +6,8 @@ }, "Logging": { "LogLevel": { - "Default": "Debug", - "Microsoft.AspNetCore": "Information" + "Default": "Warning", + "Microsoft.AspNetCore": "Warning" } }, "Fuchs": { @@ -22,5 +22,10 @@ "InvoiceContainer": "dev-fuchs-invoices", "ReminderContainer": "dev-fuchs-reminders" } + }, + "Fds": { + "MFR_host": "portal.mobilefieldreport.com", + "MFR_UserName": "system@sebastian-fuchs---bad-und-heizung-gmbh-und-co-kg.com", + "MFR_Password": "0oT4G3H2" } } diff --git a/Fuchs/appsettings.json b/Fuchs/appsettings.json index 930f754..03dbbc9 100644 --- a/Fuchs/appsettings.json +++ b/Fuchs/appsettings.json @@ -11,7 +11,9 @@ "Fuchs--SMS-APIKey", "Fuchs--Mailer--Token", "Fuchs--fuchs-captcha-TOTP", - "Fuchs--fuchs-intranet-TOTP" + "Fuchs--fuchs-intranet-TOTP", + "Fds--MFR-UserName", + "Fds--MFR-Password" ] }, "Logging": { @@ -55,5 +57,10 @@ "Enabled": true, "OtlpEndpoint": "" } + }, + "Fds": { + "MFR_host": "portal.mobilefieldreport.com", + "MFR_UserName": "MANAGED_BY_KEYVAULT", + "MFR_Password": "MANAGED_BY_KEYVAULT" } } \ No newline at end of file diff --git a/Fuchs/css/intranet/fis_main.scss b/Fuchs/css/intranet/fis_main.scss index 98ffd6c..bd7cada 100644 --- a/Fuchs/css/intranet/fis_main.scss +++ b/Fuchs/css/intranet/fis_main.scss @@ -30,57 +30,59 @@ main nav ul > li a[role=button] { } #notification_frame { - position: fixed; - bottom: 1rem; - right: 1rem; - z-index: 2000; - width: min(24rem, calc(100vw - 2rem)); + height: 100%; + overflow: hidden; display: flex; flex-direction: column; - gap: 0.5rem; pointer-events: none; } .notification_item { position: relative; - background: #fff; - border-left: 0.35rem solid $fuchs_blau; - border-radius: 0.35rem; - box-shadow: 0 0.25rem 1rem rgba(30, 35, 45, 0.25); - color: #222; - padding: 0.75rem 2.2rem 0.75rem 0.85rem; + flex: 0 0 $oci_header; + height: $oci_header; + box-sizing: border-box; + display: flex; + align-items: center; + text-align: left; + white-space: nowrap; + overflow: hidden; + color: $fuchs_weiss; + padding: 0 2.2rem 0 0.85rem; pointer-events: auto; - &.warn { - border-left-color: #c78300; - } - - &.error { - border-left-color: #b92525; + &.warn, &.warning, &.error { + color: $oci_yellow; } .notification_title { font-weight: bold; - line-height: 1.25; - margin-bottom: 0.2rem; + flex: 0 0 auto; + + &::after { + content: ":"; + margin-right: 0.35rem; + } } .notification_message { - font-size: 0.9rem; - line-height: 1.3; + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; } .notification_close { position: absolute; - top: 0.35rem; + top: 0; right: 0.45rem; + height: 100%; border: 0; background: transparent; - color: #444; + color: inherit; cursor: pointer; font-size: 1.2rem; - line-height: 1; - padding: 0.1rem 0.25rem; + line-height: $oci_header; + padding: 0 0.25rem; } } diff --git a/Fuchs/js/intranet/fis_main.js b/Fuchs/js/intranet/fis_main.js index 4e8f603..c1d065a 100644 --- a/Fuchs/js/intranet/fis_main.js +++ b/Fuchs/js/intranet/fis_main.js @@ -244,8 +244,22 @@ $fis.notifications = { this.connection.on('notification', (notification) => { this.push(notification); }); - this.connection.start().catch(() => { + // withAutomaticReconnect() only retries a connection that was successfully + // established and later dropped — it does not retry a failed initial start() + // (e.g. the server restarting mid-debug). Without this, a single failed start() + // silently blackholes every notification for the rest of the page's lifetime. + this.connection.onclose(() => { + console.warn('Notification connection closed; retrying in 5s.'); this.connection = null; + setTimeout(() => this.init(), 5000); + }); + this.start(); + }, + start: function () { + this.connection.start().catch((err) => { + console.warn('Notification connection failed to start; retrying in 5s.', err); + this.connection = null; + setTimeout(() => this.init(), 5000); }); }, ensureFrame: function () { diff --git a/Fuchs/wwwroot/web/fis.css b/Fuchs/wwwroot/web/fis.css index 3fe5e61..47f3753 100644 --- a/Fuchs/wwwroot/web/fis.css +++ b/Fuchs/wwwroot/web/fis.css @@ -2231,53 +2231,55 @@ main nav ul > li a[role=button]:hover::after, main nav ul > li a[role=button].fb } #notification_frame { - position: fixed; - bottom: 1rem; - right: 1rem; - z-index: 2000; - width: min(24rem, 100vw - 2rem); + height: 100%; + overflow: hidden; display: flex; flex-direction: column; - gap: 0.5rem; pointer-events: none; } .notification_item { position: relative; - background: #fff; - border-left: 0.35rem solid rgb(27, 67, 121); - border-radius: 0.35rem; - box-shadow: 0 0.25rem 1rem rgba(30, 35, 45, 0.25); - color: #222; - padding: 0.75rem 2.2rem 0.75rem 0.85rem; + flex: 0 0 2.3rem; + height: 2.3rem; + box-sizing: border-box; + display: flex; + align-items: center; + text-align: left; + white-space: nowrap; + overflow: hidden; + color: #FFF; + padding: 0 2.2rem 0 0.85rem; pointer-events: auto; } -.notification_item.warn { - border-left-color: #c78300; -} -.notification_item.error { - border-left-color: #b92525; +.notification_item.warn, .notification_item.warning, .notification_item.error { + color: rgb(255, 200, 1); } .notification_item .notification_title { font-weight: bold; - line-height: 1.25; - margin-bottom: 0.2rem; + flex: 0 0 auto; +} +.notification_item .notification_title::after { + content: ":"; + margin-right: 0.35rem; } .notification_item .notification_message { - font-size: 0.9rem; - line-height: 1.3; + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; } .notification_item .notification_close { position: absolute; - top: 0.35rem; + top: 0; right: 0.45rem; + height: 100%; border: 0; background: transparent; - color: #444; + color: inherit; cursor: pointer; font-size: 1.2rem; - line-height: 1; - padding: 0.1rem 0.25rem; + line-height: 2.3rem; + padding: 0 0.25rem; } .wdg_frame { diff --git a/Fuchs/wwwroot/web/fis.js b/Fuchs/wwwroot/web/fis.js index 1b09cf5..c78be9d 100644 --- a/Fuchs/wwwroot/web/fis.js +++ b/Fuchs/wwwroot/web/fis.js @@ -3088,8 +3088,22 @@ $fis.notifications = { this.connection.on('notification', (notification) => { this.push(notification); }); - this.connection.start().catch(() => { + // withAutomaticReconnect() only retries a connection that was successfully + // established and later dropped — it does not retry a failed initial start() + // (e.g. the server restarting mid-debug). Without this, a single failed start() + // silently blackholes every notification for the rest of the page's lifetime. + this.connection.onclose(() => { + console.warn('Notification connection closed; retrying in 5s.'); this.connection = null; + setTimeout(() => this.init(), 5000); + }); + this.start(); + }, + start: function () { + this.connection.start().catch((err) => { + console.warn('Notification connection failed to start; retrying in 5s.', err); + this.connection = null; + setTimeout(() => this.init(), 5000); }); }, ensureFrame: function () { diff --git a/Fuchs/wwwroot/web/fis.min.css b/Fuchs/wwwroot/web/fis.min.css index 35a6e65..3c5c0f4 100644 --- a/Fuchs/wwwroot/web/fis.min.css +++ b/Fuchs/wwwroot/web/fis.min.css @@ -1 +1 @@ -@charset "UTF-8";@font-face{font-family:"Glyphicons Halflings";src:url(/fts/glyphicons-halflings-regular.eot);src:url(/fts/glyphicons-halflings-regular.eot?#iefix) format("embedded-opentype"),url(/fts/glyphicons-halflings-regular.woff2) format("woff2"),url(/fts/glyphicons-halflings-regular.woff) format("woff"),url(/fts/glyphicons-halflings-regular.ttf) format("truetype"),url(/fts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular) format("svg")}.glyphicon{position:relative;top:1px;display:inline-block;font-family:"Glyphicons Halflings";font-style:normal;font-weight:400;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.glyphicon-asterisk:before{content:"*"}.glyphicon-plus:before{content:"+"}.glyphicon-eur:before,.glyphicon-euro:before{content:"€"}.glyphicon-minus:before{content:"−"}.glyphicon-cloud:before{content:"☁"}.glyphicon-envelope:before{content:"✉"}.glyphicon-pencil:before{content:"✏"}.glyphicon-glass:before{content:"\e001"}.glyphicon-music:before{content:"\e002"}.glyphicon-search:before{content:"\e003"}.glyphicon-heart:before{content:"\e005"}.glyphicon-star:before{content:"\e006"}.glyphicon-star-empty:before{content:"\e007"}.glyphicon-user:before{content:"\e008"}.glyphicon-film:before{content:"\e009"}.glyphicon-th-large:before{content:"\e010"}.glyphicon-th:before{content:"\e011"}.glyphicon-th-list:before{content:"\e012"}.glyphicon-ok:before{content:"\e013"}.glyphicon-remove:before{content:"\e014"}.glyphicon-zoom-in:before{content:"\e015"}.glyphicon-zoom-out:before{content:"\e016"}.glyphicon-off:before{content:"\e017"}.glyphicon-signal:before{content:"\e018"}.glyphicon-cog:before{content:"\e019"}.glyphicon-trash:before{content:"\e020"}.glyphicon-home:before{content:"\e021"}.glyphicon-file:before{content:"\e022"}.glyphicon-time:before{content:"\e023"}.glyphicon-road:before{content:"\e024"}.glyphicon-download-alt:before{content:"\e025"}.glyphicon-download:before{content:"\e026"}.glyphicon-upload:before{content:"\e027"}.glyphicon-inbox:before{content:"\e028"}.glyphicon-play-circle:before{content:"\e029"}.glyphicon-repeat:before{content:"\e030"}.glyphicon-refresh:before{content:"\e031"}.glyphicon-list-alt:before{content:"\e032"}.glyphicon-lock:before{content:"\e033"}.glyphicon-flag:before{content:"\e034"}.glyphicon-headphones:before{content:"\e035"}.glyphicon-volume-off:before{content:"\e036"}.glyphicon-volume-down:before{content:"\e037"}.glyphicon-volume-up:before{content:"\e038"}.glyphicon-qrcode:before{content:"\e039"}.glyphicon-barcode:before{content:"\e040"}.glyphicon-tag:before{content:"\e041"}.glyphicon-tags:before{content:"\e042"}.glyphicon-book:before{content:"\e043"}.glyphicon-bookmark:before{content:"\e044"}.glyphicon-print:before{content:"\e045"}.glyphicon-camera:before{content:"\e046"}.glyphicon-font:before{content:"\e047"}.glyphicon-bold:before{content:"\e048"}.glyphicon-italic:before{content:"\e049"}.glyphicon-text-height:before{content:"\e050"}.glyphicon-text-width:before{content:"\e051"}.glyphicon-align-left:before{content:"\e052"}.glyphicon-align-center:before{content:"\e053"}.glyphicon-align-right:before{content:"\e054"}.glyphicon-align-justify:before{content:"\e055"}.glyphicon-list:before{content:"\e056"}.glyphicon-indent-left:before{content:"\e057"}.glyphicon-indent-right:before{content:"\e058"}.glyphicon-facetime-video:before{content:"\e059"}.glyphicon-picture:before{content:"\e060"}.glyphicon-map-marker:before{content:"\e062"}.glyphicon-adjust:before{content:"\e063"}.glyphicon-tint:before{content:"\e064"}.glyphicon-edit:before{content:"\e065"}.glyphicon-share:before{content:"\e066"}.glyphicon-check:before{content:"\e067"}.glyphicon-move:before{content:"\e068"}.glyphicon-step-backward:before{content:"\e069"}.glyphicon-fast-backward:before{content:"\e070"}.glyphicon-backward:before{content:"\e071"}.glyphicon-play:before{content:"\e072"}.glyphicon-pause:before{content:"\e073"}.glyphicon-stop:before{content:"\e074"}.glyphicon-forward:before{content:"\e075"}.glyphicon-fast-forward:before{content:"\e076"}.glyphicon-step-forward:before{content:"\e077"}.glyphicon-eject:before{content:"\e078"}.glyphicon-chevron-left:before{content:"\e079"}.glyphicon-chevron-right:before{content:"\e080"}.glyphicon-plus-sign:before{content:"\e081"}.glyphicon-minus-sign:before{content:"\e082"}.glyphicon-remove-sign:before{content:"\e083"}.glyphicon-ok-sign:before{content:"\e084"}.glyphicon-question-sign:before{content:"\e085"}.glyphicon-info-sign:before{content:"\e086"}.glyphicon-screenshot:before{content:"\e087"}.glyphicon-remove-circle:before{content:"\e088"}.glyphicon-ok-circle:before{content:"\e089"}.glyphicon-ban-circle:before{content:"\e090"}.glyphicon-arrow-left:before{content:"\e091"}.glyphicon-arrow-right:before{content:"\e092"}.glyphicon-arrow-up:before{content:"\e093"}.glyphicon-arrow-down:before{content:"\e094"}.glyphicon-share-alt:before{content:"\e095"}.glyphicon-resize-full:before{content:"\e096"}.glyphicon-resize-small:before{content:"\e097"}.glyphicon-exclamation-sign:before{content:"\e101"}.glyphicon-gift:before{content:"\e102"}.glyphicon-leaf:before{content:"\e103"}.glyphicon-fire:before{content:"\e104"}.glyphicon-eye-open:before{content:"\e105"}.glyphicon-eye-close:before{content:"\e106"}.glyphicon-warning-sign:before{content:"\e107"}.glyphicon-plane:before{content:"\e108"}.glyphicon-calendar:before{content:"\e109"}.glyphicon-random:before{content:"\e110"}.glyphicon-comment:before{content:"\e111"}.glyphicon-magnet:before{content:"\e112"}.glyphicon-chevron-up:before{content:"\e113"}.glyphicon-chevron-down:before{content:"\e114"}.glyphicon-retweet:before{content:"\e115"}.glyphicon-shopping-cart:before{content:"\e116"}.glyphicon-folder-close:before{content:"\e117"}.glyphicon-folder-open:before{content:"\e118"}.glyphicon-resize-vertical:before{content:"\e119"}.glyphicon-resize-horizontal:before{content:"\e120"}.glyphicon-hdd:before{content:"\e121"}.glyphicon-bullhorn:before{content:"\e122"}.glyphicon-bell:before{content:"\e123"}.glyphicon-certificate:before{content:"\e124"}.glyphicon-thumbs-up:before{content:"\e125"}.glyphicon-thumbs-down:before{content:"\e126"}.glyphicon-hand-right:before{content:"\e127"}.glyphicon-hand-left:before{content:"\e128"}.glyphicon-hand-up:before{content:"\e129"}.glyphicon-hand-down:before{content:"\e130"}.glyphicon-circle-arrow-right:before{content:"\e131"}.glyphicon-circle-arrow-left:before{content:"\e132"}.glyphicon-circle-arrow-up:before{content:"\e133"}.glyphicon-circle-arrow-down:before{content:"\e134"}.glyphicon-globe:before{content:"\e135"}.glyphicon-wrench:before{content:"\e136"}.glyphicon-tasks:before{content:"\e137"}.glyphicon-filter:before{content:"\e138"}.glyphicon-briefcase:before{content:"\e139"}.glyphicon-fullscreen:before{content:"\e140"}.glyphicon-dashboard:before{content:"\e141"}.glyphicon-paperclip:before{content:"\e142"}.glyphicon-heart-empty:before{content:"\e143"}.glyphicon-link:before{content:"\e144"}.glyphicon-phone:before{content:"\e145"}.glyphicon-pushpin:before{content:"\e146"}.glyphicon-usd:before{content:"\e148"}.glyphicon-gbp:before{content:"\e149"}.glyphicon-sort:before{content:"\e150"}.glyphicon-sort-by-alphabet:before{content:"\e151"}.glyphicon-sort-by-alphabet-alt:before{content:"\e152"}.glyphicon-sort-by-order:before{content:"\e153"}.glyphicon-sort-by-order-alt:before{content:"\e154"}.glyphicon-sort-by-attributes:before{content:"\e155"}.glyphicon-sort-by-attributes-alt:before{content:"\e156"}.glyphicon-unchecked:before{content:"\e157"}.glyphicon-expand:before{content:"\e158"}.glyphicon-collapse-down:before{content:"\e159"}.glyphicon-collapse-up:before{content:"\e160"}.glyphicon-log-in:before{content:"\e161"}.glyphicon-flash:before{content:"\e162"}.glyphicon-log-out:before{content:"\e163"}.glyphicon-new-window:before{content:"\e164"}.glyphicon-record:before{content:"\e165"}.glyphicon-save:before{content:"\e166"}.glyphicon-open:before{content:"\e167"}.glyphicon-saved:before{content:"\e168"}.glyphicon-import:before{content:"\e169"}.glyphicon-export:before{content:"\e170"}.glyphicon-send:before{content:"\e171"}.glyphicon-floppy-disk:before{content:"\e172"}.glyphicon-floppy-saved:before{content:"\e173"}.glyphicon-floppy-remove:before{content:"\e174"}.glyphicon-floppy-save:before{content:"\e175"}.glyphicon-floppy-open:before{content:"\e176"}.glyphicon-credit-card:before{content:"\e177"}.glyphicon-transfer:before{content:"\e178"}.glyphicon-cutlery:before{content:"\e179"}.glyphicon-header:before{content:"\e180"}.glyphicon-compressed:before{content:"\e181"}.glyphicon-earphone:before{content:"\e182"}.glyphicon-phone-alt:before{content:"\e183"}.glyphicon-tower:before{content:"\e184"}.glyphicon-stats:before{content:"\e185"}.glyphicon-sd-video:before{content:"\e186"}.glyphicon-hd-video:before{content:"\e187"}.glyphicon-subtitles:before{content:"\e188"}.glyphicon-sound-stereo:before{content:"\e189"}.glyphicon-sound-dolby:before{content:"\e190"}.glyphicon-sound-5-1:before{content:"\e191"}.glyphicon-sound-6-1:before{content:"\e192"}.glyphicon-sound-7-1:before{content:"\e193"}.glyphicon-copyright-mark:before{content:"\e194"}.glyphicon-registration-mark:before{content:"\e195"}.glyphicon-cloud-download:before{content:"\e197"}.glyphicon-cloud-upload:before{content:"\e198"}.glyphicon-tree-conifer:before{content:"\e199"}.glyphicon-tree-deciduous:before{content:"\e200"}.glyphicon-cd:before{content:"\e201"}.glyphicon-save-file:before{content:"\e202"}.glyphicon-open-file:before{content:"\e203"}.glyphicon-level-up:before{content:"\e204"}.glyphicon-copy:before{content:"\e205"}.glyphicon-paste:before{content:"\e206"}.glyphicon-alert:before{content:"\e209"}.glyphicon-equalizer:before{content:"\e210"}.glyphicon-king:before{content:"\e211"}.glyphicon-queen:before{content:"\e212"}.glyphicon-pawn:before{content:"\e213"}.glyphicon-bishop:before{content:"\e214"}.glyphicon-knight:before{content:"\e215"}.glyphicon-baby-formula:before{content:"\e216"}.glyphicon-tent:before{content:"⛺"}.glyphicon-blackboard:before{content:"\e218"}.glyphicon-bed:before{content:"\e219"}.glyphicon-apple:before{content:"\f8ff"}.glyphicon-erase:before{content:"\e221"}.glyphicon-hourglass:before{content:"⌛"}.glyphicon-lamp:before{content:"\e223"}.glyphicon-duplicate:before{content:"\e224"}.glyphicon-piggy-bank:before{content:"\e225"}.glyphicon-scissors:before{content:"\e226"}.glyphicon-bitcoin:before,.glyphicon-btc:before,.glyphicon-xbt:before{content:"\e227"}.glyphicon-jpy:before,.glyphicon-yen:before{content:"¥"}.glyphicon-rub:before,.glyphicon-ruble:before{content:"₽"}.glyphicon-scale:before{content:"\e230"}.glyphicon-ice-lolly:before{content:"\e231"}.glyphicon-ice-lolly-tasted:before{content:"\e232"}.glyphicon-education:before{content:"\e233"}.glyphicon-option-horizontal:before{content:"\e234"}.glyphicon-option-vertical:before{content:"\e235"}.glyphicon-menu-hamburger:before{content:"\e236"}.glyphicon-modal-window:before{content:"\e237"}.glyphicon-oil:before{content:"\e238"}.glyphicon-grain:before{content:"\e239"}.glyphicon-sunglasses:before{content:"\e240"}.glyphicon-text-size:before{content:"\e241"}.glyphicon-text-color:before{content:"\e242"}.glyphicon-text-background:before{content:"\e243"}.glyphicon-object-align-top:before{content:"\e244"}.glyphicon-object-align-bottom:before{content:"\e245"}.glyphicon-object-align-horizontal:before{content:"\e246"}.glyphicon-object-align-left:before{content:"\e247"}.glyphicon-object-align-vertical:before{content:"\e248"}.glyphicon-object-align-right:before{content:"\e249"}.glyphicon-triangle-right:before{content:"\e250"}.glyphicon-triangle-left:before{content:"\e251"}.glyphicon-triangle-bottom:before{content:"\e252"}.glyphicon-triangle-top:before{content:"\e253"}.glyphicon-console:before{content:"\e254"}.glyphicon-superscript:before{content:"\e255"}.glyphicon-subscript:before{content:"\e256"}.glyphicon-menu-left:before{content:"\e257"}.glyphicon-menu-right:before{content:"\e258"}.glyphicon-menu-down:before{content:"\e259"}.glyphicon-menu-up:before{content:"\e260"}*,:after,:before{box-sizing:border-box;transition:visibility 1s linear,opacity 1s linear;-moz-transition:visibility 1s linear,opacity 1s linear;-webkit-transition:visibility 1s linear,opacity 1s linear}body,html{-webkit-font-smoothing:antialiased;font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;image-rendering:auto;shape-rendering:geometricprecision;color-rendering:optimizeQuality;font-size:14px;background-color:#1b4379}@media (max-width:796px) and (min-width:362px){body,html{font-size:15px}}@media (max-width:361px){body,html{font-size:12px}}html{font-family:Arial,Arial,Helvetica Neue,Helvetica,sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{font-family:Arial,Arial,Helvetica Neue,Helvetica,sans-serif;font-weight:400;overflow:hidden;position:relative;height:100vh;width:100vw;margin:0}body.busy,body.busy *{cursor:wait!important}body>*{position:fixed;left:.5rem;right:.5rem}body header{top:.5rem;height:2.3rem;z-index:10;max-height:2.3rem;background-color:#1b4379}body main{background-color:#fff;top:2.8rem;bottom:2.8rem;z-index:9;overflow:auto;position:absolute}body footer{bottom:0;height:2.3rem;max-height:2.3rem;z-index:8;overflow:hidden}.h1,.h2,.h3,.h4,h1,h2,h3,h4{color:#1b4379}.h1,h1{font-size:1.45rem;letter-spacing:.0725rem;font-weight:700;margin:1.45rem 0 .8rem}.h2,h2{font-size:1.35rem;letter-spacing:.0675rem;font-weight:600;margin:1.35rem 0 .7rem}.h3,h3{font-size:1.2rem;letter-spacing:.04rem;font-weight:500;margin:1rem 0 .5rem}.h4,h4{letter-spacing:.015rem;font-weight:400;margin:.6rem 0 .3rem}p{margin:0 0 .6rem}.loading{background-image:url(data:image/gif;base64,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);background-position:center center;background-repeat:repeat-x}#mainframe{top:5px;left:5px;right:5px;bottom:5px}div.modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1050;overflow:hidden;-webkit-overflow-scrolling:touch;outline:0;display:flex;align-items:center;justify-items:center;justify-content:center;align-content:center;background-color:rgba(50,50,50,.3)}div.modal>.modal-dialog{background-clip:padding-box;display:none;max-width:calc(100vw - 1rem);max-height:calc(100vh - 1rem);-webkit-transform:translate(0,0);-ms-transform:translate(0,0);-o-transform:translate(0,0);transform:translate(0,0);position:relative}div.modal>.modal-dialog.szfull{width:calc(100vw - 5rem);height:calc(100vh - 5rem)}div.modal>.modal-dialog.in{display:block}div.modal>.modal-dialog.fade .out{opacity:0}div.modal>.modal-dialog.fade .in{opacity:1}div.modal>.modal-dialog>.modal-close{position:absolute;top:-.5rem;right:-.5rem;content:"X";height:1.4rem;width:1.4rem;color:#000;z-index:1;border-radius:50%;padding:.5rem;border:1px solid #000;display:block;background:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/PjwhRE9DVFlQRSBzdmcgIFBVQkxJQyAnLS8vVzNDLy9EVEQgU1ZHIDEuMS8vRU4nICAnaHR0cDovL3d3dy53My5vcmcvR3JhcGhpY3MvU1ZHLzEuMS9EVEQvc3ZnMTEuZHRkJz48c3ZnIGhlaWdodD0iNTEycHgiIGlkPSJMYXllcl8xIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCA1MTIgNTEyOyIgdmVyc2lvbj0iMS4xIiB2aWV3Qm94PSIwIDAgNTEyIDUxMiIgd2lkdGg9IjUxMnB4IiB4bWw6c3BhY2U9InByZXNlcnZlIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIj48cGF0aCBkPSJNNDM3LjUsMzg2LjZMMzA2LjksMjU2bDEzMC42LTEzMC42YzE0LjEtMTQuMSwxNC4xLTM2LjgsMC01MC45Yy0xNC4xLTE0LjEtMzYuOC0xNC4xLTUwLjksMEwyNTYsMjA1LjFMMTI1LjQsNzQuNSAgYy0xNC4xLTE0LjEtMzYuOC0xNC4xLTUwLjksMGMtMTQuMSwxNC4xLTE0LjEsMzYuOCwwLDUwLjlMMjA1LjEsMjU2TDc0LjUsMzg2LjZjLTE0LjEsMTQuMS0xNC4xLDM2LjgsMCw1MC45ICBjMTQuMSwxNC4xLDM2LjgsMTQuMSw1MC45LDBMMjU2LDMwNi45bDEzMC42LDEzMC42YzE0LjEsMTQuMSwzNi44LDE0LjEsNTAuOSwwQzQ1MS41LDQyMy40LDQ1MS41LDQwMC42LDQzNy41LDM4Ni42eiIvPjwvc3ZnPg==) center center/75% no-repeat border-box #fff;cursor:pointer}@media (max-width:550px){div.modal>.modal-dialog>.modal-close{height:2rem;width:2rem}}div.modal>.modal-dialog .invalid .modal-footer div.note_invalid{display:inline-block}div.modal>.modal-dialog .modal-footer div.note_invalid{display:none}div.modal>.modal-dialog>.modal-content{position:relative;background-color:#f5f5f5;-webkit-background-clip:padding-box;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);border-radius:.4rem;outline:0;-webkit-box-shadow:0 3px 9px rgba(0,0,0,.5);box-shadow:0 3px 9px rgba(0,0,0,.5);overflow:auto;height:100%;max-height:calc(100vh - 1rem)}div.modal>.modal-dialog>.modal-content .modal-header.fix{position:absolute;top:0;left:0}div.modal>.modal-dialog>.modal-content .modal-body,div.modal>.modal-dialog>.modal-content .modal-footer,div.modal>.modal-dialog>.modal-content .modal-header,div.modal>.modal-dialog>.modal-content .modal-note{width:100%;display:block;position:relative;padding:1rem}div.modal>.modal-dialog>.modal-content .modal-body+div,div.modal>.modal-dialog>.modal-content .modal-footer+div,div.modal>.modal-dialog>.modal-content .modal-header+div,div.modal>.modal-dialog>.modal-content .modal-note+div{border-top:1px solid #e5e5e5}div.modal>.modal-dialog>.modal-content .modal-body>.choicefrm{padding:1rem}div.modal>.modal-dialog>.modal-content .modal-body>.choicefrm>div{display:block;margin:1rem}div.modal>.modal-dialog>.modal-content .modal-body>.choicefrm>div:hover{background-color:#eee}div.modal>.modal-dialog>.modal-content .modal-body>.choicefrm>div.btn.inactive{cursor:not-allowed;text-decoration:line-through}div.modal>.modal-dialog>.modal-content .modal-body table .ilbtn{display:inline-block}div.modal>.modal-dialog>.modal-content .modal-body table.fullgrid{border-collapse:collapse}div.modal>.modal-dialog>.modal-content .modal-body table.fullgrid td,div.modal>.modal-dialog>.modal-content .modal-body table.fullgrid th{padding:.1rem .5rem;border:1px solid #ccc}div.modal>.modal-dialog>.modal-content .modal-body table.fullgrid th{font-weight:bolder;border-bottom-width:2px}div.modal>.modal-dialog>.modal-content .modal-body table.fullwidth{width:100%}div.modal>.modal-dialog>.modal-content .modal-footer{text-align:right}div.modal>.modal-dialog>.modal-content .modal-footer div.note_required{float:left;font-size:.7rem}div.modal>.modal-dialog>.modal-content .modal-footer div.note_invalid{color:red;font-size:1rem;float:left;clear:both;margin-top:.5rem}div.modal>.modal-dialog>.modal-content .modal-note#dataprivacy{font-size:.8rem}div.modal>.modal-dialog>.modal-content .frm.c13{display:inline-flex;vertical-align:top}div.modal>.modal-dialog>.modal-content .frm.c13:first-child{width:30%}div.modal>.modal-dialog>.modal-content .frm.c13:nth-child(n+2){width:70%;padding-left:1.5rem}#oci_login #dbtn-forgotpw{margin-top:1rem;float:left;clear:both}#oci_login .modal-footer{min-height:5.8rem}.btn,button{border-radius:.28rem;display:inline-block;padding:.45rem 1rem .5rem;margin-bottom:0;font-size:1rem;letter-spacing:.025rem;font-weight:500;line-height:1.42857143;text-align:center;white-space:nowrap;vertical-align:middle;-ms-touch-action:manipulation;touch-action:manipulation;cursor:pointer;background-image:none;border:1px solid #ababab;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-box-shadow:1px 1px 3px rgba(50,50,50,.3);box-shadow:1px 1px 3px rgba(50,50,50,.3)}.btn.btn-primary,button.btn-primary{background-color:#1b4379;color:#fff}.btn.btn-sm,button.btn-sm{border-radius:.28rem;padding:.25rem .7rem .3rem;font-size:.8rem;letter-spacing:.015rem}.form,form{height:inherit;width:inherit}.form span.ind_required,form span.ind_required{color:red;font-weight:400;padding-left:5px;padding-right:5px}.form button,.form html input[type=button],.form input[type=reset],.form input[type=submit],form button,form html input[type=button],form input[type=reset],form input[type=submit]{-webkit-appearance:button;cursor:pointer}.form button,.form select,form button,form select{text-transform:none}.form textarea,form textarea{overflow:auto;resize:vertical}.form label,form label{padding-right:1.5rem;display:inline-block;box-sizing:content-box}.form .form-body,form .form-body{display:table;width:100%}@media (max-width:796px){.form .form-body.stacked .form-group,form .form-body.stacked .form-group{margin-bottom:.25rem;display:block}.form .form-body.stacked .form-group .form-itm,form .form-body.stacked .form-group .form-itm{display:block;width:100%;max-width:100%;padding-bottom:.1rem}.form .form-body.stacked .form-group .form-itm:first-child,form .form-body.stacked .form-group .form-itm:first-child{width:100%}}.form .form-body .form-group,form .form-body .form-group{margin-bottom:1rem;display:table-row}.form .form-body .form-group.cgrp,form .form-body .form-group.cgrp{margin-top:1.5rem}.form .form-body .form-group .form-itm,form .form-body .form-group .form-itm{display:table-cell;vertical-align:top;padding-bottom:1rem}.form .form-body .form-group .form-itm:first-child,form .form-body .form-group .form-itm:first-child{width:10%}.form .form-body .form-group .form-itm>table,form .form-body .form-group .form-itm>table{width:100%}.form .form-body .form-group .form-sep,form .form-body .form-group .form-sep{display:table-cell;padding-top:1rem;border-top:1px solid #e5e5e5;height:2px}.form .form-body .form-group .form-control,form .form-body .form-group .form-control{display:block}.form .form-body .form-group input.form-control,.form .form-body .form-group select.form-control,form .form-body .form-group input.form-control,form .form-body .form-group select.form-control{width:100%}.form .form-body .form-group .input-group,form .form-body .form-group .input-group{position:relative;display:flex;flex-wrap:wrap;align-items:stretch;width:100%}.form .form-body .form-group .input-group .input-group-btn,.form .form-body .form-group .input-group .input-group-text,form .form-body .form-group .input-group .input-group-btn,form .form-body .form-group .input-group .input-group-text{display:flex;align-items:center;padding:.375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#212529;text-align:center;white-space:nowrap;background-color:#e9ecef;border:1px solid #ced4da;border-radius:.3rem}.form .form-body .form-group .input-group .input-group-btn.narrow,.form .form-body .form-group .input-group .input-group-text.narrow,form .form-body .form-group .input-group .input-group-btn.narrow,form .form-body .form-group .input-group .input-group-text.narrow{padding-left:.375rem;padding-right:.375rem}.form .form-body .form-group .input-group .input-group-btn,form .form-body .form-group .input-group .input-group-btn{cursor:pointer}.form .form-body .form-group .input-group .input-group-btn:hover,form .form-body .form-group .input-group .input-group-btn:hover{background-color:#f1f3f5}.form .form-body .form-group .input-group>:not(:last-child),form .form-body .form-group .input-group>:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.form .form-body .form-group .input-group>:not(:first-child),form .form-body .form-group .input-group>:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0;margin-left:-1px}.form .form-body .form-group .input-group>.form-control,.form .form-body .form-group .input-group>.form-select,.form .form-body .form-group .input-group>.form-set,form .form-body .form-group .input-group>.form-control,form .form-body .form-group .input-group>.form-select,form .form-body .form-group .input-group>.form-set{position:relative;flex:1 1 auto;width:1%;min-width:0}.form .form-body .form-group .input-group>.form-set .dropdown-menu,form .form-body .form-group .input-group>.form-set .dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:160px;padding:5px 0;margin:2px 0 0;font-size:14px;text-align:left;list-style:none;background-color:#fff;-webkit-background-clip:padding-box;background-clip:padding-box;border:1px solid rgba(0,0,0,.15);border-radius:4px;-webkit-box-shadow:0 6px 12px rgba(0,0,0,.175);box-shadow:0 6px 12px rgba(0,0,0,.175)}.form .form-body .form-group .input-group>.form-set .dropdown-menu .divider,form .form-body .form-group .input-group>.form-set .dropdown-menu .divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.form .form-body .form-group .input-group>.form-set .dropdown-menu>li>a,form .form-body .form-group .input-group>.form-set .dropdown-menu>li>a{display:block;padding:3px 20px;clear:both;font-weight:400;line-height:1.42857143;color:#333;white-space:nowrap}.form .form-body .form-group .input-group>.form-set .dropdown-menu>li>a:focus,.form .form-body .form-group .input-group>.form-set .dropdown-menu>li>a:hover,form .form-body .form-group .input-group>.form-set .dropdown-menu>li>a:focus,form .form-body .form-group .input-group>.form-set .dropdown-menu>li>a:hover{color:#262626;text-decoration:none;background-color:#f5f5f5}.form .form-body .form-group .input-group>.form-set .dropdown-menu>.active>a,.form .form-body .form-group .input-group>.form-set .dropdown-menu>.active>a:focus,.form .form-body .form-group .input-group>.form-set .dropdown-menu>.active>a:hover,form .form-body .form-group .input-group>.form-set .dropdown-menu>.active>a,form .form-body .form-group .input-group>.form-set .dropdown-menu>.active>a:focus,form .form-body .form-group .input-group>.form-set .dropdown-menu>.active>a:hover{color:#fff;text-decoration:none;background-color:#337ab7;outline:0}.form .form-body .form-group .input-group>.form-set .dropdown-menu>.disabled>a,.form .form-body .form-group .input-group>.form-set .dropdown-menu>.disabled>a:focus,.form .form-body .form-group .input-group>.form-set .dropdown-menu>.disabled>a:hover,form .form-body .form-group .input-group>.form-set .dropdown-menu>.disabled>a,form .form-body .form-group .input-group>.form-set .dropdown-menu>.disabled>a:focus,form .form-body .form-group .input-group>.form-set .dropdown-menu>.disabled>a:hover{color:#777}.form .form-body .form-group .input-group>.form-set .dropdown-menu>.disabled>a:focus,.form .form-body .form-group .input-group>.form-set .dropdown-menu>.disabled>a:hover,form .form-body .form-group .input-group>.form-set .dropdown-menu>.disabled>a:focus,form .form-body .form-group .input-group>.form-set .dropdown-menu>.disabled>a:hover{text-decoration:none;cursor:not-allowed;background-color:transparent;background-image:none}.form .form-body .form-group .input-group>.form-set>.form-control,form .form-body .form-group .input-group>.form-set>.form-control{border-radius:0}.form .form-body .form-group.hd,.form .form-body .form-group>.hd,form .form-body .form-group.hd,form .form-body .form-group>.hd{display:none}.form textarea.form-control,form textarea.form-control{height:5rem}.form textarea.form-control[rows],form textarea.form-control[rows]{height:auto}.form .form-control,form .form-control{appearance:none;display:block;width:100%;height:2.5rem;padding:.5rem .8rem;font-size:1rem;line-height:1.42857143;color:#525252;background-color:#fff;background-image:none;border:1px solid #ccc;border-radius:.3rem;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075);-webkit-transition:border-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;-o-transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out;box-sizing:border-box}.form .form-control:focus,form .form-control:focus{border-color:#1b4379;outline:0;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(27,67,121,.6);box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(27,67,121,.6)}.form .form-control:invalid,form .form-control:invalid{border-color:#da6600}.form .form-control:-ms-input-placeholder,.form .form-control::-moz-placeholder,.form .form-control::-webkit-input-placeholder,form .form-control:-ms-input-placeholder,form .form-control::-moz-placeholder,form .form-control::-webkit-input-placeholder{color:#262626;opacity:1}.form .form-control::-ms-expand,form .form-control::-ms-expand{background-color:transparent;border:0}.form .form-control[size],form .form-control[size]{height:auto}.form .form-control[disabled],.form .form-control[readonly],fieldset[disabled] .form .form-control,fieldset[disabled] form .form-control,form .form-control[disabled],form .form-control[readonly]{background-color:#eee;opacity:1}.form .form-control[disabled],fieldset[disabled] .form .form-control,fieldset[disabled] form .form-control,form .form-control[disabled]{cursor:not-allowed}body.div.pgb{-webkit-pointer-events:none;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}body.div.pgb .pgb-progress{background:#1ab394;position:fixed;z-index:2040;top:0;right:100%;width:100%;height:2px}body.div.pgb .pgb-progress.inactive{display:none}#topbar{display:block;position:absolute;background-color:#1b4379;left:0;right:0;min-height:2.3rem;height:auto;z-index:4}#topbar.hd{height:0!important;min-height:0;overflow:hidden}#topbar.hd~#contentframe,#topbar.hd~#listframe{top:0}#topbar~#contentframe,#topbar~#listframe{top:2.3rem}#topbar>nav{padding-top:0}#contentframe{position:absolute;overflow:auto;top:0;left:0;right:0;bottom:0;z-index:2}#listframe{position:absolute;overflow:auto;top:2.3rem;left:0;right:auto;bottom:0;min-width:20%;max-width:100%;z-index:3;background-color:#fff;border-right:1px solid #1b4379;transition:width 1s,min-width 1s}#listframe.hd:not(.fix){min-width:0;width:0;overflow:hidden}#sidebar~div{left:2.3rem}body>.timer{position:fixed;bottom:3px;height:1px;border-bottom:2px solid #ff0;transition:width 1s linear;left:0}#oci_login{width:600px}#mainmenu{border-bottom:1px solid #ccc}nav{position:relative;left:0;width:100%;display:block;z-index:10000;border-radius:0;min-height:2.3rem;height:2.3rem;max-height:2.3rem;padding-left:0;margin-bottom:0;list-style:none;color:#e3e7e7;background-color:#1b4379}nav.nv{height:100%;max-height:100%;width:2.3rem;max-width:2.3rem}nav.nv ul{min-height:0;min-width:100%}nav.nv ul>li{height:auto;width:100%;padding-top:0;padding-bottom:0}nav.nv ul>li a{width:100%;height:auto;padding:1rem 0}nav.nv ul>li a span.ico{width:100%;height:2.3rem}nav.nv>ul{height:auto}nav #logo{background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAADVElEQVRYhe2V309bZRjH+TvovDJbuZkXJsY7Yckpg9pF3QXtKAksxoWZxYEQPWsLtbSW/XDRqcnsYub0YrvxYiNZWTYXIzMQY0xMrHSOtlBKa1vWM3Br2UjP+/HinB1haDxktNzsTb55z8n75D2ffPN8n9PQKMlspxqeAWzVRRZJpsUV4MDhU3T0nmS3w1dfgJ1tHi5cGiefLzGbznFo8DMs9QSw2j2Mjd9CFYJyZYW+oUh9AXa1awBCB+j3bSdAeRscsNq9XIlO6AAP6a83QJPdy+WrE4YD/UMRLLYaAFjbPexxjeDoCeM4qKsnzOtvHufazSmEEFQqK3xw4hscPaPs6xnVavX91e4PeWGfb/MAz9mO4T5ymus3f2IhW6BQVP7RYonCosKDBxUAVFWgKMsUFh+fayreVVjIFTkWOm+4YwrAIskc7PuEzEIBIQRmlhAghFgv4NHqKuEzF9mxGYCX3hhm6ueYdokqyBdKTN9OGYrFk0zHUxSKCgDVapWZZIbYdIJYPMnv8RSx6SSxeJJff7vDUd8XRoOaAuh+52OWlu4DMDef49Dgp+xxjdDcEdDkDNDqDhG9Pmn0gDd8nhZXgFec2nmLM6C9dwTY2eYx3wMWSaZ/KEK5soIQguiNSaztng11Tw6iLZsDFklmYDhCpfIQIQRj47fY9S8ATXYP176bMmJ41Hd2cwBN7V6kziB73SFa3SFsnUGkziCtXSH8J742AKI3pnB0h2l1B7Hp2tsVos93lmyuCIBy7y+6jpw2la6GRknGYpMZ8J8j/scsM4l5ZhJpfZ/nTiJNOvMn1aoKQElZIpHUahKpeV0ZSsqS0e0//PgLL742ZB5gh00mfOYij1ZXn4iQ9mx2qapKMpWh8+2PTNm/zoH3g18yO5cjmyuykF2jXJFCUUFVNQeWl+9vrMkWSKQyfDv2PfvfOm5k3DTA4yZqXhsZ54gm1wi+0a/W9MAkkjuo12k1zc4AL+/383zbxuZ8+hTYZN71RyiXtRhevjpBk9276Q89VQwH/eco6w5ciU5grTfAwBqA/5oDNQb4/0FUW4DhCJXKCqoOYLXXGaD3vc+ZS+fI50tcuDS+7mdSc4BGSWa3w0dH70kOHD5FiytgeshsGUAt9Qzgb8pqydEEvRadAAAAAElFTkSuQmCC) center center/contain no-repeat;margin-right:10px;height:1.9rem;width:1.9rem}nav .nav-header{float:left;position:relative;padding-left:0;margin:0;list-style:none;min-height:100%}nav .nav-header>div{float:left;padding:.4rem 1rem 0 0;line-height:1.4rem;height:100%}nav .nav-header>button,nav .nav-header>div.button{float:left;height:100%;padding:.2rem .8rem;background:0 0;color:inherit;margin-right:1.1rem;box-shadow:none}nav .nav-header .activemodule,nav .nav-header .brand{cursor:default;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}nav .nav-header .activemodule{color:#fff240;overflow:hidden}@media (min-width:551px){nav .nav-header .activemodule{max-width:calc(100% - 46px);font-size:16px}nav .nav-header .brand{display:inline-block}}@media (max-width:550px){nav .nav-header .brand{display:none}nav .nav-header .activemodule{max-width:calc(100% - 190px);font-size:16px;line-height:28px;padding:0}}@media (min-width:797px){nav .nav-header #mmmb{display:none!important;pointer-events:none}nav ul.nav-right{float:right!important}nav ul.nav-right li.dropdown.submenu>ul{left:auto;right:100%;right:calc(100% + .1rem)}nav ul li[role=separator]{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;pointer-events:none}nav ul li[role=separator]::before{content:"|";cursor:default;padding:.4rem 1rem 0;line-height:1.4rem;height:100%;display:block;font-weight:400;white-space:nowrap;min-height:inherit;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;pointer-events:none}}@media (max-width:796px){nav.nv{padding-top:2.3rem}nav.nv>ul{display:none}nav .nav-header{width:100%;position:absolute;top:0;left:0}nav .nav-header #mmmb{float:right;margin-right:0}nav{padding-top:2.3rem}nav.ctxt>ul{width:100%}nav.ctxt>ul>li[role=lbl]{max-width:55vw;white-space:nowrap;overflow:hidden;font-size:85%}nav.ctxt>ul>li>a,nav.ctxt>ul>li>a.fbtn{padding:.4rem .75rem 0}nav.ctxt>ul>li>a>span{display:none}nav.ctxt>ul>li>a>span.caret,nav.ctxt>ul>li>a>span.glyphicon,nav.ctxt>ul>li>a>span.ico{display:inline-block}nav#mainmenu.vis>ul{display:block}nav#mainmenu>ul{padding-bottom:1rem;display:none;width:100%;float:none}nav.vis>ul{height:auto}nav.vis>ul li{width:100%;float:none}nav.vis>ul li[role=separator]{padding:0 1rem;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;pointer-events:none;margin:.3rem 0}nav.vis>ul li[role=separator]::before{content:"";cursor:default;position:relative;width:100%;height:100%;border-bottom:1px solid #e3e7e7;display:block}}nav>ul{height:100%;float:left}nav ul{position:relative;padding-left:0;margin:0;list-style:none;min-height:100%;background-color:inherit}nav ul>li{list-style:none;float:left;position:relative;display:block;padding-left:0;margin-bottom:0;height:100%}nav ul>li.ar{float:right}nav ul>li[role=info],nav ul>li[role=lbl]{color:#fff240;padding:.5rem .5rem 0}nav ul>li a{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer;padding:.4rem 1rem 0;line-height:1.4rem;height:100%;display:block;font-weight:400;white-space:nowrap;min-height:inherit}nav ul>li a span+.caret,nav ul>li a span+span{margin-left:.5rem}nav ul>li a span.ico{height:1.1rem;width:1.1rem;background-color:transparent;background-repeat:no-repeat;background-position:center center;background-size:contain;background-clip:content-box;display:inline-block;padding:.15rem}nav ul>li a>.caret{display:inline-block;width:0;height:0;margin-left:2px;vertical-align:middle;border-top:4px dashed;border-right:4px solid transparent;border-left:4px solid transparent}nav ul>li a>.glyphicon{font-size:1.1rem}nav ul>li a[role=button]::after{content:"";position:absolute;top:.2rem;left:.1rem;right:.1rem;bottom:0;border-top:1px solid transparent;border-left:1px solid transparent;border-right:1px solid transparent;border-bottom:none;border-top-left-radius:.2rem;border-top-right-radius:.2rem}nav ul>li a[role=button].fbtn::after,nav ul>li a[role=button]:hover::after{border-color:rgba(227,231,231,.6);border-top-left-radius:.2rem;border-top-right-radius:.2rem}nav ul>li a.disabled{cursor:default;opacity:.5}nav ul>li.dropdown{position:relative}nav ul>li.dropdown.submenu>ul{position:absolute;top:0;left:100%;left:calc(100% + .1rem);right:auto;min-height:inherit}nav ul>li.dropdown>ul{display:none}nav ul>li.dropdown>ul>li{min-height:2.3rem;float:none;display:block}nav ul>li.dropdown.open>ul{display:block}nav ul>li.dropdown.open>a{background-color:rgba(227,231,231,.6);color:#fff}@media (max-width:796px){nav ul>li.dropdown.open>ul{position:fixed;top:5.1rem;top:calc(5.1rem - 2px);left:.5rem;right:.5rem;left:calc(.5rem - 1px);right:calc(.5rem - 1px);height:auto;min-height:25%}}nav ul.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:10rem;padding:5px 0;margin:2px 0 0;font-size:1rem;text-align:left;background-color:#1b4379;-webkit-background-clip:padding-box;background-clip:padding-box;border:1px solid rgba(0,0,0,.15);border-radius:4px;-webkit-box-shadow:0 6px 12px rgba(0,0,0,.175);box-shadow:0 6px 12px rgba(0,0,0,.175)}nav ul.dropdown-menu.right{right:0;left:auto}nav ul.dropdown-menu li.divider,nav ul.dropdown-menu li[role=separator]{height:1px;margin:.25rem 0 .7rem;overflow:hidden;background-color:#e5e5e5;min-height:1px;max-height:1px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}nav ul.dropdown-menu li.info,nav ul.dropdown-menu li[role=info],nav ul.dropdown-menu li[role=lbl]{color:#ffff4a;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}nav ul.dropdown-menu li>span{padding:.4rem 1rem 0 .4rem;display:inline-block}nav ul.dropdown-menu li a[role=button]::after{border-left:none;border-right:none;border-top-left-radius:0}span.sbc{background-image:url(/ct/img/wave_v.svg)}table.sortable>tr.sortactive>td,tbody.sortable>tr.sortactive>td{background-color:#ffffe0!important;box-shadow:1px 1px 2px rgba(50,50,50,.3)}#contentframe>.edit_frm+.list_frm{display:none}.list_frm{min-height:100%}main nav ul>li a[role=button]::after{border-top:1px solid rgba(227,231,231,.6);border-left:1px solid rgba(227,231,231,.6);border-right:1px solid rgba(227,231,231,.6)}main nav ul>li a[role=button].fbtn::after,main nav ul>li a[role=button]:hover::after{border-color:#e3e7e7}#dashboard_frame{overflow-y:auto;height:100%;width:100%;padding:1rem;background:#ddd;text-align:center}#notification_frame{position:fixed;bottom:1rem;right:1rem;z-index:2000;width:min(24rem,100vw - 2rem);display:flex;flex-direction:column;gap:.5rem;pointer-events:none}.notification_item{position:relative;background:#fff;border-left:.35rem solid #1b4379;border-radius:.35rem;box-shadow:0 .25rem 1rem rgba(30,35,45,.25);color:#222;padding:.75rem 2.2rem .75rem .85rem;pointer-events:auto}.notification_item.warn{border-left-color:#c78300}.notification_item.error{border-left-color:#b92525}.notification_item .notification_title{font-weight:700;line-height:1.25;margin-bottom:.2rem}.notification_item .notification_message{font-size:.9rem;line-height:1.3}.notification_item .notification_close{position:absolute;top:.35rem;right:.45rem;border:0;background:0 0;color:#444;cursor:pointer;font-size:1.2rem;line-height:1;padding:.1rem .25rem}.wdg_frame{background-color:#fff;border:1px solid #ccc;border-radius:6px;box-shadow:1px 2px 8px 0 rgba(140,140,160,.6),-2px -3px 8px 0 #fafafa;display:inline-block;height:300px;margin-bottom:10px;position:relative;width:300px;margin-right:15px;text-align:left;overflow:hidden}.wdg_frame.dbl{width:615px}.wdg_frame.tpl{width:930px}.wdg_frame.tny{width:150px}.wdg_frame.tny .wdg_cnt>.ind label{font-size:80%}.wdg_frame .wdg_hd{border-top-left-radius:inherit;border-top-right-radius:inherit;height:1.5rem;position:relative;background-color:rgba(27,67,121,.85);box-shadow:1px 5px 5px #1b4379 inset;color:#fff;text-align:center;font-size:.8rem;font-weight:700;padding:.3rem .2rem 0;cursor:pointer;margin:-1px -1px 0}.wdg_frame .wdg_hd>*{user-select:none}.wdg_frame .wdg_cnt{border-bottom-left-radius:inherit;border-bottom-right-radius:inherit;height:calc(100% - 24px);overflow-x:hidden;overflow-y:auto;padding:0;position:relative}.wdg_frame .wdg_cnt>.ind{text-align:center;padding:1rem;font-size:1.3rem}.wdg_frame .wdg_cnt>.ind.sts_neg>.ind{color:red}.wdg_frame .wdg_cnt>.ind.sts_pos>.ind{color:#56a532}.wdg_frame .wdg_cnt>.ind>.ind{font-size:4rem;margin:3rem 0;text-shadow:.08rem .12rem .35rem rgba(50,50,50,.6);color:#1b4379}.wdg_frame .wdg_cnt .clickable{cursor:pointer}.wdg_frame .wdg_cnt table{border-collapse:collapse;width:100%}.wdg_frame .wdg_cnt table tr:first-child{border:none}.wdg_frame .wdg_cnt table th{background-color:#ccc;padding:2px 4px;font-size:11px;line-height:1.2;border:1px solid transparent;text-align:left}.wdg_frame .wdg_cnt table th:first-child{border-left:none}.wdg_frame .wdg_cnt table th:last-child{border-right:none}.wdg_frame .wdg_cnt table td{padding:2px 4px;font-size:12px;line-height:1.1;border:1px solid #ccc}.wdg_frame .wdg_cnt table td:first-child{border-left:none}.wdg_frame .wdg_cnt table td:last-child{border-right:none}#listframe div.mth,#listframe div.yr{border:1px solid #ccc;background-color:#eee;padding:.4rem .2rem .2rem .35rem;border-radius:.2rem;cursor:pointer;margin:.2rem;position:relative;display:block;white-space:nowrap;min-height:2rem}#listframe div.mth.extra,#listframe div.yr.extra{text-decoration:red underline}#listframe div.mth.ivc+.extra,#listframe div.yr.ivc+.extra{margin-top:.4rem}#listframe div.mth.selected,#listframe div.yr.selected{background-color:#90ee90}#listframe div.mth.selected>div.mfrm,#listframe div.mth.selected>div.wfrm,#listframe div.yr.selected>div.mfrm,#listframe div.yr.selected>div.wfrm{display:block}#listframe div.mth.selected>div.mthdl,#listframe div.mth.selected>div.wthdl,#listframe div.mth.selected>div.ythdl,#listframe div.yr.selected>div.mthdl,#listframe div.yr.selected>div.wthdl,#listframe div.yr.selected>div.ythdl{display:inline-block;cursor:pointer}#listframe div.mth div.mfrm,#listframe div.mth div.wfrm,#listframe div.mth div.yfrm,#listframe div.yr div.mfrm,#listframe div.yr div.wfrm,#listframe div.yr div.yfrm{display:none;position:relative;background-color:#fff;margin:1rem .2rem .2rem 1rem;padding:.15rem;border-radius:.2rem}#listframe div.mth div.mfrm .wk,#listframe div.mth div.wfrm .wk,#listframe div.mth div.yfrm .wk,#listframe div.yr div.mfrm .wk,#listframe div.yr div.wfrm .wk,#listframe div.yr div.yfrm .wk{border:1px solid #ccc;background-color:#eee;padding:.4rem 1.35rem .2rem .35rem;border-radius:.2rem;cursor:pointer;margin:.2rem;position:relative;display:block;white-space:nowrap;min-height:2rem}#listframe div.mth div.mfrm .wk.selected,#listframe div.mth div.wfrm .wk.selected,#listframe div.mth div.yfrm .wk.selected,#listframe div.yr div.mfrm .wk.selected,#listframe div.yr div.wfrm .wk.selected,#listframe div.yr div.yfrm .wk.selected{background-color:#add8e6}#listframe div.mth div.mfrm .wk.selected div.wkdl,#listframe div.mth div.wfrm .wk.selected div.wkdl,#listframe div.mth div.yfrm .wk.selected div.wkdl,#listframe div.yr div.mfrm .wk.selected div.wkdl,#listframe div.yr div.wfrm .wk.selected div.wkdl,#listframe div.yr div.yfrm .wk.selected div.wkdl{display:inline-block;cursor:pointer}#listframe div.mthdl,#listframe div.wkdl,#listframe div.yrdl{height:1.5rem;width:1.5rem;display:none;background-color:#fff;position:absolute;right:.4rem;border:1px solid #ccc;border-radius:.2rem;padding:.1rem;top:.18rem;font-size:1rem;text-align:center}.invfrm table.invtbl,.invfrm>table{border-collapse:separate;border-spacing:0;margin:2rem}.invfrm table.invtbl th,.invfrm>table th{padding:.2rem .35rem;border:1px solid #ccc;text-align:left}.invfrm table.invtbl td.currency,.invfrm table.invtbl td.num,.invfrm table.invtbl th.currency,.invfrm table.invtbl th.num,.invfrm>table td.currency,.invfrm>table td.num,.invfrm>table th.currency,.invfrm>table th.num{text-align:right;white-space:nowrap}.invfrm table.invtbl td.keep,.invfrm table.invtbl th.keep,.invfrm>table td.keep,.invfrm>table th.keep{white-space:nowrap}.invfrm table.invtbl td,.invfrm>table td{padding:.2rem .35rem;border:1px solid #ccc;vertical-align:top;position:relative}.invfrm table.invtbl td.hl,.invfrm>table td.hl{background-color:#ffffe0}.invfrm table.invtbl td input,.invfrm table.invtbl td select,.invfrm>table td input,.invfrm>table td select{display:none}.invfrm table.invtbl td.raux,.invfrm>table td.raux{min-width:5.3rem}.invfrm table.invtbl td>.ttip,.invfrm>table td>.ttip{display:none;background:#fff;padding:.2rem .35rem;padding:inherit;border:1px solid #ccc;box-shadow:1px 1px 3px rgba(50,50,50,.5);min-width:100%;min-height:100%;border-top-color:#ff4500;z-index:5}.invfrm table.invtbl td .ctw p,.invfrm table.invtbl td .ttip p,.invfrm>table td .ctw p,.invfrm>table td .ttip p{margin:0 0 .1rem}.invfrm table.invtbl td:hover,.invfrm>table td:hover{border-top-color:#ff4500!important;border-top-width:2px}.invfrm table.invtbl td:hover>.ttip,.invfrm>table td:hover>.ttip{display:block;position:absolute;top:0;height:auto;width:auto;left:0}.invfrm table.invtbl tr:nth-child(2n+1) td,.invfrm>table tr:nth-child(2n+1) td{background-color:rgba(150,150,150,.2)}.invfrm table.invtbl tr:nth-child(2n+1) td.hl,.invfrm>table tr:nth-child(2n+1) td.hl{background-color:#ffffe0}.invfrm table.invtbl tr.selected td,.invfrm>table tr.selected td{background-color:#add8e6}.invfrm table.invtbl tr.selected td.hl,.invfrm>table tr.selected td.hl{background-color:#ffffe0}.invfrm table.invtbl tr.selected td .ilbtn,.invfrm>table tr.selected td .ilbtn{display:inline-block}.invfrm .ovhd{display:block;font-size:1.5rem;margin:1rem 2rem;font-weight:700;text-decoration:underline;text-decoration-style:double}.invfrm .ovhd>span{display:block}.invfrm .ovhd>span:first-child{text-decoration:underline;text-decoration-style:double}.invfrm .ovhd>span+span{margin-top:.5rem}.invfrm .ovhd>span.note{font-size:1rem;font-weight:400;text-decoration:none;text-decoration-style:none}.invfrm.mdw .ovhd{text-decoration-color:#add8e6}.invfrm.mdm .ovhd{text-decoration-color:#90ee90}.ilbtn{border-radius:.3rem;display:none;padding:.1rem;margin-bottom:0;font-size:1.5rem;letter-spacing:.025rem;font-weight:400;line-height:1.42857143;text-align:center;white-space:nowrap;vertical-align:middle;-ms-touch-action:manipulation;touch-action:manipulation;cursor:pointer;background-color:#fff;background-image:none;border:1px solid #ababab;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-box-shadow:1px 1px 3px rgba(50,50,50,.3);box-shadow:1px 1px 3px rgba(50,50,50,.3);min-width:2.4rem} \ No newline at end of file +@charset "UTF-8";@font-face{font-family:"Glyphicons Halflings";src:url(/fts/glyphicons-halflings-regular.eot);src:url(/fts/glyphicons-halflings-regular.eot?#iefix) format("embedded-opentype"),url(/fts/glyphicons-halflings-regular.woff2) format("woff2"),url(/fts/glyphicons-halflings-regular.woff) format("woff"),url(/fts/glyphicons-halflings-regular.ttf) format("truetype"),url(/fts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular) format("svg")}.glyphicon{position:relative;top:1px;display:inline-block;font-family:"Glyphicons Halflings";font-style:normal;font-weight:400;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.glyphicon-asterisk:before{content:"*"}.glyphicon-plus:before{content:"+"}.glyphicon-eur:before,.glyphicon-euro:before{content:"€"}.glyphicon-minus:before{content:"−"}.glyphicon-cloud:before{content:"☁"}.glyphicon-envelope:before{content:"✉"}.glyphicon-pencil:before{content:"✏"}.glyphicon-glass:before{content:"\e001"}.glyphicon-music:before{content:"\e002"}.glyphicon-search:before{content:"\e003"}.glyphicon-heart:before{content:"\e005"}.glyphicon-star:before{content:"\e006"}.glyphicon-star-empty:before{content:"\e007"}.glyphicon-user:before{content:"\e008"}.glyphicon-film:before{content:"\e009"}.glyphicon-th-large:before{content:"\e010"}.glyphicon-th:before{content:"\e011"}.glyphicon-th-list:before{content:"\e012"}.glyphicon-ok:before{content:"\e013"}.glyphicon-remove:before{content:"\e014"}.glyphicon-zoom-in:before{content:"\e015"}.glyphicon-zoom-out:before{content:"\e016"}.glyphicon-off:before{content:"\e017"}.glyphicon-signal:before{content:"\e018"}.glyphicon-cog:before{content:"\e019"}.glyphicon-trash:before{content:"\e020"}.glyphicon-home:before{content:"\e021"}.glyphicon-file:before{content:"\e022"}.glyphicon-time:before{content:"\e023"}.glyphicon-road:before{content:"\e024"}.glyphicon-download-alt:before{content:"\e025"}.glyphicon-download:before{content:"\e026"}.glyphicon-upload:before{content:"\e027"}.glyphicon-inbox:before{content:"\e028"}.glyphicon-play-circle:before{content:"\e029"}.glyphicon-repeat:before{content:"\e030"}.glyphicon-refresh:before{content:"\e031"}.glyphicon-list-alt:before{content:"\e032"}.glyphicon-lock:before{content:"\e033"}.glyphicon-flag:before{content:"\e034"}.glyphicon-headphones:before{content:"\e035"}.glyphicon-volume-off:before{content:"\e036"}.glyphicon-volume-down:before{content:"\e037"}.glyphicon-volume-up:before{content:"\e038"}.glyphicon-qrcode:before{content:"\e039"}.glyphicon-barcode:before{content:"\e040"}.glyphicon-tag:before{content:"\e041"}.glyphicon-tags:before{content:"\e042"}.glyphicon-book:before{content:"\e043"}.glyphicon-bookmark:before{content:"\e044"}.glyphicon-print:before{content:"\e045"}.glyphicon-camera:before{content:"\e046"}.glyphicon-font:before{content:"\e047"}.glyphicon-bold:before{content:"\e048"}.glyphicon-italic:before{content:"\e049"}.glyphicon-text-height:before{content:"\e050"}.glyphicon-text-width:before{content:"\e051"}.glyphicon-align-left:before{content:"\e052"}.glyphicon-align-center:before{content:"\e053"}.glyphicon-align-right:before{content:"\e054"}.glyphicon-align-justify:before{content:"\e055"}.glyphicon-list:before{content:"\e056"}.glyphicon-indent-left:before{content:"\e057"}.glyphicon-indent-right:before{content:"\e058"}.glyphicon-facetime-video:before{content:"\e059"}.glyphicon-picture:before{content:"\e060"}.glyphicon-map-marker:before{content:"\e062"}.glyphicon-adjust:before{content:"\e063"}.glyphicon-tint:before{content:"\e064"}.glyphicon-edit:before{content:"\e065"}.glyphicon-share:before{content:"\e066"}.glyphicon-check:before{content:"\e067"}.glyphicon-move:before{content:"\e068"}.glyphicon-step-backward:before{content:"\e069"}.glyphicon-fast-backward:before{content:"\e070"}.glyphicon-backward:before{content:"\e071"}.glyphicon-play:before{content:"\e072"}.glyphicon-pause:before{content:"\e073"}.glyphicon-stop:before{content:"\e074"}.glyphicon-forward:before{content:"\e075"}.glyphicon-fast-forward:before{content:"\e076"}.glyphicon-step-forward:before{content:"\e077"}.glyphicon-eject:before{content:"\e078"}.glyphicon-chevron-left:before{content:"\e079"}.glyphicon-chevron-right:before{content:"\e080"}.glyphicon-plus-sign:before{content:"\e081"}.glyphicon-minus-sign:before{content:"\e082"}.glyphicon-remove-sign:before{content:"\e083"}.glyphicon-ok-sign:before{content:"\e084"}.glyphicon-question-sign:before{content:"\e085"}.glyphicon-info-sign:before{content:"\e086"}.glyphicon-screenshot:before{content:"\e087"}.glyphicon-remove-circle:before{content:"\e088"}.glyphicon-ok-circle:before{content:"\e089"}.glyphicon-ban-circle:before{content:"\e090"}.glyphicon-arrow-left:before{content:"\e091"}.glyphicon-arrow-right:before{content:"\e092"}.glyphicon-arrow-up:before{content:"\e093"}.glyphicon-arrow-down:before{content:"\e094"}.glyphicon-share-alt:before{content:"\e095"}.glyphicon-resize-full:before{content:"\e096"}.glyphicon-resize-small:before{content:"\e097"}.glyphicon-exclamation-sign:before{content:"\e101"}.glyphicon-gift:before{content:"\e102"}.glyphicon-leaf:before{content:"\e103"}.glyphicon-fire:before{content:"\e104"}.glyphicon-eye-open:before{content:"\e105"}.glyphicon-eye-close:before{content:"\e106"}.glyphicon-warning-sign:before{content:"\e107"}.glyphicon-plane:before{content:"\e108"}.glyphicon-calendar:before{content:"\e109"}.glyphicon-random:before{content:"\e110"}.glyphicon-comment:before{content:"\e111"}.glyphicon-magnet:before{content:"\e112"}.glyphicon-chevron-up:before{content:"\e113"}.glyphicon-chevron-down:before{content:"\e114"}.glyphicon-retweet:before{content:"\e115"}.glyphicon-shopping-cart:before{content:"\e116"}.glyphicon-folder-close:before{content:"\e117"}.glyphicon-folder-open:before{content:"\e118"}.glyphicon-resize-vertical:before{content:"\e119"}.glyphicon-resize-horizontal:before{content:"\e120"}.glyphicon-hdd:before{content:"\e121"}.glyphicon-bullhorn:before{content:"\e122"}.glyphicon-bell:before{content:"\e123"}.glyphicon-certificate:before{content:"\e124"}.glyphicon-thumbs-up:before{content:"\e125"}.glyphicon-thumbs-down:before{content:"\e126"}.glyphicon-hand-right:before{content:"\e127"}.glyphicon-hand-left:before{content:"\e128"}.glyphicon-hand-up:before{content:"\e129"}.glyphicon-hand-down:before{content:"\e130"}.glyphicon-circle-arrow-right:before{content:"\e131"}.glyphicon-circle-arrow-left:before{content:"\e132"}.glyphicon-circle-arrow-up:before{content:"\e133"}.glyphicon-circle-arrow-down:before{content:"\e134"}.glyphicon-globe:before{content:"\e135"}.glyphicon-wrench:before{content:"\e136"}.glyphicon-tasks:before{content:"\e137"}.glyphicon-filter:before{content:"\e138"}.glyphicon-briefcase:before{content:"\e139"}.glyphicon-fullscreen:before{content:"\e140"}.glyphicon-dashboard:before{content:"\e141"}.glyphicon-paperclip:before{content:"\e142"}.glyphicon-heart-empty:before{content:"\e143"}.glyphicon-link:before{content:"\e144"}.glyphicon-phone:before{content:"\e145"}.glyphicon-pushpin:before{content:"\e146"}.glyphicon-usd:before{content:"\e148"}.glyphicon-gbp:before{content:"\e149"}.glyphicon-sort:before{content:"\e150"}.glyphicon-sort-by-alphabet:before{content:"\e151"}.glyphicon-sort-by-alphabet-alt:before{content:"\e152"}.glyphicon-sort-by-order:before{content:"\e153"}.glyphicon-sort-by-order-alt:before{content:"\e154"}.glyphicon-sort-by-attributes:before{content:"\e155"}.glyphicon-sort-by-attributes-alt:before{content:"\e156"}.glyphicon-unchecked:before{content:"\e157"}.glyphicon-expand:before{content:"\e158"}.glyphicon-collapse-down:before{content:"\e159"}.glyphicon-collapse-up:before{content:"\e160"}.glyphicon-log-in:before{content:"\e161"}.glyphicon-flash:before{content:"\e162"}.glyphicon-log-out:before{content:"\e163"}.glyphicon-new-window:before{content:"\e164"}.glyphicon-record:before{content:"\e165"}.glyphicon-save:before{content:"\e166"}.glyphicon-open:before{content:"\e167"}.glyphicon-saved:before{content:"\e168"}.glyphicon-import:before{content:"\e169"}.glyphicon-export:before{content:"\e170"}.glyphicon-send:before{content:"\e171"}.glyphicon-floppy-disk:before{content:"\e172"}.glyphicon-floppy-saved:before{content:"\e173"}.glyphicon-floppy-remove:before{content:"\e174"}.glyphicon-floppy-save:before{content:"\e175"}.glyphicon-floppy-open:before{content:"\e176"}.glyphicon-credit-card:before{content:"\e177"}.glyphicon-transfer:before{content:"\e178"}.glyphicon-cutlery:before{content:"\e179"}.glyphicon-header:before{content:"\e180"}.glyphicon-compressed:before{content:"\e181"}.glyphicon-earphone:before{content:"\e182"}.glyphicon-phone-alt:before{content:"\e183"}.glyphicon-tower:before{content:"\e184"}.glyphicon-stats:before{content:"\e185"}.glyphicon-sd-video:before{content:"\e186"}.glyphicon-hd-video:before{content:"\e187"}.glyphicon-subtitles:before{content:"\e188"}.glyphicon-sound-stereo:before{content:"\e189"}.glyphicon-sound-dolby:before{content:"\e190"}.glyphicon-sound-5-1:before{content:"\e191"}.glyphicon-sound-6-1:before{content:"\e192"}.glyphicon-sound-7-1:before{content:"\e193"}.glyphicon-copyright-mark:before{content:"\e194"}.glyphicon-registration-mark:before{content:"\e195"}.glyphicon-cloud-download:before{content:"\e197"}.glyphicon-cloud-upload:before{content:"\e198"}.glyphicon-tree-conifer:before{content:"\e199"}.glyphicon-tree-deciduous:before{content:"\e200"}.glyphicon-cd:before{content:"\e201"}.glyphicon-save-file:before{content:"\e202"}.glyphicon-open-file:before{content:"\e203"}.glyphicon-level-up:before{content:"\e204"}.glyphicon-copy:before{content:"\e205"}.glyphicon-paste:before{content:"\e206"}.glyphicon-alert:before{content:"\e209"}.glyphicon-equalizer:before{content:"\e210"}.glyphicon-king:before{content:"\e211"}.glyphicon-queen:before{content:"\e212"}.glyphicon-pawn:before{content:"\e213"}.glyphicon-bishop:before{content:"\e214"}.glyphicon-knight:before{content:"\e215"}.glyphicon-baby-formula:before{content:"\e216"}.glyphicon-tent:before{content:"⛺"}.glyphicon-blackboard:before{content:"\e218"}.glyphicon-bed:before{content:"\e219"}.glyphicon-apple:before{content:"\f8ff"}.glyphicon-erase:before{content:"\e221"}.glyphicon-hourglass:before{content:"⌛"}.glyphicon-lamp:before{content:"\e223"}.glyphicon-duplicate:before{content:"\e224"}.glyphicon-piggy-bank:before{content:"\e225"}.glyphicon-scissors:before{content:"\e226"}.glyphicon-bitcoin:before,.glyphicon-btc:before,.glyphicon-xbt:before{content:"\e227"}.glyphicon-jpy:before,.glyphicon-yen:before{content:"¥"}.glyphicon-rub:before,.glyphicon-ruble:before{content:"₽"}.glyphicon-scale:before{content:"\e230"}.glyphicon-ice-lolly:before{content:"\e231"}.glyphicon-ice-lolly-tasted:before{content:"\e232"}.glyphicon-education:before{content:"\e233"}.glyphicon-option-horizontal:before{content:"\e234"}.glyphicon-option-vertical:before{content:"\e235"}.glyphicon-menu-hamburger:before{content:"\e236"}.glyphicon-modal-window:before{content:"\e237"}.glyphicon-oil:before{content:"\e238"}.glyphicon-grain:before{content:"\e239"}.glyphicon-sunglasses:before{content:"\e240"}.glyphicon-text-size:before{content:"\e241"}.glyphicon-text-color:before{content:"\e242"}.glyphicon-text-background:before{content:"\e243"}.glyphicon-object-align-top:before{content:"\e244"}.glyphicon-object-align-bottom:before{content:"\e245"}.glyphicon-object-align-horizontal:before{content:"\e246"}.glyphicon-object-align-left:before{content:"\e247"}.glyphicon-object-align-vertical:before{content:"\e248"}.glyphicon-object-align-right:before{content:"\e249"}.glyphicon-triangle-right:before{content:"\e250"}.glyphicon-triangle-left:before{content:"\e251"}.glyphicon-triangle-bottom:before{content:"\e252"}.glyphicon-triangle-top:before{content:"\e253"}.glyphicon-console:before{content:"\e254"}.glyphicon-superscript:before{content:"\e255"}.glyphicon-subscript:before{content:"\e256"}.glyphicon-menu-left:before{content:"\e257"}.glyphicon-menu-right:before{content:"\e258"}.glyphicon-menu-down:before{content:"\e259"}.glyphicon-menu-up:before{content:"\e260"}*,:after,:before{box-sizing:border-box;transition:visibility 1s linear,opacity 1s linear;-moz-transition:visibility 1s linear,opacity 1s linear;-webkit-transition:visibility 1s linear,opacity 1s linear}body,html{-webkit-font-smoothing:antialiased;font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;image-rendering:auto;shape-rendering:geometricprecision;color-rendering:optimizeQuality;font-size:14px;background-color:#1b4379}@media (max-width:796px) and (min-width:362px){body,html{font-size:15px}}@media (max-width:361px){body,html{font-size:12px}}html{font-family:Arial,Arial,Helvetica Neue,Helvetica,sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{font-family:Arial,Arial,Helvetica Neue,Helvetica,sans-serif;font-weight:400;overflow:hidden;position:relative;height:100vh;width:100vw;margin:0}body.busy,body.busy *{cursor:wait!important}body>*{position:fixed;left:.5rem;right:.5rem}body header{top:.5rem;height:2.3rem;z-index:10;max-height:2.3rem;background-color:#1b4379}body main{background-color:#fff;top:2.8rem;bottom:2.8rem;z-index:9;overflow:auto;position:absolute}body footer{bottom:0;height:2.3rem;max-height:2.3rem;z-index:8;overflow:hidden}.h1,.h2,.h3,.h4,h1,h2,h3,h4{color:#1b4379}.h1,h1{font-size:1.45rem;letter-spacing:.0725rem;font-weight:700;margin:1.45rem 0 .8rem}.h2,h2{font-size:1.35rem;letter-spacing:.0675rem;font-weight:600;margin:1.35rem 0 .7rem}.h3,h3{font-size:1.2rem;letter-spacing:.04rem;font-weight:500;margin:1rem 0 .5rem}.h4,h4{letter-spacing:.015rem;font-weight:400;margin:.6rem 0 .3rem}p{margin:0 0 .6rem}.loading{background-image:url(data:image/gif;base64,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);background-position:center center;background-repeat:repeat-x}#mainframe{top:5px;left:5px;right:5px;bottom:5px}div.modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1050;overflow:hidden;-webkit-overflow-scrolling:touch;outline:0;display:flex;align-items:center;justify-items:center;justify-content:center;align-content:center;background-color:rgba(50,50,50,.3)}div.modal>.modal-dialog{background-clip:padding-box;display:none;max-width:calc(100vw - 1rem);max-height:calc(100vh - 1rem);-webkit-transform:translate(0,0);-ms-transform:translate(0,0);-o-transform:translate(0,0);transform:translate(0,0);position:relative}div.modal>.modal-dialog.szfull{width:calc(100vw - 5rem);height:calc(100vh - 5rem)}div.modal>.modal-dialog.in{display:block}div.modal>.modal-dialog.fade .out{opacity:0}div.modal>.modal-dialog.fade .in{opacity:1}div.modal>.modal-dialog>.modal-close{position:absolute;top:-.5rem;right:-.5rem;content:"X";height:1.4rem;width:1.4rem;color:#000;z-index:1;border-radius:50%;padding:.5rem;border:1px solid #000;display:block;background:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/PjwhRE9DVFlQRSBzdmcgIFBVQkxJQyAnLS8vVzNDLy9EVEQgU1ZHIDEuMS8vRU4nICAnaHR0cDovL3d3dy53My5vcmcvR3JhcGhpY3MvU1ZHLzEuMS9EVEQvc3ZnMTEuZHRkJz48c3ZnIGhlaWdodD0iNTEycHgiIGlkPSJMYXllcl8xIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCA1MTIgNTEyOyIgdmVyc2lvbj0iMS4xIiB2aWV3Qm94PSIwIDAgNTEyIDUxMiIgd2lkdGg9IjUxMnB4IiB4bWw6c3BhY2U9InByZXNlcnZlIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIj48cGF0aCBkPSJNNDM3LjUsMzg2LjZMMzA2LjksMjU2bDEzMC42LTEzMC42YzE0LjEtMTQuMSwxNC4xLTM2LjgsMC01MC45Yy0xNC4xLTE0LjEtMzYuOC0xNC4xLTUwLjksMEwyNTYsMjA1LjFMMTI1LjQsNzQuNSAgYy0xNC4xLTE0LjEtMzYuOC0xNC4xLTUwLjksMGMtMTQuMSwxNC4xLTE0LjEsMzYuOCwwLDUwLjlMMjA1LjEsMjU2TDc0LjUsMzg2LjZjLTE0LjEsMTQuMS0xNC4xLDM2LjgsMCw1MC45ICBjMTQuMSwxNC4xLDM2LjgsMTQuMSw1MC45LDBMMjU2LDMwNi45bDEzMC42LDEzMC42YzE0LjEsMTQuMSwzNi44LDE0LjEsNTAuOSwwQzQ1MS41LDQyMy40LDQ1MS41LDQwMC42LDQzNy41LDM4Ni42eiIvPjwvc3ZnPg==) center center/75% no-repeat border-box #fff;cursor:pointer}@media (max-width:550px){div.modal>.modal-dialog>.modal-close{height:2rem;width:2rem}}div.modal>.modal-dialog .invalid .modal-footer div.note_invalid{display:inline-block}div.modal>.modal-dialog .modal-footer div.note_invalid{display:none}div.modal>.modal-dialog>.modal-content{position:relative;background-color:#f5f5f5;-webkit-background-clip:padding-box;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);border-radius:.4rem;outline:0;-webkit-box-shadow:0 3px 9px rgba(0,0,0,.5);box-shadow:0 3px 9px rgba(0,0,0,.5);overflow:auto;height:100%;max-height:calc(100vh - 1rem)}div.modal>.modal-dialog>.modal-content .modal-header.fix{position:absolute;top:0;left:0}div.modal>.modal-dialog>.modal-content .modal-body,div.modal>.modal-dialog>.modal-content .modal-footer,div.modal>.modal-dialog>.modal-content .modal-header,div.modal>.modal-dialog>.modal-content .modal-note{width:100%;display:block;position:relative;padding:1rem}div.modal>.modal-dialog>.modal-content .modal-body+div,div.modal>.modal-dialog>.modal-content .modal-footer+div,div.modal>.modal-dialog>.modal-content .modal-header+div,div.modal>.modal-dialog>.modal-content .modal-note+div{border-top:1px solid #e5e5e5}div.modal>.modal-dialog>.modal-content .modal-body>.choicefrm{padding:1rem}div.modal>.modal-dialog>.modal-content .modal-body>.choicefrm>div{display:block;margin:1rem}div.modal>.modal-dialog>.modal-content .modal-body>.choicefrm>div:hover{background-color:#eee}div.modal>.modal-dialog>.modal-content .modal-body>.choicefrm>div.btn.inactive{cursor:not-allowed;text-decoration:line-through}div.modal>.modal-dialog>.modal-content .modal-body table .ilbtn{display:inline-block}div.modal>.modal-dialog>.modal-content .modal-body table.fullgrid{border-collapse:collapse}div.modal>.modal-dialog>.modal-content .modal-body table.fullgrid td,div.modal>.modal-dialog>.modal-content .modal-body table.fullgrid th{padding:.1rem .5rem;border:1px solid #ccc}div.modal>.modal-dialog>.modal-content .modal-body table.fullgrid th{font-weight:bolder;border-bottom-width:2px}div.modal>.modal-dialog>.modal-content .modal-body table.fullwidth{width:100%}div.modal>.modal-dialog>.modal-content .modal-footer{text-align:right}div.modal>.modal-dialog>.modal-content .modal-footer div.note_required{float:left;font-size:.7rem}div.modal>.modal-dialog>.modal-content .modal-footer div.note_invalid{color:red;font-size:1rem;float:left;clear:both;margin-top:.5rem}div.modal>.modal-dialog>.modal-content .modal-note#dataprivacy{font-size:.8rem}div.modal>.modal-dialog>.modal-content .frm.c13{display:inline-flex;vertical-align:top}div.modal>.modal-dialog>.modal-content .frm.c13:first-child{width:30%}div.modal>.modal-dialog>.modal-content .frm.c13:nth-child(n+2){width:70%;padding-left:1.5rem}#oci_login #dbtn-forgotpw{margin-top:1rem;float:left;clear:both}#oci_login .modal-footer{min-height:5.8rem}.btn,button{border-radius:.28rem;display:inline-block;padding:.45rem 1rem .5rem;margin-bottom:0;font-size:1rem;letter-spacing:.025rem;font-weight:500;line-height:1.42857143;text-align:center;white-space:nowrap;vertical-align:middle;-ms-touch-action:manipulation;touch-action:manipulation;cursor:pointer;background-image:none;border:1px solid #ababab;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-box-shadow:1px 1px 3px rgba(50,50,50,.3);box-shadow:1px 1px 3px rgba(50,50,50,.3)}.btn.btn-primary,button.btn-primary{background-color:#1b4379;color:#fff}.btn.btn-sm,button.btn-sm{border-radius:.28rem;padding:.25rem .7rem .3rem;font-size:.8rem;letter-spacing:.015rem}.form,form{height:inherit;width:inherit}.form span.ind_required,form span.ind_required{color:red;font-weight:400;padding-left:5px;padding-right:5px}.form button,.form html input[type=button],.form input[type=reset],.form input[type=submit],form button,form html input[type=button],form input[type=reset],form input[type=submit]{-webkit-appearance:button;cursor:pointer}.form button,.form select,form button,form select{text-transform:none}.form textarea,form textarea{overflow:auto;resize:vertical}.form label,form label{padding-right:1.5rem;display:inline-block;box-sizing:content-box}.form .form-body,form .form-body{display:table;width:100%}@media (max-width:796px){.form .form-body.stacked .form-group,form .form-body.stacked .form-group{margin-bottom:.25rem;display:block}.form .form-body.stacked .form-group .form-itm,form .form-body.stacked .form-group .form-itm{display:block;width:100%;max-width:100%;padding-bottom:.1rem}.form .form-body.stacked .form-group .form-itm:first-child,form .form-body.stacked .form-group .form-itm:first-child{width:100%}}.form .form-body .form-group,form .form-body .form-group{margin-bottom:1rem;display:table-row}.form .form-body .form-group.cgrp,form .form-body .form-group.cgrp{margin-top:1.5rem}.form .form-body .form-group .form-itm,form .form-body .form-group .form-itm{display:table-cell;vertical-align:top;padding-bottom:1rem}.form .form-body .form-group .form-itm:first-child,form .form-body .form-group .form-itm:first-child{width:10%}.form .form-body .form-group .form-itm>table,form .form-body .form-group .form-itm>table{width:100%}.form .form-body .form-group .form-sep,form .form-body .form-group .form-sep{display:table-cell;padding-top:1rem;border-top:1px solid #e5e5e5;height:2px}.form .form-body .form-group .form-control,form .form-body .form-group .form-control{display:block}.form .form-body .form-group input.form-control,.form .form-body .form-group select.form-control,form .form-body .form-group input.form-control,form .form-body .form-group select.form-control{width:100%}.form .form-body .form-group .input-group,form .form-body .form-group .input-group{position:relative;display:flex;flex-wrap:wrap;align-items:stretch;width:100%}.form .form-body .form-group .input-group .input-group-btn,.form .form-body .form-group .input-group .input-group-text,form .form-body .form-group .input-group .input-group-btn,form .form-body .form-group .input-group .input-group-text{display:flex;align-items:center;padding:.375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#212529;text-align:center;white-space:nowrap;background-color:#e9ecef;border:1px solid #ced4da;border-radius:.3rem}.form .form-body .form-group .input-group .input-group-btn.narrow,.form .form-body .form-group .input-group .input-group-text.narrow,form .form-body .form-group .input-group .input-group-btn.narrow,form .form-body .form-group .input-group .input-group-text.narrow{padding-left:.375rem;padding-right:.375rem}.form .form-body .form-group .input-group .input-group-btn,form .form-body .form-group .input-group .input-group-btn{cursor:pointer}.form .form-body .form-group .input-group .input-group-btn:hover,form .form-body .form-group .input-group .input-group-btn:hover{background-color:#f1f3f5}.form .form-body .form-group .input-group>:not(:last-child),form .form-body .form-group .input-group>:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.form .form-body .form-group .input-group>:not(:first-child),form .form-body .form-group .input-group>:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0;margin-left:-1px}.form .form-body .form-group .input-group>.form-control,.form .form-body .form-group .input-group>.form-select,.form .form-body .form-group .input-group>.form-set,form .form-body .form-group .input-group>.form-control,form .form-body .form-group .input-group>.form-select,form .form-body .form-group .input-group>.form-set{position:relative;flex:1 1 auto;width:1%;min-width:0}.form .form-body .form-group .input-group>.form-set .dropdown-menu,form .form-body .form-group .input-group>.form-set .dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:160px;padding:5px 0;margin:2px 0 0;font-size:14px;text-align:left;list-style:none;background-color:#fff;-webkit-background-clip:padding-box;background-clip:padding-box;border:1px solid rgba(0,0,0,.15);border-radius:4px;-webkit-box-shadow:0 6px 12px rgba(0,0,0,.175);box-shadow:0 6px 12px rgba(0,0,0,.175)}.form .form-body .form-group .input-group>.form-set .dropdown-menu .divider,form .form-body .form-group .input-group>.form-set .dropdown-menu .divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.form .form-body .form-group .input-group>.form-set .dropdown-menu>li>a,form .form-body .form-group .input-group>.form-set .dropdown-menu>li>a{display:block;padding:3px 20px;clear:both;font-weight:400;line-height:1.42857143;color:#333;white-space:nowrap}.form .form-body .form-group .input-group>.form-set .dropdown-menu>li>a:focus,.form .form-body .form-group .input-group>.form-set .dropdown-menu>li>a:hover,form .form-body .form-group .input-group>.form-set .dropdown-menu>li>a:focus,form .form-body .form-group .input-group>.form-set .dropdown-menu>li>a:hover{color:#262626;text-decoration:none;background-color:#f5f5f5}.form .form-body .form-group .input-group>.form-set .dropdown-menu>.active>a,.form .form-body .form-group .input-group>.form-set .dropdown-menu>.active>a:focus,.form .form-body .form-group .input-group>.form-set .dropdown-menu>.active>a:hover,form .form-body .form-group .input-group>.form-set .dropdown-menu>.active>a,form .form-body .form-group .input-group>.form-set .dropdown-menu>.active>a:focus,form .form-body .form-group .input-group>.form-set .dropdown-menu>.active>a:hover{color:#fff;text-decoration:none;background-color:#337ab7;outline:0}.form .form-body .form-group .input-group>.form-set .dropdown-menu>.disabled>a,.form .form-body .form-group .input-group>.form-set .dropdown-menu>.disabled>a:focus,.form .form-body .form-group .input-group>.form-set .dropdown-menu>.disabled>a:hover,form .form-body .form-group .input-group>.form-set .dropdown-menu>.disabled>a,form .form-body .form-group .input-group>.form-set .dropdown-menu>.disabled>a:focus,form .form-body .form-group .input-group>.form-set .dropdown-menu>.disabled>a:hover{color:#777}.form .form-body .form-group .input-group>.form-set .dropdown-menu>.disabled>a:focus,.form .form-body .form-group .input-group>.form-set .dropdown-menu>.disabled>a:hover,form .form-body .form-group .input-group>.form-set .dropdown-menu>.disabled>a:focus,form .form-body .form-group .input-group>.form-set .dropdown-menu>.disabled>a:hover{text-decoration:none;cursor:not-allowed;background-color:transparent;background-image:none}.form .form-body .form-group .input-group>.form-set>.form-control,form .form-body .form-group .input-group>.form-set>.form-control{border-radius:0}.form .form-body .form-group.hd,.form .form-body .form-group>.hd,form .form-body .form-group.hd,form .form-body .form-group>.hd{display:none}.form textarea.form-control,form textarea.form-control{height:5rem}.form textarea.form-control[rows],form textarea.form-control[rows]{height:auto}.form .form-control,form .form-control{appearance:none;display:block;width:100%;height:2.5rem;padding:.5rem .8rem;font-size:1rem;line-height:1.42857143;color:#525252;background-color:#fff;background-image:none;border:1px solid #ccc;border-radius:.3rem;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075);-webkit-transition:border-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;-o-transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out;box-sizing:border-box}.form .form-control:focus,form .form-control:focus{border-color:#1b4379;outline:0;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(27,67,121,.6);box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(27,67,121,.6)}.form .form-control:invalid,form .form-control:invalid{border-color:#da6600}.form .form-control:-ms-input-placeholder,.form .form-control::-moz-placeholder,.form .form-control::-webkit-input-placeholder,form .form-control:-ms-input-placeholder,form .form-control::-moz-placeholder,form .form-control::-webkit-input-placeholder{color:#262626;opacity:1}.form .form-control::-ms-expand,form .form-control::-ms-expand{background-color:transparent;border:0}.form .form-control[size],form .form-control[size]{height:auto}.form .form-control[disabled],.form .form-control[readonly],fieldset[disabled] .form .form-control,fieldset[disabled] form .form-control,form .form-control[disabled],form .form-control[readonly]{background-color:#eee;opacity:1}.form .form-control[disabled],fieldset[disabled] .form .form-control,fieldset[disabled] form .form-control,form .form-control[disabled]{cursor:not-allowed}body.div.pgb{-webkit-pointer-events:none;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}body.div.pgb .pgb-progress{background:#1ab394;position:fixed;z-index:2040;top:0;right:100%;width:100%;height:2px}body.div.pgb .pgb-progress.inactive{display:none}#topbar{display:block;position:absolute;background-color:#1b4379;left:0;right:0;min-height:2.3rem;height:auto;z-index:4}#topbar.hd{height:0!important;min-height:0;overflow:hidden}#topbar.hd~#contentframe,#topbar.hd~#listframe{top:0}#topbar~#contentframe,#topbar~#listframe{top:2.3rem}#topbar>nav{padding-top:0}#contentframe{position:absolute;overflow:auto;top:0;left:0;right:0;bottom:0;z-index:2}#listframe{position:absolute;overflow:auto;top:2.3rem;left:0;right:auto;bottom:0;min-width:20%;max-width:100%;z-index:3;background-color:#fff;border-right:1px solid #1b4379;transition:width 1s,min-width 1s}#listframe.hd:not(.fix){min-width:0;width:0;overflow:hidden}#sidebar~div{left:2.3rem}body>.timer{position:fixed;bottom:3px;height:1px;border-bottom:2px solid #ff0;transition:width 1s linear;left:0}#oci_login{width:600px}#mainmenu{border-bottom:1px solid #ccc}nav{position:relative;left:0;width:100%;display:block;z-index:10000;border-radius:0;min-height:2.3rem;height:2.3rem;max-height:2.3rem;padding-left:0;margin-bottom:0;list-style:none;color:#e3e7e7;background-color:#1b4379}nav.nv{height:100%;max-height:100%;width:2.3rem;max-width:2.3rem}nav.nv ul{min-height:0;min-width:100%}nav.nv ul>li{height:auto;width:100%;padding-top:0;padding-bottom:0}nav.nv ul>li a{width:100%;height:auto;padding:1rem 0}nav.nv ul>li a span.ico{width:100%;height:2.3rem}nav.nv>ul{height:auto}nav #logo{background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAADVElEQVRYhe2V309bZRjH+TvovDJbuZkXJsY7Yckpg9pF3QXtKAksxoWZxYEQPWsLtbSW/XDRqcnsYub0YrvxYiNZWTYXIzMQY0xMrHSOtlBKa1vWM3Br2UjP+/HinB1haDxktNzsTb55z8n75D2ffPN8n9PQKMlspxqeAWzVRRZJpsUV4MDhU3T0nmS3w1dfgJ1tHi5cGiefLzGbznFo8DMs9QSw2j2Mjd9CFYJyZYW+oUh9AXa1awBCB+j3bSdAeRscsNq9XIlO6AAP6a83QJPdy+WrE4YD/UMRLLYaAFjbPexxjeDoCeM4qKsnzOtvHufazSmEEFQqK3xw4hscPaPs6xnVavX91e4PeWGfb/MAz9mO4T5ymus3f2IhW6BQVP7RYonCosKDBxUAVFWgKMsUFh+fayreVVjIFTkWOm+4YwrAIskc7PuEzEIBIQRmlhAghFgv4NHqKuEzF9mxGYCX3hhm6ueYdokqyBdKTN9OGYrFk0zHUxSKCgDVapWZZIbYdIJYPMnv8RSx6SSxeJJff7vDUd8XRoOaAuh+52OWlu4DMDef49Dgp+xxjdDcEdDkDNDqDhG9Pmn0gDd8nhZXgFec2nmLM6C9dwTY2eYx3wMWSaZ/KEK5soIQguiNSaztng11Tw6iLZsDFklmYDhCpfIQIQRj47fY9S8ATXYP176bMmJ41Hd2cwBN7V6kziB73SFa3SFsnUGkziCtXSH8J742AKI3pnB0h2l1B7Hp2tsVos93lmyuCIBy7y+6jpw2la6GRknGYpMZ8J8j/scsM4l5ZhJpfZ/nTiJNOvMn1aoKQElZIpHUahKpeV0ZSsqS0e0//PgLL742ZB5gh00mfOYij1ZXn4iQ9mx2qapKMpWh8+2PTNm/zoH3g18yO5cjmyuykF2jXJFCUUFVNQeWl+9vrMkWSKQyfDv2PfvfOm5k3DTA4yZqXhsZ54gm1wi+0a/W9MAkkjuo12k1zc4AL+/383zbxuZ8+hTYZN71RyiXtRhevjpBk9276Q89VQwH/eco6w5ciU5grTfAwBqA/5oDNQb4/0FUW4DhCJXKCqoOYLXXGaD3vc+ZS+fI50tcuDS+7mdSc4BGSWa3w0dH70kOHD5FiytgeshsGUAt9Qzgb8pqydEEvRadAAAAAElFTkSuQmCC) center center/contain no-repeat;margin-right:10px;height:1.9rem;width:1.9rem}nav .nav-header{float:left;position:relative;padding-left:0;margin:0;list-style:none;min-height:100%}nav .nav-header>div{float:left;padding:.4rem 1rem 0 0;line-height:1.4rem;height:100%}nav .nav-header>button,nav .nav-header>div.button{float:left;height:100%;padding:.2rem .8rem;background:0 0;color:inherit;margin-right:1.1rem;box-shadow:none}nav .nav-header .activemodule,nav .nav-header .brand{cursor:default;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}nav .nav-header .activemodule{color:#fff240;overflow:hidden}@media (min-width:551px){nav .nav-header .activemodule{max-width:calc(100% - 46px);font-size:16px}nav .nav-header .brand{display:inline-block}}@media (max-width:550px){nav .nav-header .brand{display:none}nav .nav-header .activemodule{max-width:calc(100% - 190px);font-size:16px;line-height:28px;padding:0}}@media (min-width:797px){nav .nav-header #mmmb{display:none!important;pointer-events:none}nav ul.nav-right{float:right!important}nav ul.nav-right li.dropdown.submenu>ul{left:auto;right:100%;right:calc(100% + .1rem)}nav ul li[role=separator]{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;pointer-events:none}nav ul li[role=separator]::before{content:"|";cursor:default;padding:.4rem 1rem 0;line-height:1.4rem;height:100%;display:block;font-weight:400;white-space:nowrap;min-height:inherit;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;pointer-events:none}}@media (max-width:796px){nav.nv{padding-top:2.3rem}nav.nv>ul{display:none}nav .nav-header{width:100%;position:absolute;top:0;left:0}nav .nav-header #mmmb{float:right;margin-right:0}nav{padding-top:2.3rem}nav.ctxt>ul{width:100%}nav.ctxt>ul>li[role=lbl]{max-width:55vw;white-space:nowrap;overflow:hidden;font-size:85%}nav.ctxt>ul>li>a,nav.ctxt>ul>li>a.fbtn{padding:.4rem .75rem 0}nav.ctxt>ul>li>a>span{display:none}nav.ctxt>ul>li>a>span.caret,nav.ctxt>ul>li>a>span.glyphicon,nav.ctxt>ul>li>a>span.ico{display:inline-block}nav#mainmenu.vis>ul{display:block}nav#mainmenu>ul{padding-bottom:1rem;display:none;width:100%;float:none}nav.vis>ul{height:auto}nav.vis>ul li{width:100%;float:none}nav.vis>ul li[role=separator]{padding:0 1rem;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;pointer-events:none;margin:.3rem 0}nav.vis>ul li[role=separator]::before{content:"";cursor:default;position:relative;width:100%;height:100%;border-bottom:1px solid #e3e7e7;display:block}}nav>ul{height:100%;float:left}nav ul{position:relative;padding-left:0;margin:0;list-style:none;min-height:100%;background-color:inherit}nav ul>li{list-style:none;float:left;position:relative;display:block;padding-left:0;margin-bottom:0;height:100%}nav ul>li.ar{float:right}nav ul>li[role=info],nav ul>li[role=lbl]{color:#fff240;padding:.5rem .5rem 0}nav ul>li a{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer;padding:.4rem 1rem 0;line-height:1.4rem;height:100%;display:block;font-weight:400;white-space:nowrap;min-height:inherit}nav ul>li a span+.caret,nav ul>li a span+span{margin-left:.5rem}nav ul>li a span.ico{height:1.1rem;width:1.1rem;background-color:transparent;background-repeat:no-repeat;background-position:center center;background-size:contain;background-clip:content-box;display:inline-block;padding:.15rem}nav ul>li a>.caret{display:inline-block;width:0;height:0;margin-left:2px;vertical-align:middle;border-top:4px dashed;border-right:4px solid transparent;border-left:4px solid transparent}nav ul>li a>.glyphicon{font-size:1.1rem}nav ul>li a[role=button]::after{content:"";position:absolute;top:.2rem;left:.1rem;right:.1rem;bottom:0;border-top:1px solid transparent;border-left:1px solid transparent;border-right:1px solid transparent;border-bottom:none;border-top-left-radius:.2rem;border-top-right-radius:.2rem}nav ul>li a[role=button].fbtn::after,nav ul>li a[role=button]:hover::after{border-color:rgba(227,231,231,.6);border-top-left-radius:.2rem;border-top-right-radius:.2rem}nav ul>li a.disabled{cursor:default;opacity:.5}nav ul>li.dropdown{position:relative}nav ul>li.dropdown.submenu>ul{position:absolute;top:0;left:100%;left:calc(100% + .1rem);right:auto;min-height:inherit}nav ul>li.dropdown>ul{display:none}nav ul>li.dropdown>ul>li{min-height:2.3rem;float:none;display:block}nav ul>li.dropdown.open>ul{display:block}nav ul>li.dropdown.open>a{background-color:rgba(227,231,231,.6);color:#fff}@media (max-width:796px){nav ul>li.dropdown.open>ul{position:fixed;top:5.1rem;top:calc(5.1rem - 2px);left:.5rem;right:.5rem;left:calc(.5rem - 1px);right:calc(.5rem - 1px);height:auto;min-height:25%}}nav ul.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:10rem;padding:5px 0;margin:2px 0 0;font-size:1rem;text-align:left;background-color:#1b4379;-webkit-background-clip:padding-box;background-clip:padding-box;border:1px solid rgba(0,0,0,.15);border-radius:4px;-webkit-box-shadow:0 6px 12px rgba(0,0,0,.175);box-shadow:0 6px 12px rgba(0,0,0,.175)}nav ul.dropdown-menu.right{right:0;left:auto}nav ul.dropdown-menu li.divider,nav ul.dropdown-menu li[role=separator]{height:1px;margin:.25rem 0 .7rem;overflow:hidden;background-color:#e5e5e5;min-height:1px;max-height:1px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}nav ul.dropdown-menu li.info,nav ul.dropdown-menu li[role=info],nav ul.dropdown-menu li[role=lbl]{color:#ffff4a;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}nav ul.dropdown-menu li>span{padding:.4rem 1rem 0 .4rem;display:inline-block}nav ul.dropdown-menu li a[role=button]::after{border-left:none;border-right:none;border-top-left-radius:0}span.sbc{background-image:url(/ct/img/wave_v.svg)}table.sortable>tr.sortactive>td,tbody.sortable>tr.sortactive>td{background-color:#ffffe0!important;box-shadow:1px 1px 2px rgba(50,50,50,.3)}#contentframe>.edit_frm+.list_frm{display:none}.list_frm{min-height:100%}main nav ul>li a[role=button]::after{border-top:1px solid rgba(227,231,231,.6);border-left:1px solid rgba(227,231,231,.6);border-right:1px solid rgba(227,231,231,.6)}main nav ul>li a[role=button].fbtn::after,main nav ul>li a[role=button]:hover::after{border-color:#e3e7e7}#dashboard_frame{overflow-y:auto;height:100%;width:100%;padding:1rem;background:#ddd;text-align:center}#notification_frame{height:100%;overflow:hidden;display:flex;flex-direction:column;pointer-events:none}.notification_item{position:relative;flex:0 0 2.3rem;height:2.3rem;box-sizing:border-box;display:flex;align-items:center;text-align:left;white-space:nowrap;overflow:hidden;color:#fff;padding:0 2.2rem 0 .85rem;pointer-events:auto}.notification_item.error,.notification_item.warn,.notification_item.warning{color:#ffc801}.notification_item .notification_title{font-weight:700;flex:0 0 auto}.notification_item .notification_title::after{content:":";margin-right:.35rem}.notification_item .notification_message{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.notification_item .notification_close{position:absolute;top:0;right:.45rem;height:100%;border:0;background:0 0;color:inherit;cursor:pointer;font-size:1.2rem;line-height:2.3rem;padding:0 .25rem}.wdg_frame{background-color:#fff;border:1px solid #ccc;border-radius:6px;box-shadow:1px 2px 8px 0 rgba(140,140,160,.6),-2px -3px 8px 0 #fafafa;display:inline-block;height:300px;margin-bottom:10px;position:relative;width:300px;margin-right:15px;text-align:left;overflow:hidden}.wdg_frame.dbl{width:615px}.wdg_frame.tpl{width:930px}.wdg_frame.tny{width:150px}.wdg_frame.tny .wdg_cnt>.ind label{font-size:80%}.wdg_frame .wdg_hd{border-top-left-radius:inherit;border-top-right-radius:inherit;height:1.5rem;position:relative;background-color:rgba(27,67,121,.85);box-shadow:1px 5px 5px #1b4379 inset;color:#fff;text-align:center;font-size:.8rem;font-weight:700;padding:.3rem .2rem 0;cursor:pointer;margin:-1px -1px 0}.wdg_frame .wdg_hd>*{user-select:none}.wdg_frame .wdg_cnt{border-bottom-left-radius:inherit;border-bottom-right-radius:inherit;height:calc(100% - 24px);overflow-x:hidden;overflow-y:auto;padding:0;position:relative}.wdg_frame .wdg_cnt>.ind{text-align:center;padding:1rem;font-size:1.3rem}.wdg_frame .wdg_cnt>.ind.sts_neg>.ind{color:red}.wdg_frame .wdg_cnt>.ind.sts_pos>.ind{color:#56a532}.wdg_frame .wdg_cnt>.ind>.ind{font-size:4rem;margin:3rem 0;text-shadow:.08rem .12rem .35rem rgba(50,50,50,.6);color:#1b4379}.wdg_frame .wdg_cnt .clickable{cursor:pointer}.wdg_frame .wdg_cnt table{border-collapse:collapse;width:100%}.wdg_frame .wdg_cnt table tr:first-child{border:none}.wdg_frame .wdg_cnt table th{background-color:#ccc;padding:2px 4px;font-size:11px;line-height:1.2;border:1px solid transparent;text-align:left}.wdg_frame .wdg_cnt table th:first-child{border-left:none}.wdg_frame .wdg_cnt table th:last-child{border-right:none}.wdg_frame .wdg_cnt table td{padding:2px 4px;font-size:12px;line-height:1.1;border:1px solid #ccc}.wdg_frame .wdg_cnt table td:first-child{border-left:none}.wdg_frame .wdg_cnt table td:last-child{border-right:none}#listframe div.mth,#listframe div.yr{border:1px solid #ccc;background-color:#eee;padding:.4rem .2rem .2rem .35rem;border-radius:.2rem;cursor:pointer;margin:.2rem;position:relative;display:block;white-space:nowrap;min-height:2rem}#listframe div.mth.extra,#listframe div.yr.extra{text-decoration:red underline}#listframe div.mth.ivc+.extra,#listframe div.yr.ivc+.extra{margin-top:.4rem}#listframe div.mth.selected,#listframe div.yr.selected{background-color:#90ee90}#listframe div.mth.selected>div.mfrm,#listframe div.mth.selected>div.wfrm,#listframe div.yr.selected>div.mfrm,#listframe div.yr.selected>div.wfrm{display:block}#listframe div.mth.selected>div.mthdl,#listframe div.mth.selected>div.wthdl,#listframe div.mth.selected>div.ythdl,#listframe div.yr.selected>div.mthdl,#listframe div.yr.selected>div.wthdl,#listframe div.yr.selected>div.ythdl{display:inline-block;cursor:pointer}#listframe div.mth div.mfrm,#listframe div.mth div.wfrm,#listframe div.mth div.yfrm,#listframe div.yr div.mfrm,#listframe div.yr div.wfrm,#listframe div.yr div.yfrm{display:none;position:relative;background-color:#fff;margin:1rem .2rem .2rem 1rem;padding:.15rem;border-radius:.2rem}#listframe div.mth div.mfrm .wk,#listframe div.mth div.wfrm .wk,#listframe div.mth div.yfrm .wk,#listframe div.yr div.mfrm .wk,#listframe div.yr div.wfrm .wk,#listframe div.yr div.yfrm .wk{border:1px solid #ccc;background-color:#eee;padding:.4rem 1.35rem .2rem .35rem;border-radius:.2rem;cursor:pointer;margin:.2rem;position:relative;display:block;white-space:nowrap;min-height:2rem}#listframe div.mth div.mfrm .wk.selected,#listframe div.mth div.wfrm .wk.selected,#listframe div.mth div.yfrm .wk.selected,#listframe div.yr div.mfrm .wk.selected,#listframe div.yr div.wfrm .wk.selected,#listframe div.yr div.yfrm .wk.selected{background-color:#add8e6}#listframe div.mth div.mfrm .wk.selected div.wkdl,#listframe div.mth div.wfrm .wk.selected div.wkdl,#listframe div.mth div.yfrm .wk.selected div.wkdl,#listframe div.yr div.mfrm .wk.selected div.wkdl,#listframe div.yr div.wfrm .wk.selected div.wkdl,#listframe div.yr div.yfrm .wk.selected div.wkdl{display:inline-block;cursor:pointer}#listframe div.mthdl,#listframe div.wkdl,#listframe div.yrdl{height:1.5rem;width:1.5rem;display:none;background-color:#fff;position:absolute;right:.4rem;border:1px solid #ccc;border-radius:.2rem;padding:.1rem;top:.18rem;font-size:1rem;text-align:center}.invfrm table.invtbl,.invfrm>table{border-collapse:separate;border-spacing:0;margin:2rem}.invfrm table.invtbl th,.invfrm>table th{padding:.2rem .35rem;border:1px solid #ccc;text-align:left}.invfrm table.invtbl td.currency,.invfrm table.invtbl td.num,.invfrm table.invtbl th.currency,.invfrm table.invtbl th.num,.invfrm>table td.currency,.invfrm>table td.num,.invfrm>table th.currency,.invfrm>table th.num{text-align:right;white-space:nowrap}.invfrm table.invtbl td.keep,.invfrm table.invtbl th.keep,.invfrm>table td.keep,.invfrm>table th.keep{white-space:nowrap}.invfrm table.invtbl td,.invfrm>table td{padding:.2rem .35rem;border:1px solid #ccc;vertical-align:top;position:relative}.invfrm table.invtbl td.hl,.invfrm>table td.hl{background-color:#ffffe0}.invfrm table.invtbl td input,.invfrm table.invtbl td select,.invfrm>table td input,.invfrm>table td select{display:none}.invfrm table.invtbl td.raux,.invfrm>table td.raux{min-width:5.3rem}.invfrm table.invtbl td>.ttip,.invfrm>table td>.ttip{display:none;background:#fff;padding:.2rem .35rem;padding:inherit;border:1px solid #ccc;box-shadow:1px 1px 3px rgba(50,50,50,.5);min-width:100%;min-height:100%;border-top-color:#ff4500;z-index:5}.invfrm table.invtbl td .ctw p,.invfrm table.invtbl td .ttip p,.invfrm>table td .ctw p,.invfrm>table td .ttip p{margin:0 0 .1rem}.invfrm table.invtbl td:hover,.invfrm>table td:hover{border-top-color:#ff4500!important;border-top-width:2px}.invfrm table.invtbl td:hover>.ttip,.invfrm>table td:hover>.ttip{display:block;position:absolute;top:0;height:auto;width:auto;left:0}.invfrm table.invtbl tr:nth-child(2n+1) td,.invfrm>table tr:nth-child(2n+1) td{background-color:rgba(150,150,150,.2)}.invfrm table.invtbl tr:nth-child(2n+1) td.hl,.invfrm>table tr:nth-child(2n+1) td.hl{background-color:#ffffe0}.invfrm table.invtbl tr.selected td,.invfrm>table tr.selected td{background-color:#add8e6}.invfrm table.invtbl tr.selected td.hl,.invfrm>table tr.selected td.hl{background-color:#ffffe0}.invfrm table.invtbl tr.selected td .ilbtn,.invfrm>table tr.selected td .ilbtn{display:inline-block}.invfrm .ovhd{display:block;font-size:1.5rem;margin:1rem 2rem;font-weight:700;text-decoration:underline;text-decoration-style:double}.invfrm .ovhd>span{display:block}.invfrm .ovhd>span:first-child{text-decoration:underline;text-decoration-style:double}.invfrm .ovhd>span+span{margin-top:.5rem}.invfrm .ovhd>span.note{font-size:1rem;font-weight:400;text-decoration:none;text-decoration-style:none}.invfrm.mdw .ovhd{text-decoration-color:#add8e6}.invfrm.mdm .ovhd{text-decoration-color:#90ee90}.ilbtn{border-radius:.3rem;display:none;padding:.1rem;margin-bottom:0;font-size:1.5rem;letter-spacing:.025rem;font-weight:400;line-height:1.42857143;text-align:center;white-space:nowrap;vertical-align:middle;-ms-touch-action:manipulation;touch-action:manipulation;cursor:pointer;background-color:#fff;background-image:none;border:1px solid #ababab;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-box-shadow:1px 1px 3px rgba(50,50,50,.3);box-shadow:1px 1px 3px rgba(50,50,50,.3);min-width:2.4rem} \ No newline at end of file diff --git a/Fuchs/wwwroot/web/fis.min.js b/Fuchs/wwwroot/web/fis.min.js index d70280b..7999308 100644 --- a/Fuchs/wwwroot/web/fis.min.js +++ b/Fuchs/wwwroot/web/fis.min.js @@ -1,4 +1,4 @@ var t,e,$t={lng:"de-DE",dn:["So","Mo","Di","Mi","Do","Fr","Sa"],mn:["Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember"],ma:["Jan","Feb","Mrz","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez"],datepattern:"(0[1-9]|1[0-9]|2[0-9]|3[01]).(0[1-9]|1[012]).[0-9]{4}",datetimepattern:"(0[1-9]|1[0-9]|2[0-9]|3[01]).(0[1-9]|1[012]).[0-9]{4}\\s([0-5][0-9]):([0-5][0-9])",dateplaceholder:"dd.MM.yyyy",datetimeplaceholder:"dd.MM.yyyy HH:mm",dateformat:"dd.MM.yyyy",datetimeformat:"dd.MM.yyyy HH:mm",f1:"Der Server hat einen Fehler gemeldet: \n",f2:"Bitte versuchen Sie es erneut.",m0:"Diese Internet-Seite benötigt einen html5-kompatiblen Browser.",m0b:"Unterstützt werden bspw: Internet Explorer ab Version 10, Firefox ab Version 31, Chrome ab Version 31, Safari ab Version 7, Opera ab Version 27",m1:"Dieser Datensatz ist momentan von jemand anderem zur Bearbeitung gesperrt.",m2:"Diese Funktion ist zur Zeit nicht verfügbar",t1:"Eingabe erforderlich.",t2:"Eingabe ist nicht erforderlich.",true:"Ja",false:"Nein",alert:"Hinweis",confirm:"Bestätigen",open:"Öffnen","not implemented":"Diese Funktion in zur Zeit noch nicht verfügbar.",l0:"Anmeldung",l1:"Email / Anmeldename",l2:"Email-Adresse / Anmeldename",l3:"Passwort",l4:"Benutzer",l5:"Wird vom System ermittelt...",l6:"Anmelden",l7:"Passwort vergessen?",l7a:'Die "Passwort vergessen"-Funktion läuft in zwei Schritten ab:\n \nIm ersten Schritt wird eine SMS mit einem Code an die hinterlegte Mobilfunk-Nummer versandt.\nIm zweiten Schritt geben Sie bitte diesen Code in das Formular ein und übermitteln es erneut.\n \nIn beiden Schritten wird aus Sicherheitsgründen kein Fehler angezeigt und auch dann ein erfolgreicher Versand bestätigt, wenn die Kombination aus Email-Adresse und Nachname nicht gefunden wurde und/oder der code falsch ist.',l8:"Keinen Account?",l9:"Anmeldenamen der Email-Adresse wurde nicht erkannt.",l10:"Nachname",l11:"Email-Adresse",l12:"Passwort zusenden",l13:"Das Passwort wurde erfolgreich verschickt",l14:"Das Passwort konnte nicht verschickt werden",l15:"Sie sind nicht berechtigt, diese Funktion auszuführen.",l16:"Sie müssen zunächst einen Account angeben.",l17:"Die Kombination aus Anmeldenamen und Passwort konnte nicht bestätigt werden.",l18:"Es gibt ein Problem mit dem Formular.\nEs kann momentan nicht verarbeitet und versendet werden.",name:"Name",submit:"Senden",cancel:"Abbrechen",noop:"Diese Funktion is noch nicht verfügar."};t=self,e=()=>(()=>{var t={d:(e,n)=>{for(var o in n)t.o(n,o)&&!t.o(e,o)&&Object.defineProperty(e,o,{enumerable:!0,get:n[o]})}};t.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(t){if("object"==typeof window)return window}}(),t.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),t.r=t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"t",{value:!0})};var e,n={};t.r(n),t.d(n,{AbortError:()=>r,DefaultHttpClient:()=>D,HttpClient:()=>h,HttpError:()=>o,HttpResponse:()=>d,HttpTransportType:()=>U,HubConnection:()=>O,HubConnectionBuilder:()=>tt,HubConnectionState:()=>j,JsonHubProtocol:()=>K,LogLevel:()=>e,MessageType:()=>N,NullLogger:()=>p,Subject:()=>q,TimeoutError:()=>i,TransferFormat:()=>B,VERSION:()=>f});class o extends Error{constructor(t,e){const n=new.target.prototype;super(`${t}: Status code '${e}'`),this.statusCode=e,this.__proto__=n}}class i extends Error{constructor(t="A timeout occurred."){const e=new.target.prototype;super(t),this.__proto__=e}}class r extends Error{constructor(t="An abort occurred."){const e=new.target.prototype;super(t),this.__proto__=e}}class s extends Error{constructor(t,e){const n=new.target.prototype;super(t),this.transport=e,this.errorType="UnsupportedTransportError",this.__proto__=n}}class a extends Error{constructor(t,e){const n=new.target.prototype;super(t),this.transport=e,this.errorType="DisabledTransportError",this.__proto__=n}}class c extends Error{constructor(t,e){const n=new.target.prototype;super(t),this.transport=e,this.errorType="FailedToStartTransportError",this.__proto__=n}}class l extends Error{constructor(t){const e=new.target.prototype;super(t),this.errorType="FailedToNegotiateWithServerError",this.__proto__=e}}class u extends Error{constructor(t,e){const n=new.target.prototype;super(t),this.innerErrors=e,this.__proto__=n}}class d{constructor(t,e,n){this.statusCode=t,this.statusText=e,this.content=n}}class h{get(t,e){return this.send({...e,method:"GET",url:t})}post(t,e){return this.send({...e,method:"POST",url:t})}delete(t,e){return this.send({...e,method:"DELETE",url:t})}getCookieString(t){return""}}!function(t){t[t.Trace=0]="Trace",t[t.Debug=1]="Debug",t[t.Information=2]="Information",t[t.Warning=3]="Warning",t[t.Error=4]="Error",t[t.Critical=5]="Critical",t[t.None=6]="None"}(e||(e={}));class p{constructor(){}log(t,e){}}p.instance=new p;const f="10.0.0";class m{static isRequired(t,e){if(null==t)throw new Error(`The '${e}' argument is required.`)}static isNotEmpty(t,e){if(!t||t.match(/^\s*$/))throw new Error(`The '${e}' argument should not be empty.`)}static isIn(t,e,n){if(!(t in e))throw new Error(`Unknown ${n} value: ${t}.`)}}class g{static get isBrowser(){return!g.isNode&&"object"==typeof window&&"object"==typeof window.document}static get isWebWorker(){return!g.isNode&&"object"==typeof self&&"importScripts"in self}static get isReactNative(){return!g.isNode&&"object"==typeof window&&void 0===window.document}static get isNode(){return"undefined"!=typeof process&&process.release&&"node"===process.release.name}}function y(t,e){let n="";return b(t)?(n=`Binary data of length ${t.byteLength}`,e&&(n+=`. Content: '${function(t){const e=new Uint8Array(t);let n="";return e.forEach((t=>{n+=`0x${t<16?"0":""}${t.toString(16)} `})),n.substring(0,n.length-1)}(t)}'`)):"string"==typeof t&&(n=`String data of length ${t.length}`,e&&(n+=`. Content: '${t}'`)),n}function b(t){return t&&"undefined"!=typeof ArrayBuffer&&(t instanceof ArrayBuffer||t.constructor&&"ArrayBuffer"===t.constructor.name)}async function v(t,n,o,i,r,s){const a={},[c,l]=C();a[c]=l,t.log(e.Trace,`(${n} transport) sending data. ${y(r,s.logMessageContent)}.`);const u=b(r)?"arraybuffer":"text",d=await o.post(i,{content:r,headers:{...a,...s.headers},responseType:u,timeout:s.timeout,withCredentials:s.withCredentials});t.log(e.Trace,`(${n} transport) request complete. Response status: ${d.statusCode}.`)}class ${constructor(t,e){this.i=t,this.h=e}dispose(){const t=this.i.observers.indexOf(this.h);t>-1&&this.i.observers.splice(t,1),0===this.i.observers.length&&this.i.cancelCallback&&this.i.cancelCallback().catch((t=>{}))}}class w{constructor(t){this.l=t,this.out=console}log(t,n){if(t>=this.l){const o=`[${(new Date).toISOString()}] ${e[t]}: ${n}`;switch(t){case e.Critical:case e.Error:this.out.error(o);break;case e.Warning:this.out.warn(o);break;case e.Information:this.out.info(o);break;default:this.out.log(o)}}}}function C(){let t="X-SignalR-User-Agent";return g.isNode&&(t="User-Agent"),[t,S(f,x(),g.isNode?"NodeJS":"Browser",T())]}function S(t,e,n,o){let i="Microsoft SignalR/";const r=t.split(".");return i+=`${r[0]}.${r[1]}`,i+=` (${t}; `,i+=e&&""!==e?`${e}; `:"Unknown OS; ",i+=`${n}`,i+=o?`; ${o}`:"; Unknown Runtime Version",i+=")",i}function x(){if(!g.isNode)return"";switch(process.platform){case"win32":return"Windows NT";case"darwin":return"macOS";case"linux":return"Linux";default:return process.platform}}function T(){if(g.isNode)return process.versions.node}function _(t){return t.stack?t.stack:t.message?t.message:`${t}`}class E extends h{constructor(e){if(super(),this.u=e,"undefined"==typeof fetch||g.isNode){const t=require;this.p=new(t("tough-cookie").CookieJar),"undefined"==typeof fetch?this.m=t("node-fetch"):this.m=fetch,this.m=t("fetch-cookie")(this.m,this.p)}else this.m=fetch.bind(function(){if("undefined"!=typeof globalThis)return globalThis;if("undefined"!=typeof self)return self;if("undefined"!=typeof window)return window;if(void 0!==t.g)return t.g;throw new Error("could not find global")}());if("undefined"==typeof AbortController){const t=require;this.v=t("abort-controller")}else this.v=AbortController}async send(t){if(t.abortSignal&&t.abortSignal.aborted)throw new r;if(!t.method)throw new Error("No method defined.");if(!t.url)throw new Error("No url defined.");const n=new this.v;let s;t.abortSignal&&(t.abortSignal.onabort=()=>{n.abort(),s=new r});let a,c=null;if(t.timeout){const o=t.timeout;c=setTimeout((()=>{n.abort(),this.u.log(e.Warning,"Timeout from HTTP request."),s=new i}),o)}""===t.content&&(t.content=void 0),t.content&&(t.headers=t.headers||{},b(t.content)?t.headers["Content-Type"]="application/octet-stream":t.headers["Content-Type"]="text/plain;charset=UTF-8");try{a=await this.m(t.url,{body:t.content,cache:"no-cache",credentials:!0===t.withCredentials?"include":"same-origin",headers:{"X-Requested-With":"XMLHttpRequest",...t.headers},method:t.method,mode:"cors",redirect:"follow",signal:n.signal})}catch(t){if(s)throw s;throw this.u.log(e.Warning,`Error from HTTP request. ${t}.`),t}finally{c&&clearTimeout(c),t.abortSignal&&(t.abortSignal.onabort=null)}if(!a.ok){const t=await I(a,"text");throw new o(t||a.statusText,a.status)}const l=I(a,t.responseType),u=await l;return new d(a.status,a.statusText,u)}getCookieString(t){let e="";return g.isNode&&this.p&&this.p.getCookies(t,((t,n)=>e=n.join("; "))),e}}function I(t,e){let n;switch(e){case"arraybuffer":n=t.arrayBuffer();break;case"text":default:n=t.text();break;case"blob":case"document":case"json":throw new Error(`${e} is not supported.`)}return n}class k extends h{constructor(t){super(),this.u=t}send(t){return t.abortSignal&&t.abortSignal.aborted?Promise.reject(new r):t.method?t.url?new Promise(((n,s)=>{const a=new XMLHttpRequest;a.open(t.method,t.url,!0),a.withCredentials=void 0===t.withCredentials||t.withCredentials,a.setRequestHeader("X-Requested-With","XMLHttpRequest"),""===t.content&&(t.content=void 0),t.content&&(b(t.content)?a.setRequestHeader("Content-Type","application/octet-stream"):a.setRequestHeader("Content-Type","text/plain;charset=UTF-8"));const c=t.headers;c&&Object.keys(c).forEach((t=>{a.setRequestHeader(t,c[t])})),t.responseType&&(a.responseType=t.responseType),t.abortSignal&&(t.abortSignal.onabort=()=>{a.abort(),s(new r)}),t.timeout&&(a.timeout=t.timeout),a.onload=()=>{t.abortSignal&&(t.abortSignal.onabort=null),a.status>=200&&a.status<300?n(new d(a.status,a.statusText,a.response||a.responseText)):s(new o(a.response||a.responseText||a.statusText,a.status))},a.onerror=()=>{this.u.log(e.Warning,`Error from HTTP request. ${a.status}: ${a.statusText}.`),s(new o(a.statusText,a.status))},a.ontimeout=()=>{this.u.log(e.Warning,"Timeout from HTTP request."),s(new i)},a.send(t.content)})):Promise.reject(new Error("No url defined.")):Promise.reject(new Error("No method defined."))}}class D extends h{constructor(t){if(super(),"undefined"!=typeof fetch||g.isNode)this.$=new E(t);else{if("undefined"==typeof XMLHttpRequest)throw new Error("No usable HttpClient found.");this.$=new k(t)}}send(t){return t.abortSignal&&t.abortSignal.aborted?Promise.reject(new r):t.method?t.url?this.$.send(t):Promise.reject(new Error("No url defined.")):Promise.reject(new Error("No method defined."))}getCookieString(t){return this.$.getCookieString(t)}}class A{static write(t){return`${t}${A.RecordSeparator}`}static parse(t){if(t[t.length-1]!==A.RecordSeparator)throw new Error("Message is incomplete.");const e=t.split(A.RecordSeparator);return e.pop(),e}}A.RecordSeparatorCode=30,A.RecordSeparator=String.fromCharCode(A.RecordSeparatorCode);class P{writeHandshakeRequest(t){return A.write(JSON.stringify(t))}parseHandshakeResponse(t){let e,n;if(b(t)){const o=new Uint8Array(t),i=o.indexOf(A.RecordSeparatorCode);if(-1===i)throw new Error("Message is incomplete.");const r=i+1;e=String.fromCharCode.apply(null,Array.prototype.slice.call(o.slice(0,r))),n=o.byteLength>r?o.slice(r).buffer:null}else{const o=t,i=o.indexOf(A.RecordSeparator);if(-1===i)throw new Error("Message is incomplete.");const r=i+1;e=o.substring(0,r),n=o.length>r?o.substring(r):null}const o=A.parse(e),i=JSON.parse(o[0]);if(i.type)throw new Error("Expected a handshake response from the server.");return[n,i]}}var N,j;!function(t){t[t.Invocation=1]="Invocation",t[t.StreamItem=2]="StreamItem",t[t.Completion=3]="Completion",t[t.StreamInvocation=4]="StreamInvocation",t[t.CancelInvocation=5]="CancelInvocation",t[t.Ping=6]="Ping",t[t.Close=7]="Close",t[t.Ack=8]="Ack",t[t.Sequence=9]="Sequence"}(N||(N={}));class q{constructor(){this.observers=[]}next(t){for(const e of this.observers)e.next(t)}error(t){for(const e of this.observers)e.error&&e.error(t)}complete(){for(const t of this.observers)t.complete&&t.complete()}subscribe(t){return this.observers.push(t),new $(this,t)}}class M{constructor(t,e,n){this.C=1e5,this.S=[],this.k=0,this.P=!1,this.T=1,this.I=0,this._=0,this.H=!1,this.D=t,this.R=e,this.C=n}async A(t){const e=this.D.writeMessage(t);let n=Promise.resolve();if(this.U(t)){this.k++;let t=()=>{},o=()=>{};b(e)?this._+=e.byteLength:this._+=e.length,this._>=this.C&&(n=new Promise(((e,n)=>{t=e,o=n}))),this.S.push(new R(e,this.k,t,o))}try{this.H||await this.R.send(e)}catch{this.L()}await n}N(t){let e=-1;for(let n=0;nthis.T?this.R.stop(new Error("Sequence ID greater than amount of messages we've received.")):this.T=t.sequenceId}L(){this.H=!0,this.P=!0}async B(){const t=0!==this.S.length?this.S[0].q:this.k+1;await this.R.send(this.D.writeMessage({type:N.Sequence,sequenceId:t}));const e=this.S;for(const t of e)await this.R.send(t.M);this.H=!1}X(t){null!=t||(t=new Error("Unable to reconnect to server."));for(const e of this.S)e.J(t)}U(t){switch(t.type){case N.Invocation:case N.StreamItem:case N.Completion:case N.StreamInvocation:case N.CancelInvocation:return!0;case N.Close:case N.Sequence:case N.Ping:case N.Ack:return!1}}O(){void 0===this.V&&(this.V=setTimeout((async()=>{try{this.H||await this.R.send(this.D.writeMessage({type:N.Ack,sequenceId:this.I}))}catch{}clearTimeout(this.V),this.V=void 0}),1e3))}}class R{constructor(t,e,n,o){this.M=t,this.q=e,this.j=n,this.J=o}}!function(t){t.Disconnected="Disconnected",t.Connecting="Connecting",t.Connected="Connected",t.Disconnecting="Disconnecting",t.Reconnecting="Reconnecting"}(j||(j={}));class O{static create(t,e,n,o,i,r,s){return new O(t,e,n,o,i,r,s)}constructor(t,n,o,i,r,s,a){this.K=0,this.G=()=>{this.u.log(e.Warning,"The page is being frozen, this will likely lead to the connection being closed and messages being lost. For more information see the docs at https://learn.microsoft.com/aspnet/core/signalr/javascript-client#bsleep")},m.isRequired(t,"connection"),m.isRequired(n,"logger"),m.isRequired(o,"protocol"),this.serverTimeoutInMilliseconds=null!=r?r:3e4,this.keepAliveIntervalInMilliseconds=null!=s?s:15e3,this.Y=null!=a?a:1e5,this.u=n,this.D=o,this.connection=t,this.Z=i,this.tt=new P,this.connection.onreceive=t=>this.et(t),this.connection.onclose=t=>this.st(t),this.it={},this.nt={},this.rt=[],this.ot=[],this.ht=[],this.ct=0,this.lt=!1,this.ut=j.Disconnected,this.dt=!1,this.ft=this.D.writeMessage({type:N.Ping})}get state(){return this.ut}get connectionId(){return this.connection&&this.connection.connectionId||null}get baseUrl(){return this.connection.baseUrl||""}set baseUrl(t){if(this.ut!==j.Disconnected&&this.ut!==j.Reconnecting)throw new Error("The HubConnection must be in the Disconnected or Reconnecting state to change the url.");if(!t)throw new Error("The HubConnection url must be a valid url.");this.connection.baseUrl=t}start(){return this.wt=this.gt(),this.wt}async gt(){if(this.ut!==j.Disconnected)return Promise.reject(new Error("Cannot start a HubConnection that is not in the 'Disconnected' state."));this.ut=j.Connecting,this.u.log(e.Debug,"Starting HubConnection.");try{await this.yt(),g.isBrowser&&window.document.addEventListener("freeze",this.G),this.ut=j.Connected,this.dt=!0,this.u.log(e.Debug,"HubConnection connected successfully.")}catch(t){return this.ut=j.Disconnected,this.u.log(e.Debug,`HubConnection failed to start successfully because of error '${t}'.`),Promise.reject(t)}}async yt(){this.vt=void 0,this.lt=!1;const t=new Promise(((t,e)=>{this.bt=t,this.Et=e}));await this.connection.start(this.D.transferFormat);try{let n=this.D.version;this.connection.features.reconnect||(n=1);const o={protocol:this.D.name,version:n};if(this.u.log(e.Debug,"Sending handshake request."),await this.$t(this.tt.writeHandshakeRequest(o)),this.u.log(e.Information,`Using HubProtocol '${this.D.name}'.`),this.Ct(),this.St(),this.kt(),await t,this.vt)throw this.vt;!!this.connection.features.reconnect&&(this.Pt=new M(this.D,this.connection,this.Y),this.connection.features.disconnected=this.Pt.L.bind(this.Pt),this.connection.features.resend=()=>{if(this.Pt)return this.Pt.B()}),this.connection.features.inherentKeepAlive||await this.$t(this.ft)}catch(t){throw this.u.log(e.Debug,`Hub handshake failed with error '${t}' during start(). Stopping HubConnection.`),this.Ct(),this.Tt(),await this.connection.stop(t),t}}async stop(){const t=this.wt;this.connection.features.reconnect=!1,this.It=this._t(),await this.It;try{await t}catch(t){}}_t(t){if(this.ut===j.Disconnected)return this.u.log(e.Debug,`Call to HubConnection.stop(${t}) ignored because it is already in the disconnected state.`),Promise.resolve();if(this.ut===j.Disconnecting)return this.u.log(e.Debug,`Call to HttpConnection.stop(${t}) ignored because the connection is already in the disconnecting state.`),this.It;const n=this.ut;return this.ut=j.Disconnecting,this.u.log(e.Debug,"Stopping HubConnection."),this.Ht?(this.u.log(e.Debug,"Connection stopped during reconnect delay. Done reconnecting."),clearTimeout(this.Ht),this.Ht=void 0,this.Dt(),Promise.resolve()):(n===j.Connected&&this.Rt(),this.Ct(),this.Tt(),this.vt=t||new r("The connection was stopped before the hub handshake could complete."),this.connection.stop(t))}async Rt(){try{await this.xt(this.At())}catch{}}stream(t,...e){const[n,o]=this.Ut(e),i=this.Lt(t,e,o);let r;const s=new q;return s.cancelCallback=()=>{const t=this.Nt(i.invocationId);return delete this.it[i.invocationId],r.then((()=>this.xt(t)))},this.it[i.invocationId]=(t,e)=>{e?s.error(e):t&&(t.type===N.Completion?t.error?s.error(new Error(t.error)):s.complete():s.next(t.item))},r=this.xt(i).catch((t=>{s.error(t),delete this.it[i.invocationId]})),this.qt(n,r),s}$t(t){return this.kt(),this.connection.send(t)}xt(t){return this.Pt?this.Pt.A(t):this.$t(this.D.writeMessage(t))}send(t,...e){const[n,o]=this.Ut(e),i=this.xt(this.Mt(t,e,!0,o));return this.qt(n,i),i}invoke(t,...e){const[n,o]=this.Ut(e),i=this.Mt(t,e,!1,o);return new Promise(((t,e)=>{this.it[i.invocationId]=(n,o)=>{o?e(o):n&&(n.type===N.Completion?n.error?e(new Error(n.error)):t(n.result):e(new Error(`Unexpected message type: ${n.type}`)))};const o=this.xt(i).catch((t=>{e(t),delete this.it[i.invocationId]}));this.qt(n,o)}))}on(t,e){t&&e&&(t=t.toLowerCase(),this.nt[t]||(this.nt[t]=[]),-1===this.nt[t].indexOf(e)&&this.nt[t].push(e))}off(t,e){if(!t)return;t=t.toLowerCase();const n=this.nt[t];if(n)if(e){const o=n.indexOf(e);-1!==o&&(n.splice(o,1),0===n.length&&delete this.nt[t])}else delete this.nt[t]}onclose(t){t&&this.rt.push(t)}onreconnecting(t){t&&this.ot.push(t)}onreconnected(t){t&&this.ht.push(t)}et(t){if(this.Ct(),this.lt||(t=this.jt(t),this.lt=!0),t){const n=this.D.parseMessages(t,this.u);for(const o of n)if(!this.Pt||this.Pt.W(o))switch(o.type){case N.Invocation:this.Wt(o).catch((t=>{this.u.log(e.Error,`Invoke client method threw error: ${_(t)}`)}));break;case N.StreamItem:case N.Completion:{const n=this.it[o.invocationId];if(n){o.type===N.Completion&&delete this.it[o.invocationId];try{n(o)}catch(t){this.u.log(e.Error,`Stream callback threw error: ${_(t)}`)}}break}case N.Ping:break;case N.Close:{this.u.log(e.Information,"Close message received from server.");const t=o.error?new Error("Server returned an error on close: "+o.error):void 0;!0===o.allowReconnect?this.connection.stop(t):this.It=this._t(t);break}case N.Ack:this.Pt&&this.Pt.N(o);break;case N.Sequence:this.Pt&&this.Pt.F(o);break;default:this.u.log(e.Warning,`Invalid message type: ${o.type}.`)}}this.St()}jt(t){let n,o;try{[o,n]=this.tt.parseHandshakeResponse(t)}catch(t){const n="Error parsing handshake response: "+t;this.u.log(e.Error,n);const o=new Error(n);throw this.Et(o),o}if(n.error){const t="Server returned handshake error: "+n.error;this.u.log(e.Error,t);const o=new Error(t);throw this.Et(o),o}return this.u.log(e.Debug,"Server handshake complete."),this.bt(),o}kt(){this.connection.features.inherentKeepAlive||(this.K=(new Date).getTime()+this.keepAliveIntervalInMilliseconds,this.Tt())}St(){if(!this.connection.features||!this.connection.features.inherentKeepAlive){this.Ot=setTimeout((()=>this.serverTimeout()),this.serverTimeoutInMilliseconds);let t=this.K-(new Date).getTime();if(t<0)return void(this.ut===j.Connected&&this.Ft());void 0===this.Bt&&(t<0&&(t=0),this.Bt=setTimeout((async()=>{this.ut===j.Connected&&await this.Ft()}),t))}}serverTimeout(){this.connection.stop(new Error("Server timeout elapsed without receiving a message from the server."))}async Wt(t){const n=t.target.toLowerCase(),o=this.nt[n];if(!o)return this.u.log(e.Warning,`No client method with the name '${n}' found.`),void(t.invocationId&&(this.u.log(e.Warning,`No result given for '${n}' method and invocation ID '${t.invocationId}'.`),await this.xt(this.Xt(t.invocationId,"Client didn't provide a result.",null))));const i=o.slice(),r=!!t.invocationId;let s,a,c;for(const o of i)try{const i=s;s=await o.apply(this,t.arguments),r&&s&&i&&(this.u.log(e.Error,`Multiple results provided for '${n}'. Sending error to server.`),c=this.Xt(t.invocationId,"Client provided multiple results.",null)),a=void 0}catch(t){a=t,this.u.log(e.Error,`A callback for the method '${n}' threw error '${t}'.`)}c?await this.xt(c):r?(a?c=this.Xt(t.invocationId,`${a}`,null):void 0!==s?c=this.Xt(t.invocationId,null,s):(this.u.log(e.Warning,`No result given for '${n}' method and invocation ID '${t.invocationId}'.`),c=this.Xt(t.invocationId,"Client didn't provide a result.",null)),await this.xt(c)):s&&this.u.log(e.Error,`Result given for '${n}' method but server is not expecting a result.`)}st(t){this.u.log(e.Debug,`HubConnection.connectionClosed(${t}) called while in state ${this.ut}.`),this.vt=this.vt||t||new r("The underlying connection was closed before the hub handshake could complete."),this.bt&&this.bt(),this.Jt(t||new Error("Invocation canceled due to the underlying connection being closed.")),this.Ct(),this.Tt(),this.ut===j.Disconnecting?this.Dt(t):this.ut===j.Connected&&this.Z?this.zt(t):this.ut===j.Connected&&this.Dt(t)}Dt(t){if(this.dt){this.ut=j.Disconnected,this.dt=!1,this.Pt&&(this.Pt.X(null!=t?t:new Error("Connection closed.")),this.Pt=void 0),g.isBrowser&&window.document.removeEventListener("freeze",this.G);try{this.rt.forEach((e=>e.apply(this,[t])))}catch(n){this.u.log(e.Error,`An onclose callback called with error '${t}' threw error '${n}'.`)}}}async zt(t){const n=Date.now();let o=0,i=void 0!==t?t:new Error("Attempting to reconnect due to a unknown error."),r=this.Vt(o,0,i);if(null===r)return this.u.log(e.Debug,"Connection not reconnecting because the IRetryPolicy returned null on the first reconnect attempt."),void this.Dt(t);if(this.ut=j.Reconnecting,t?this.u.log(e.Information,`Connection reconnecting because of error '${t}'.`):this.u.log(e.Information,"Connection reconnecting."),0!==this.ot.length){try{this.ot.forEach((e=>e.apply(this,[t])))}catch(n){this.u.log(e.Error,`An onreconnecting callback called with error '${t}' threw error '${n}'.`)}if(this.ut!==j.Reconnecting)return void this.u.log(e.Debug,"Connection left the reconnecting state in onreconnecting callback. Done reconnecting.")}for(;null!==r;){if(this.u.log(e.Information,`Reconnect attempt number ${o+1} will start in ${r} ms.`),await new Promise((t=>{this.Ht=setTimeout(t,r)})),this.Ht=void 0,this.ut!==j.Reconnecting)return void this.u.log(e.Debug,"Connection left the reconnecting state during reconnect delay. Done reconnecting.");try{if(await this.yt(),this.ut=j.Connected,this.u.log(e.Information,"HubConnection reconnected successfully."),0!==this.ht.length)try{this.ht.forEach((t=>t.apply(this,[this.connection.connectionId])))}catch(t){this.u.log(e.Error,`An onreconnected callback called with connectionId '${this.connection.connectionId}; threw error '${t}'.`)}return}catch(t){if(this.u.log(e.Information,`Reconnect attempt failed because of error '${t}'.`),this.ut!==j.Reconnecting)return this.u.log(e.Debug,`Connection moved to the '${this.ut}' from the reconnecting state during reconnect attempt. Done reconnecting.`),void(this.ut===j.Disconnecting&&this.Dt());o++,i=t instanceof Error?t:new Error(t.toString()),r=this.Vt(o,Date.now()-n,i)}}this.u.log(e.Information,`Reconnect retries have been exhausted after ${Date.now()-n} ms and ${o} failed attempts. Connection disconnecting.`),this.Dt()}Vt(t,n,o){try{return this.Z.nextRetryDelayInMilliseconds({elapsedMilliseconds:n,previousRetryCount:t,retryReason:o})}catch(o){return this.u.log(e.Error,`IRetryPolicy.nextRetryDelayInMilliseconds(${t}, ${n}) threw error '${o}'.`),null}}Jt(t){const n=this.it;this.it={},Object.keys(n).forEach((o=>{const i=n[o];try{i(null,t)}catch(n){this.u.log(e.Error,`Stream 'error' callback called with '${t}' threw error: ${_(n)}`)}}))}Tt(){this.Bt&&(clearTimeout(this.Bt),this.Bt=void 0)}Ct(){this.Ot&&clearTimeout(this.Ot)}Mt(t,e,n,o){if(n)return 0!==o.length?{target:t,arguments:e,streamIds:o,type:N.Invocation}:{target:t,arguments:e,type:N.Invocation};{const n=this.ct;return this.ct++,0!==o.length?{target:t,arguments:e,invocationId:n.toString(),streamIds:o,type:N.Invocation}:{target:t,arguments:e,invocationId:n.toString(),type:N.Invocation}}}qt(t,e){if(0!==t.length){e||(e=Promise.resolve());for(const n in t)t[n].subscribe({complete:()=>{e=e.then((()=>this.xt(this.Xt(n))))},error:t=>{let o;o=t instanceof Error?t.message:t&&t.toString?t.toString():"Unknown error",e=e.then((()=>this.xt(this.Xt(n,o))))},next:t=>{e=e.then((()=>this.xt(this.Kt(n,t))))}})}}Ut(t){const e=[],n=[];for(let o=0;o0)&&(e=!1,this.te=await this.Zt()),this.ee(t);const n=await this.Yt.send(t);return e&&401===n.statusCode&&this.Zt?(this.te=await this.Zt(),this.ee(t),await this.Yt.send(t)):n}ee(t){t.headers||(t.headers={}),this.te?t.headers[L.Authorization]=`Bearer ${this.te}`:this.Zt&&t.headers[L.Authorization]&&delete t.headers[L.Authorization]}getCookieString(t){return this.Yt.getCookieString(t)}}var U,B;!function(t){t[t.None=0]="None",t[t.WebSockets=1]="WebSockets",t[t.ServerSentEvents=2]="ServerSentEvents",t[t.LongPolling=4]="LongPolling"}(U||(U={})),function(t){t[t.Text=1]="Text",t[t.Binary=2]="Binary"}(B||(B={}));class W{constructor(){this.se=!1,this.onabort=null}abort(){this.se||(this.se=!0,this.onabort&&this.onabort())}get signal(){return this}get aborted(){return this.se}}class X{get pollAborted(){return this.ie.aborted}constructor(t,e,n){this.$=t,this.u=e,this.ie=new W,this.ne=n,this.re=!1,this.onreceive=null,this.onclose=null}async connect(t,n){if(m.isRequired(t,"url"),m.isRequired(n,"transferFormat"),m.isIn(n,B,"transferFormat"),this.oe=t,this.u.log(e.Trace,"(LongPolling transport) Connecting."),n===B.Binary&&"undefined"!=typeof XMLHttpRequest&&"string"!=typeof(new XMLHttpRequest).responseType)throw new Error("Binary protocols over XmlHttpRequest not implementing advanced features are not supported.");const[i,r]=C(),s={[i]:r,...this.ne.headers},a={abortSignal:this.ie.signal,headers:s,timeout:1e5,withCredentials:this.ne.withCredentials};n===B.Binary&&(a.responseType="arraybuffer");const c=`${t}&_=${Date.now()}`;this.u.log(e.Trace,`(LongPolling transport) polling: ${c}.`);const l=await this.$.get(c,a);200!==l.statusCode?(this.u.log(e.Error,`(LongPolling transport) Unexpected response code: ${l.statusCode}.`),this.he=new o(l.statusText||"",l.statusCode),this.re=!1):this.re=!0,this.ce=this.ae(this.oe,a)}async ae(t,n){try{for(;this.re;)try{const i=`${t}&_=${Date.now()}`;this.u.log(e.Trace,`(LongPolling transport) polling: ${i}.`);const r=await this.$.get(i,n);204===r.statusCode?(this.u.log(e.Information,"(LongPolling transport) Poll terminated by server."),this.re=!1):200!==r.statusCode?(this.u.log(e.Error,`(LongPolling transport) Unexpected response code: ${r.statusCode}.`),this.he=new o(r.statusText||"",r.statusCode),this.re=!1):r.content?(this.u.log(e.Trace,`(LongPolling transport) data received. ${y(r.content,this.ne.logMessageContent)}.`),this.onreceive&&this.onreceive(r.content)):this.u.log(e.Trace,"(LongPolling transport) Poll timed out, reissuing.")}catch(t){this.re?t instanceof i?this.u.log(e.Trace,"(LongPolling transport) Poll timed out, reissuing."):(this.he=t,this.re=!1):this.u.log(e.Trace,`(LongPolling transport) Poll errored after shutdown: ${t.message}`)}}finally{this.u.log(e.Trace,"(LongPolling transport) Polling complete."),this.pollAborted||this.le()}}async send(t){return this.re?v(this.u,"LongPolling",this.$,this.oe,t,this.ne):Promise.reject(new Error("Cannot send until the transport is connected"))}async stop(){this.u.log(e.Trace,"(LongPolling transport) Stopping polling."),this.re=!1,this.ie.abort();try{await this.ce,this.u.log(e.Trace,`(LongPolling transport) sending DELETE request to ${this.oe}.`);const t={},[n,i]=C();t[n]=i;const r={headers:{...t,...this.ne.headers},timeout:this.ne.timeout,withCredentials:this.ne.withCredentials};let s;try{await this.$.delete(this.oe,r)}catch(t){s=t}s?s instanceof o&&(404===s.statusCode?this.u.log(e.Trace,"(LongPolling transport) A 404 response was returned from sending a DELETE request."):this.u.log(e.Trace,`(LongPolling transport) Error sending a DELETE request: ${s}`)):this.u.log(e.Trace,"(LongPolling transport) DELETE request accepted.")}finally{this.u.log(e.Trace,"(LongPolling transport) Stop finished."),this.le()}}le(){if(this.onclose){let t="(LongPolling transport) Firing onclose event.";this.he&&(t+=" Error: "+this.he),this.u.log(e.Trace,t),this.onclose(this.he)}}}class V{constructor(t,e,n,o){this.$=t,this.te=e,this.u=n,this.ne=o,this.onreceive=null,this.onclose=null}async connect(t,n){return m.isRequired(t,"url"),m.isRequired(n,"transferFormat"),m.isIn(n,B,"transferFormat"),this.u.log(e.Trace,"(SSE transport) Connecting."),this.oe=t,this.te&&(t+=(t.indexOf("?")<0?"?":"&")+`access_token=${encodeURIComponent(this.te)}`),new Promise(((o,i)=>{let r,s=!1;if(n===B.Text){if(g.isBrowser||g.isWebWorker)r=new this.ne.EventSource(t,{withCredentials:this.ne.withCredentials});else{const e=this.$.getCookieString(t),n={};n.Cookie=e;const[o,i]=C();n[o]=i,r=new this.ne.EventSource(t,{withCredentials:this.ne.withCredentials,headers:{...n,...this.ne.headers}})}try{r.onmessage=t=>{if(this.onreceive)try{this.u.log(e.Trace,`(SSE transport) data received. ${y(t.data,this.ne.logMessageContent)}.`),this.onreceive(t.data)}catch(t){return void this.ue(t)}},r.onerror=t=>{s?this.ue():i(new Error("EventSource failed to connect. The connection could not be found on the server, either the connection ID is not present on the server, or a proxy is refusing/buffering the connection. If you have multiple servers check that sticky sessions are enabled."))},r.onopen=()=>{this.u.log(e.Information,`SSE connected to ${this.oe}`),this.de=r,s=!0,o()}}catch(t){return void i(t)}}else i(new Error("The Server-Sent Events transport only supports the 'Text' transfer format"))}))}async send(t){return this.de?v(this.u,"SSE",this.$,this.oe,t,this.ne):Promise.reject(new Error("Cannot send until the transport is connected"))}stop(){return this.ue(),Promise.resolve()}ue(t){this.de&&(this.de.close(),this.de=void 0,this.onclose&&this.onclose(t))}}class Z{constructor(t,e,n,o,i,r){this.u=n,this.Zt=e,this.fe=o,this.pe=i,this.$=t,this.onreceive=null,this.onclose=null,this.we=r}async connect(t,n){let o;return m.isRequired(t,"url"),m.isRequired(n,"transferFormat"),m.isIn(n,B,"transferFormat"),this.u.log(e.Trace,"(WebSockets transport) Connecting."),this.Zt&&(o=await this.Zt()),new Promise(((i,r)=>{let s;t=t.replace(/^http/,"ws");const a=this.$.getCookieString(t);let c=!1;if(g.isNode||g.isReactNative){const e={},[n,i]=C();e[n]=i,o&&(e[L.Authorization]=`Bearer ${o}`),a&&(e[L.Cookie]=a),s=new this.pe(t,void 0,{headers:{...e,...this.we}})}else o&&(t+=(t.indexOf("?")<0?"?":"&")+`access_token=${encodeURIComponent(o)}`);s||(s=new this.pe(t)),n===B.Binary&&(s.binaryType="arraybuffer"),s.onopen=n=>{this.u.log(e.Information,`WebSocket connected to ${t}.`),this.ge=s,c=!0,i()},s.onerror=t=>{let n=null;n="undefined"!=typeof ErrorEvent&&t instanceof ErrorEvent?t.error:"There was an error with the transport",this.u.log(e.Information,`(WebSockets transport) ${n}.`)},s.onmessage=t=>{if(this.u.log(e.Trace,`(WebSockets transport) data received. ${y(t.data,this.fe)}.`),this.onreceive)try{this.onreceive(t.data)}catch(t){return void this.ue(t)}},s.onclose=t=>{if(c)this.ue(t);else{let e=null;e="undefined"!=typeof ErrorEvent&&t instanceof ErrorEvent?t.error:"WebSocket failed to connect. The connection could not be found on the server, either the endpoint may not be a SignalR endpoint, the connection ID is not present on the server, or there is a proxy blocking WebSockets. If you have multiple servers check that sticky sessions are enabled.",r(new Error(e))}}}))}send(t){return this.ge&&this.ge.readyState===this.pe.OPEN?(this.u.log(e.Trace,`(WebSockets transport) sending data. ${y(t,this.fe)}.`),this.ge.send(t),Promise.resolve()):Promise.reject("WebSocket is not in the OPEN state")}stop(){return this.ge&&this.ue(void 0),Promise.resolve()}ue(t){this.ge&&(this.ge.onclose=()=>{},this.ge.onmessage=()=>{},this.ge.onerror=()=>{},this.ge.close(),this.ge=void 0),this.u.log(e.Trace,"(WebSockets transport) socket closed."),this.onclose&&(!this.me(t)||!1!==t.wasClean&&1e3===t.code?t instanceof Error?this.onclose(t):this.onclose():this.onclose(new Error(`WebSocket closed with status code: ${t.code} (${t.reason||"no reason given"}).`)))}me(t){return t&&"boolean"==typeof t.wasClean&&"number"==typeof t.code}}class J{constructor(t,n={}){var o;if(this.ye=()=>{},this.features={},this.ve=1,m.isRequired(t,"url"),this.u=void 0===(o=n.logger)?new w(e.Information):null===o?p.instance:void 0!==o.log?o:new w(o),this.baseUrl=this.be(t),(n=n||{}).logMessageContent=void 0!==n.logMessageContent&&n.logMessageContent,"boolean"!=typeof n.withCredentials&&void 0!==n.withCredentials)throw new Error("withCredentials option was not a 'boolean' or 'undefined' value");n.withCredentials=void 0===n.withCredentials||n.withCredentials,n.timeout=void 0===n.timeout?1e5:n.timeout;let i=null,r=null;if(g.isNode){const t=require;i=t("ws"),r=t("eventsource")}g.isNode||"undefined"==typeof WebSocket||n.WebSocket?g.isNode&&!n.WebSocket&&i&&(n.WebSocket=i):n.WebSocket=WebSocket,g.isNode||"undefined"==typeof EventSource||n.EventSource?g.isNode&&!n.EventSource&&void 0!==r&&(n.EventSource=r):n.EventSource=EventSource,this.$=new F(n.httpClient||new D(this.u),n.accessTokenFactory),this.ut="Disconnected",this.dt=!1,this.ne=n,this.onreceive=null,this.onclose=null}async start(t){if(t=t||B.Binary,m.isIn(t,B,"transferFormat"),this.u.log(e.Debug,`Starting connection with transfer format '${B[t]}'.`),"Disconnected"!==this.ut)return Promise.reject(new Error("Cannot start an HttpConnection that is not in the 'Disconnected' state."));if(this.ut="Connecting",this.Ee=this.yt(t),await this.Ee,"Disconnecting"===this.ut){const t="Failed to start the HttpConnection before stop() was called.";return this.u.log(e.Error,t),await this.It,Promise.reject(new r(t))}if("Connected"!==this.ut){const t="HttpConnection.startInternal completed gracefully but didn't enter the connection into the connected state!";return this.u.log(e.Error,t),Promise.reject(new r(t))}this.dt=!0}send(t){return"Connected"!==this.ut?Promise.reject(new Error("Cannot send data if the connection is not in the 'Connected' State.")):(this.$e||(this.$e=new Y(this.transport)),this.$e.send(t))}async stop(t){return"Disconnected"===this.ut?(this.u.log(e.Debug,`Call to HttpConnection.stop(${t}) ignored because the connection is already in the disconnected state.`),Promise.resolve()):"Disconnecting"===this.ut?(this.u.log(e.Debug,`Call to HttpConnection.stop(${t}) ignored because the connection is already in the disconnecting state.`),this.It):(this.ut="Disconnecting",this.It=new Promise((t=>{this.ye=t})),await this._t(t),void await this.It)}async _t(t){this.Ce=t;try{await this.Ee}catch(t){}if(this.transport){try{await this.transport.stop()}catch(t){this.u.log(e.Error,`HttpConnection.transport.stop() threw error '${t}'.`),this.Se()}this.transport=void 0}else this.u.log(e.Debug,"HttpConnection.transport is undefined in HttpConnection.stop() because start() failed.")}async yt(t){let n=this.baseUrl;this.Zt=this.ne.accessTokenFactory,this.$.Zt=this.Zt;try{if(this.ne.skipNegotiation){if(this.ne.transport!==U.WebSockets)throw new Error("Negotiation can only be skipped when using the WebSocket transport directly.");this.transport=this.ke(U.WebSockets),await this.Pe(n,t)}else{let e=null,o=0;do{if(e=await this.Te(n),"Disconnecting"===this.ut||"Disconnected"===this.ut)throw new r("The connection was stopped during negotiation.");if(e.error)throw new Error(e.error);if(e.ProtocolVersion)throw new Error("Detected a connection attempt to an ASP.NET SignalR Server. This client only supports connecting to an ASP.NET Core SignalR Server. See https://aka.ms/signalr-core-differences for details.");if(e.url&&(n=e.url),e.accessToken){const t=e.accessToken;this.Zt=()=>t,this.$.te=t,this.$.Zt=void 0}o++}while(e.url&&o<100);if(100===o&&e.url)throw new Error("Negotiate redirection limit exceeded.");await this.Ie(n,this.ne.transport,e,t)}this.transport instanceof X&&(this.features.inherentKeepAlive=!0),"Connecting"===this.ut&&(this.u.log(e.Debug,"The HttpConnection connected successfully."),this.ut="Connected")}catch(t){return this.u.log(e.Error,"Failed to start the connection: "+t),this.ut="Disconnected",this.transport=void 0,this.ye(),Promise.reject(t)}}async Te(t){const n={},[i,r]=C();n[i]=r;const s=this._e(t);this.u.log(e.Debug,`Sending negotiation request: ${s}.`);try{const t=await this.$.post(s,{content:"",headers:{...n,...this.ne.headers},timeout:this.ne.timeout,withCredentials:this.ne.withCredentials});if(200!==t.statusCode)return Promise.reject(new Error(`Unexpected status code returned from negotiate '${t.statusCode}'`));const e=JSON.parse(t.content);return(!e.negotiateVersion||e.negotiateVersion<1)&&(e.connectionToken=e.connectionId),e.useStatefulReconnect&&!0!==this.ne.He?Promise.reject(new l("Client didn't negotiate Stateful Reconnect but the server did.")):e}catch(t){let n="Failed to complete negotiation with the server: "+t;return t instanceof o&&404===t.statusCode&&(n+=" Either this is not a SignalR endpoint or there is a proxy blocking the connection."),this.u.log(e.Error,n),Promise.reject(new l(n))}}De(t,e){return e?t+(-1===t.indexOf("?")?"?":"&")+`id=${e}`:t}async Ie(t,n,o,i){let s=this.De(t,o.connectionToken);if(this.Re(n))return this.u.log(e.Debug,"Connection was provided an instance of ITransport, using that directly."),this.transport=n,await this.Pe(s,i),void(this.connectionId=o.connectionId);const a=[],l=o.availableTransports||[];let d=o;for(const o of l){const l=this.xe(o,n,i,!0===(null==d?void 0:d.useStatefulReconnect));if(l instanceof Error)a.push(`${o.transport} failed:`),a.push(l);else if(this.Re(l)){if(this.transport=l,!d){try{d=await this.Te(t)}catch(t){return Promise.reject(t)}s=this.De(t,d.connectionToken)}try{return await this.Pe(s,i),void(this.connectionId=d.connectionId)}catch(t){if(this.u.log(e.Error,`Failed to start the transport '${o.transport}': ${t}`),d=void 0,a.push(new c(`${o.transport} failed: ${t}`,U[o.transport])),"Connecting"!==this.ut){const t="Failed to select transport before stop() was called.";return this.u.log(e.Debug,t),Promise.reject(new r(t))}}}}return a.length>0?Promise.reject(new u(`Unable to connect to the server with any of the available transports. ${a.join(" ")}`,a)):Promise.reject(new Error("None of the transports supported by the client are supported by the server."))}ke(t){switch(t){case U.WebSockets:if(!this.ne.WebSocket)throw new Error("'WebSocket' is not supported in your environment.");return new Z(this.$,this.Zt,this.u,this.ne.logMessageContent,this.ne.WebSocket,this.ne.headers||{});case U.ServerSentEvents:if(!this.ne.EventSource)throw new Error("'EventSource' is not supported in your environment.");return new V(this.$,this.$.te,this.u,this.ne);case U.LongPolling:return new X(this.$,this.u,this.ne);default:throw new Error(`Unknown transport: ${t}.`)}}Pe(t,e){return this.transport.onreceive=this.onreceive,this.features.reconnect?this.transport.onclose=async n=>{let o=!1;if(this.features.reconnect){try{this.features.disconnected(),await this.transport.connect(t,e),await this.features.resend()}catch{o=!0}o&&this.Se(n)}else this.Se(n)}:this.transport.onclose=t=>this.Se(t),this.transport.connect(t,e)}xe(t,n,o,i){const r=U[t.transport];if(null==r)return this.u.log(e.Debug,`Skipping transport '${t.transport}' because it is not supported by this client.`),new Error(`Skipping transport '${t.transport}' because it is not supported by this client.`);if(!function(t,e){return!t||!!(e&t)}(n,r))return this.u.log(e.Debug,`Skipping transport '${U[r]}' because it was disabled by the client.`),new a(`'${U[r]}' is disabled by the client.`,r);if(!(t.transferFormats.map((t=>B[t])).indexOf(o)>=0))return this.u.log(e.Debug,`Skipping transport '${U[r]}' because it does not support the requested transfer format '${B[o]}'.`),new Error(`'${U[r]}' does not support ${B[o]}.`);if(r===U.WebSockets&&!this.ne.WebSocket||r===U.ServerSentEvents&&!this.ne.EventSource)return this.u.log(e.Debug,`Skipping transport '${U[r]}' because it is not supported in your environment.'`),new s(`'${U[r]}' is not supported in your environment.`,r);this.u.log(e.Debug,`Selecting transport '${U[r]}'.`);try{return this.features.reconnect=r===U.WebSockets?i:void 0,this.ke(r)}catch(t){return t}}Re(t){return t&&"object"==typeof t&&"connect"in t}Se(t){if(this.u.log(e.Debug,`HttpConnection.stopConnection(${t}) called while in state ${this.ut}.`),this.transport=void 0,t=this.Ce||t,this.Ce=void 0,"Disconnected"!==this.ut){if("Connecting"===this.ut)throw this.u.log(e.Warning,`Call to HttpConnection.stopConnection(${t}) was ignored because the connection is still in the connecting state.`),new Error(`HttpConnection.stopConnection(${t}) was called while the connection is still in the connecting state.`);if("Disconnecting"===this.ut&&this.ye(),t?this.u.log(e.Error,`Connection disconnected with error '${t}'.`):this.u.log(e.Information,"Connection disconnected."),this.$e&&(this.$e.stop().catch((t=>{this.u.log(e.Error,`TransportSendQueue.stop() threw error '${t}'.`)})),this.$e=void 0),this.connectionId=void 0,this.ut="Disconnected",this.dt){this.dt=!1;try{this.onclose&&this.onclose(t)}catch(n){this.u.log(e.Error,`HttpConnection.onclose(${t}) threw error '${n}'.`)}}}else this.u.log(e.Debug,`Call to HttpConnection.stopConnection(${t}) was ignored because the connection is already in the disconnected state.`)}be(t){if(0===t.lastIndexOf("https://",0)||0===t.lastIndexOf("http://",0))return t;if(!g.isBrowser)throw new Error(`Cannot resolve '${t}'.`);const n=window.document.createElement("a");return n.href=t,this.u.log(e.Information,`Normalizing '${t}' to '${n.href}'.`),n.href}_e(t){const e=new URL(t);e.pathname.endsWith("/")?e.pathname+="negotiate":e.pathname+="/negotiate";const n=new URLSearchParams(e.searchParams);return n.has("negotiateVersion")||n.append("negotiateVersion",this.ve.toString()),n.has("useStatefulReconnect")?"true"===n.get("useStatefulReconnect")&&(this.ne.He=!0):!0===this.ne.He&&n.append("useStatefulReconnect","true"),e.search=n.toString(),e.toString()}}class Y{constructor(t){this.Ae=t,this.Ue=[],this.Le=!0,this.Ne=new Q,this.qe=new Q,this.Me=this.je()}send(t){return this.We(t),this.qe||(this.qe=new Q),this.qe.promise}stop(){return this.Le=!1,this.Ne.resolve(),this.Me}We(t){if(this.Ue.length&&typeof this.Ue[0]!=typeof t)throw new Error(`Expected data to be of type ${typeof this.Ue} but was of type ${typeof t}`);this.Ue.push(t),this.Ne.resolve()}async je(){for(;;){if(await this.Ne.promise,!this.Le){this.qe&&this.qe.reject("Connection stopped.");break}this.Ne=new Q;const t=this.qe;this.qe=void 0;const e="string"==typeof this.Ue[0]?this.Ue.join(""):Y.Oe(this.Ue);this.Ue.length=0;try{await this.Ae.send(e),t.resolve()}catch(e){t.reject(e)}}}static Oe(t){const e=t.map((t=>t.byteLength)).reduce(((t,e)=>t+e)),n=new Uint8Array(e);let o=0;for(const e of t)n.set(new Uint8Array(e),o),o+=e.byteLength;return n.buffer}}class Q{constructor(){this.promise=new Promise(((t,e)=>[this.j,this.Fe]=[t,e]))}resolve(){this.j()}reject(t){this.Fe(t)}}class K{constructor(){this.name="json",this.version=2,this.transferFormat=B.Text}parseMessages(t,n){if("string"!=typeof t)throw new Error("Invalid input for JSON hub protocol. Expected a string.");if(!t)return[];null===n&&(n=p.instance);const o=A.parse(t),i=[];for(const t of o){const o=JSON.parse(t);if("number"!=typeof o.type)throw new Error("Invalid payload.");switch(o.type){case N.Invocation:this.U(o);break;case N.StreamItem:this.Be(o);break;case N.Completion:this.Xe(o);break;case N.Ping:case N.Close:break;case N.Ack:this.Je(o);break;case N.Sequence:this.ze(o);break;default:n.log(e.Information,"Unknown message type '"+o.type+"' ignored.");continue}i.push(o)}return i}writeMessage(t){return A.write(JSON.stringify(t))}U(t){this.Ve(t.target,"Invalid payload for Invocation message."),void 0!==t.invocationId&&this.Ve(t.invocationId,"Invalid payload for Invocation message.")}Be(t){if(this.Ve(t.invocationId,"Invalid payload for StreamItem message."),void 0===t.item)throw new Error("Invalid payload for StreamItem message.")}Xe(t){if(t.result&&t.error)throw new Error("Invalid payload for Completion message.");!t.result&&t.error&&this.Ve(t.error,"Invalid payload for Completion message."),this.Ve(t.invocationId,"Invalid payload for Completion message.")}Je(t){if("number"!=typeof t.sequenceId)throw new Error("Invalid SequenceId for Ack message.")}ze(t){if("number"!=typeof t.sequenceId)throw new Error("Invalid SequenceId for Sequence message.")}Ve(t,e){if("string"!=typeof t||""===t)throw new Error(e)}}const G={trace:e.Trace,debug:e.Debug,info:e.Information,information:e.Information,warn:e.Warning,warning:e.Warning,error:e.Error,critical:e.Critical,none:e.None};class tt{configureLogging(t){if(m.isRequired(t,"logging"),void 0!==t.log)this.logger=t;else if("string"==typeof t){const e=function(t){const e=G[t.toLowerCase()];if(void 0!==e)return e;throw new Error(`Unknown log level: ${t}`)}(t);this.logger=new w(e)}else this.logger=new w(t);return this}withUrl(t,e){return m.isRequired(t,"url"),m.isNotEmpty(t,"url"),this.url=t,this.httpConnectionOptions="object"==typeof e?{...this.httpConnectionOptions,...e}:{...this.httpConnectionOptions,transport:e},this}withHubProtocol(t){return m.isRequired(t,"protocol"),this.protocol=t,this}withAutomaticReconnect(t){if(this.reconnectPolicy)throw new Error("A reconnectPolicy has already been set.");return t?Array.isArray(t)?this.reconnectPolicy=new z(t):this.reconnectPolicy=t:this.reconnectPolicy=new z,this}withServerTimeout(t){return m.isRequired(t,"milliseconds"),this.Ke=t,this}withKeepAliveInterval(t){return m.isRequired(t,"milliseconds"),this.Ge=t,this}withStatefulReconnect(t){return void 0===this.httpConnectionOptions&&(this.httpConnectionOptions={}),this.httpConnectionOptions.He=!0,this.Y=null==t?void 0:t.bufferSize,this}build(){const t=this.httpConnectionOptions||{};if(void 0===t.logger&&(t.logger=this.logger),!this.url)throw new Error("The 'HubConnectionBuilder.withUrl' method must be called before building the connection.");const e=new J(this.url,t);return O.create(e,this.logger||p.instance,this.protocol||new K,this.reconnectPolicy,this.Ke,this.Ge,this.Y)}}return Uint8Array.prototype.indexOf||Object.defineProperty(Uint8Array.prototype,"indexOf",{value:Array.prototype.indexOf,writable:!0}),Uint8Array.prototype.slice||Object.defineProperty(Uint8Array.prototype,"slice",{value:function(t,e){return new Uint8Array(Array.prototype.slice.call(this,t,e))},writable:!0}),Uint8Array.prototype.forEach||Object.defineProperty(Uint8Array.prototype,"forEach",{value:Array.prototype.forEach,writable:!0}),n})(),"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports.signalR=e():t.signalR=e(),$.extend($t,{t1:"Eingabe erforderlich",t2:"Bitte überprüfen Sie Ihre Eingaben im Formular.",b0:"Erstellt",b1:"Zuletzt geändert",b2:"von",t12:"Der Server hat einen Fehler zurückgegeben. Bitte versuchen Sie es erneut.",t17:"Eine Email mit einem Aktivierungs-Link wurde an deine Adresse versandt.",t18:"Ein Account mit deinem Namen existiert bereits. Dennoch erstellen?",t19:"Einträge sind entweder unngültig oder zu kurz.",t20:"Der Server hat einen Fehler gemeldet. Bitte versuch es erneut.",t21:"Der Zugang wurde nicht gefunden.",t30a:"Als erledigt markieren.",t30b:"Als unerledigt markieren.",t55:"Ein Email mit einem Aktivierungs-Link wurde an Ihre Adresse versandt.",t56:"Ein Zugang für diesen Namen besteht bereits. Trotzdem erstellen?",t57:"Ein bestehender Zugang wurde für diese Serie registriert.",t60:"Bitte geben Sie Email-Adresse an, die Sie hier hinterlegt haben.",t61:"Ihr Passwort wurde erfolgreich versandt.",t62:"Die angegebene Email-Adresse stimmt nicht mit der hier hinterlegten überein.",ov:"Persönliche Übersicht"});var $v={}; /*! loadCSS. [c]2020 Filament Group, Inc. MIT License */ /*! onloadCSS. (onload callback for loadCSS) [c]2017 Filament Group, Inc. MIT License */ -function onloadCSS(t,e){e=e||{};let n=function(e){return new Promise(((n,o)=>{t.addEventListener?e.addEventListener("load",newcb):t.attachEvent&&e.attachEvent("onload",newcb),"isApplicationInstalled"in navigator&&"onloadcssdefined"in t&&e.onloadcssdefined(newcb)}))};if(Array.isArray(t)){let o=t.length;Promise.all(t.map(n)).then((function(t){var n=t.reduce(((t,e)=>t+(!0===e?1:0)));!async function(t){!0===t&&"function"==typeof e.success?e.success():!0===t&&"object"==typeof e.success&&e.success instanceof Promise&&await e.success(),e.complete()}(o===n)}))}else n(t)}!function(t){"use strict";var e=function(e,n,o,i){var r,s=t.document,a=s.createElement("link");if(n)r=n;else{var c=(s.body||s.getElementsByTagName("head")[0]).childNodes;r=c[c.length-1]}var l=s.styleSheets;if(i)for(var u in i)i.hasOwnProperty(u)&&a.setAttribute(u,i[u]);a.rel="stylesheet",a.href=e,a.media="only x",function t(e){if(s.body)return e();setTimeout((function(){t(e)}))}((function(){r.parentNode.insertBefore(a,n?r:r.nextSibling)}));var d=function(t){for(var e=a.href,n=l.length;n--;)if(l[n].href===e)return t();setTimeout((function(){d(t)}))};function h(){a.addEventListener&&a.removeEventListener("load",h),a.media=o||"all"}return a.addEventListener&&a.addEventListener("load",h),a.onloadcssdefined=d,d(h),a};"undefined"!=typeof exports?exports.loadCSS=e:t.loadCSS=e}("undefined"!=typeof global?global:this);const isIE=/MSIE\/|Trident/gi.test(window.navigator.userAgent)||void 0!==window.document.documentMode,isfileapi=!!(window.File&&window.FileReader&&window.FileList&&window.Blob);var $ocms={auth:{},no:function(t){t.stopPropagation()},vmin:function(t){var e=$(window).width*(t||1),n=$(window).height*(t||1);return e($ocms.baseurl+"/"+(t||"")).replace(/\/\//,"/"),cexi:null};function deepCopy(t){var e,n,o;if("object"!=typeof t||null===t)return t;for(o in e=Array.isArray(t)?[]:{},t)n=t[o],e[o]=deepCopy(n);return e}function fields_definition(t,e,n){this.label_sng=!0===Array.isArray(t)?"":t||"",this.label_pl=!0===Array.isArray(t)?"":e||"",this.fields=!0===Array.isArray(t)?t:n||[],this.itm=function(t){for(var e=0;e0)for(var n=0;nt||"")).filter(((t,e)=>""!==t)).join(e)}function parseDt(t,e,n){t=(t||"").substr(0,e.length);var o=e,i=t.length>0&&e.split(";").some((function(e){for(var n,i=/[^yMdhms0-9]/gi,r=!0;null!==(n=i.exec(e));)r=r&&e.substr(n.index,1)===t.substr(n.index,1);var s=t.length===e.length&&r;return!0===s&&(o=e),s}));if(!0===i){for(var r,s=[0,0,0,0,0,0,0],a=/(mm{1,2}|dd{1,2}|MM{1,2}|(yy){2,4}|ss{1,2}|hh{1,2})(?!\w)/g;null!==(r=a.exec(o));)s["yMdhms".indexOf(r[0].substr(0,1))]=parseInt(("yy"===r[0]?"20":"")+t.substr(r.index,r[0].length))-("M"===r[0].substr(0,1)?1:0);var c=new(Function.prototype.bind.apply(Date,[null].concat(s)));return"string"==typeof n?fdt(c,n):c}return!1}function bool(t,e){return"boolean"==typeof t?t:"boolean"==typeof e&&e}function booln(t,e){return"boolean"==typeof t?t:"number"==typeof t?1===t:"boolean"==typeof e&&e}Date.prototype.isValid=function(){return!isNaN(this)},Date.prototype.format=function(t){return fdt(this,t)},Date.prototype.addDays=function(t){return this.setDate(this.getDate()+t),this},Date.prototype.isBetween=function(t,e){return this>t&&this section");$(window).scroll((function(e){let n=$(window).scrollTop(),o=$("body");o.toggleClass("unfocus",n>vh()-1.2*t),o.toggleClass("btb",n>.5*vh()-t)}))},$ocms.cf_reset=function(){return $("#contentframe").empty()},function(t){t.fn.scrollTo=function(e){if(t(this).length>0){var n=t(this).offset().top||0;n>0&&t("html, body").animate({scrollTop:n-hh()},2e3)}},t.fn.ldng=function(e){var n=!0;return"boolean"==typeof e?n=e:"number"==typeof e&&(n=e>0),t(this).toggleClass("loading",n)},"function"!=typeof t.noop&&(t.noop=function(){}),t.fn.hasAttr=function(e){var n=t(this).attr(e);return void 0!==n&&!1!==n},t.fn.parseCssPx=function(e){try{return parseFloat(t(this).css(e).replace("px","")||0)}catch(t){return 0}},t.max=function(t,e){return isNaN(t)&&isNaN(e)?null:isNaN(t)&&!isNaN(e)?e:!isNaN(e)&&isNaN(e)||t>=e?t:e},t.min=function(t,e){return isNaN(t)&&isNaN(e)?null:isNaN(t)&&!isNaN(e)?e:!isNaN(e)&&isNaN(e)||t<=e?t:e},t.lim=function(t,e){return isNaN(t)?null:isNaN(e)?t:e<=t?e:t},t.fn.enterKey=function(e){return this.each((function(){t(this).keypress((function(t){"13"===(t.keyCode?t.keyCode:t.which).toString()&&e.call(this,t)}))}))}}(jQuery),$ocms.defaultTimeout=3e4,$ocms.AjaxEX=function(t){var e=this;e.responseText=e.responseText||"";var n=e.getResponseHeader("x-ocms-code")||"";e.internalCode=""!==n&&!1===isNaN(n)?parseInt(n):-1,e.isInternal=e.internalCode>-1,e.internalText=decodeURIComponent((e.getResponseHeader("x-ocms-desc")||"").replace(/\+/g,"%20")||"");var o=e.internalText||t,i=e.internalCode||e.status;e.logtext=o+" ("+i+")"},$ocms.postXTS=function(t){$ocms.postXT.call(this,$.extend(t,{sync:!0}))},$ocms.postXT=function(t){if((t=t||{}).trycount=t.trycount||0,""!==(t.url||"")){t.url=-1!==t.url.indexOf("&yy=")?t.url:t.url.indexOf("?")>-1?t.url+"&yy="+(new Date).getTime():t.url+"?yy="+(new Date).getTime();var e=t.context||this;switch(t.context=e,t.retryLimit=t.retryLimit||0,t.timeout=t.timeout||$ocms.defaultTimeout,t.timeout<100&&(t.timeout=1e3*t.timeout),t.data=t.data||{},t.contentType=t.contentType||"multipart/form-data; charset=UTF-8",t.islogin="boolean"==typeof t.islogin&&t.islogin,t.contentType){case"":case"json":t.contentType="application/json; charset=utf-8";break;case"form":t.contentType="application/x-www-form-urlencoded; charset=UTF-8";break;case"multi":t.contentType="multipart/form-data";break;case"text":t.contentType="text/plain; charset=UTF-8"}if(t.form instanceof jQuery?(t.data=t.form.serializeObject(),t.contentType="form-data"):t.lzw instanceof jQuery&&(t.data.lzw=$.ccLZW(t.lzw.serializeAnything(!0)).join(",")),"multipart/form-data"!==t.contentType.substr(0,19)&&"form-data"!==t.contentType.substr(0,9)||t.data instanceof FormData!=!1)t.data instanceof FormData&&(t.contentType=!1,t.processData=!1);else{t.contentType=!1;var n=new FormData;$.each(t.files||[],(function(t,e){n.append("upload_file",e)})),$.each(t.data||{},(function(t,e){n.append(t,e)})),t.data=n,t.processData=!1}var o={type:t.method||"post",url:t.url,data:t.data,processData:"boolean"!=typeof t.processData||t.processData,contentType:t.contentType,cache:t.cache||!1,timeout:t.timeout,beforeSend:function(n){$(t.loading).ldng(),$("body").addClass("ldng"),"function"==typeof t.beforesend&&t.beforesend.apply(e,[n])},success:function(n,o,i){"false"===n||"not authorized"===n?("function"==typeof t.error&&t.error.apply(e,[i,o,n]),"function"==typeof $.status&&$.status(o+" - "+n)):"function"==typeof t.success&&t.success.apply(e,[n,o,i])},error:function(n,o,i){if($ocms.AjaxEX.call(n,o),-1===t.url.indexOf("doc.ashx")||-1!==t.url.indexOf("ftest")){if(401===n.status&&111===n.internalCode&&!1===t.islogin&&"function"==typeof $ocms.login.dlg)$ocms.login.dlg({ajo:t});else if("timeout"===o||302===n.status)return t.tryCount++,t.tryCount<=t.retryLimit?void $ocms.postXT(t):void 0;"function"==typeof t.error?t.error.apply(e,[n,o,i]):"function"==typeof $ocms.failure?$ocms.failure.apply(e,[n]):"function"==typeof $.status&&$.status("Server error: "+o+" - "+i)}},dataType:t.datatype||"json",complete:function(n,o){"function"==typeof t.complete&&t.complete.apply(e,[n,o]),$(t.loading).ldng(0),$("body").removeClass("ldng");let i=$("body > .timer");if(i.length>0){let t=new Date(n.getResponseHeader("ocms_cec")||""),e=new Date(n.getResponseHeader("ocms_cex")||"");if(t.isValid()&&e.isValid()){let n=new Date,o=Math.abs(e-t);n.setMilliseconds(n.getMilliseconds()+o),i.data({cex:n,ctt:o}),$ocms.cex_timer()}}},context:e,async:!0};"boolean"==typeof t.sync&&(o.async=!1===t.sync),!0==("boolean"==typeof t.contentType&&!1===t.contentType)&&(o.contentType=!1),$.ajax(o)}},$ocms.cex_timer=function(){$ocms.cexi||($ocms.cexi=setInterval($ocms.cex_timer,15e3));let t=$("body > .timer"),e=t.data("cex"),n=t.data("ctt"),o=new Date;if(e instanceof Date&&e.isValid()&&"number"==typeof n&&n>0&&e>o){let i=Math.abs(o-e)/n*100;t.css("width",i.toString()+"%"),i<98&&(!$ocms.cex_lp||Math.abs(o-$ocms.cex_lp)>6e5)&&$ocms.postXT({url:$ocms.url("ping"),success:()=>{$ocms.cex_lp=o},timeout:5e3,error:()=>{}})}},$ocms.vbl_send=function(t){var e=t.data||{};if(""!==(e.url||"")){var n=$("#contentframe form:first"),o={url:e.url,data:new FormData,success:function(t){"function"==typeof e.success?e.success(t):"string"==typeof e.success&&alert(e.success)},error:function(t,n,o){"function"==typeof e.error?e.error(o):"string"==typeof e.error&&alert(e.error)},complete:function(){n.ldng(0)}},i=!0;n.find("input").each((function(){var t=$(this),e=t.nza("name"),n=t.val(),r=$(this).prop("required")||!1;if(""!==e){var s=""!==n||!1===r;i=i&&s,!0===s?(o.data.append(e,n),t[0].setCustomValidity("")):""!==$(this).nza("ocms-nvnote")&&t[0].setCustomValidity($(this).nza("ocms-nvnote"))}})),!0===i&&(n.ldng(1),$ocms.postXT.call(this,o))}},function(t){t.fn.nza=function(e,n){var o=t(this).attr(e);return void 0!==o&&!1!==o?o:n||""},t.fn.serializeObject=function(e,n){var o=/\r?\n/g,i=/^(?:submit|button|image|reset|file)$/i,r=/^(?:input|select|textarea|keygen)/i,s=/^(?:checkbox|radio)$/i,a=bool((n=n||{}).typedvalues,!1),c={},l=t(this),u=l.find(':input:not([nosend],[type="file"])').addBack(":input"),d=!0;return t.each(u.not(".tinymce").get(),(function(n,l){var u=t(this),h=this,p=(this.type||"").toLowerCase(),f=u.prop("required")||!1;if(!0===(h.name&&!u.is(":disabled")&&r.test(h.nodeName)&&!i.test(p))){var m=u.val(),g=h.name,y=u.nza("data-format").split(":"),b=u.nza("pattern")||".*";if(!0===s.test(p)&&(m=h.checked?""!==m?m:"true":""),"date"===y[0].substr(0,4)&&y.length>1)"boolean"==typeof(m=parseDt(m,y.slice(1).join(":")))&&(m=null),null===m&&"date"===u.prop("type").substr(0,4)&&!1===isNaN(new Date(u.val()))&&(m=new Date(u.val())),m instanceof Date==!0&&"function"==typeof m.getMonth?!1===a&&(m=fdt(m,"date"===y[0]?"dts":"iso")):m=null;else if("number"===p&&!0===a){let t;t="integer"===y[0]?parseInt(m):parseFloat(m),m=isNaN(t)?m:t}if(!0!==f||""!==(m||"")&&null!==m.match(b)?!0===bool(e,!1)&&h.setCustomValidity(""):(!0===bool(e,!1)&&h.setCustomValidity(u.nza("ocms-nvnote",$ocms.t.inv||"Invalid field")),m=null),null!=m&&"string"==typeof m){let t=c[g];null!=t?Array.isArray(t)?t.push(m.replace(o,"\r\n")):c[g]=[t,m.replace(o,"\r\n")]:c[g]=m.replace(o,"\r\n")}else if(null!=m){let t=c[g];null!=t?Array.isArray(t)?t.push(m):c[g]=[t,m]:c[g]=m}else d=!1}})),u.filter(".tinymce").each((function(e,n){var o=t(this),i=((this.type||"").toLowerCase(),o.prop("required")||!1);try{var r=tinymce.get(t(n).attr("id"));if(r){var s=t(n).attr("name"),a=r.getContent();!1===i||""!==(a||"")?c[s]=a:d=!1}}catch(e){t.noop()}})),l.toggleClass("invalid",!d),d?c:null},t.fn.sendForm=function(e,n,o){var i=t(this);o=o||{};var r={url:e,success:function(t){if(o.response=t,"function"==typeof n)n(t);i.closest("div.modal").remove()},error:function(t,e,n){"function"==typeof o.error?o.error.call(this,t):$ocms.failure.call(this,t)},complete:function(){i.ldng(0),"function"==typeof o.complete&&o.complete.call(this,jqXHR)}},s=i.find('input[type="file"]');r.data=new FormData,s.length>0&&t.each(s[0].files,(function(t,e){r.data.append(t,e),r.data.append("file_lastmodified",$ocms.isodt(e.lastModifiedDate))}));var a=i.serializeObject();t.each(a||{},(function(t,e){r.data.append(t,e)})),i.ldng(),$ocms.postXT.call(this,r)},t.fn.checkValidity=function(){var e=t(this),n=!0;return e.each((function(t,e){n=n&&e.checkValidity()})),n},t.fn.wrap=function(e,n){var o=t(this),i=$$.dc(e).attr(n||{}).insertAfter(o);return o.append(i),i}}(jQuery),$ocms.logout=function(){$ocms.postXT({url:$ocms.url("logout"),complete:function(){window.location.reload()}})},$ocms.login={send:function(t){t.preventDefault();var e=$(this);if(!0===e.find("#dbtn-confirm").hasClass("disabled"))return!1;var n=e.serializeObject();return n.loginaccount=ne(n.loginaccount,$ocms.auth.account||$ocms.auth.requestedaccount||""),n.loginaccount=ne(n.loginaccount,$ocms.auth.account||$ocms.auth.requestedaccount||""),""===ne(n.loginaccount)&&!0===bool($ocms.auth.accountrequired,!0)?(alert($t.l16),!1):($ocms.postXT({url:$ocms.url("login"),data:n,success:function(){window.location.reload()}}),!1)},uichange:function(){let t=$(this),e=t.closest("form"),n=bool($ocms.auth.accountrequired,!0),o=ne(e.find('[name="loginaccount"]').val(),$ocms.auth.account||$ocms.auth.requestedaccount||"");if(""!==o||!1===n){var i=e.find('[name="userlogin"]').empty().val(""),r=e.find('[name="username"]').empty().val(""),s=$("#dlg_userlogin_sel").empty().val(""),a=t.val()||"";if(!1===t.checkValidity()&&""===a)return;var c=t.closest("table").ldng();$ocms.postXT.call(this,{url:$ocms.url("auth"),data:{userinfo:a,account:o||""},success:function(t,e,n){if(1===t.length){var o=t[0];i.val(o.login).change().attr("required","").removeAttr("nosend"),r.val(o.name).change().attr("required","").show(),s.removeAttr("required").attr("nosend","").hide()}else t.length>0?(r.hide().removeAttr("required"),i.removeAttr("required").attr("nosend",""),0===s.length&&(s=$("").attr({name:"userlogin",size:t.length,id:"dlg_userlogin_sel",class:"form-control",required:""}).css({width:"100%","max-width":"100%",padding:"2px"}).insertAfter(r)),$.each(t,(function(t,e){var n=$("").attr({value:e.login,style:"padding-top: 2px; padding-bottom: 5px;","border-bottom":"1px solid #EEE;"}).text(e.name).appendTo(s);t%2==0&&n.css({"background-color":"#F9F9F9"})})),s.attr("required","").removeAttr("nosend")):(s.hide().attr("nosend",""),r.attr("required","").show(),i.attr("required","").removeAttr("nosend"),alert($t.l9))},error:function(t){$ocms.failure.call(this,t)},complete:function(){c.ldng(0)}})}else alert($t.l18)},sendpassword:function(t){var e=$(''),n=e.find(".form-body"),o=null;e.find("form").submit((function(t){t.preventDefault();var i=$(this).serializeObject(!0),r=null===o,s=r?"spwc":"spw";return $ocms.postXT.call(this,{url:$ocms.url(s),data:i,complete:function(){r?(n.append('
Ihnen wurde ein Code per SMS zugesandt.
Bitte tragen Sie den hier ein:
'),o=$('
').appendTo(n)):(alert($t.l13),e.remove())},error:()=>{}}),!1})),e.find(".modal-close").click((function(){e.remove()}));var i=[];$.each($t.l7a.split("\n"),((t,e)=>{Array.prototype.push.apply(i,[$("
"),$("").text(e)])})),e.find(".modal-note").append($('').text($t.alert)).append(i),e.appendTo("body"),setTimeout((function(){$(".modal").find('input[name="lastname"]').focus()}),600)}};var $$={s:function(t){return $("").text(t)},br:function(){return $("
")},sc:function(t,e){return $("").addClass(t).text(e)},td:function(t,e){var n=$("");return t instanceof jQuery==!0?n.appendTo(t):"object"==typeof t?n.attr(t):"string"==typeof t&&n.text(t),"object"==typeof e?n.attr(e):"string"==typeof e&&n.text(e),n},th:function(t,e){var n=$("");return t instanceof jQuery==!0?n.appendTo(t):"object"==typeof t?n.attr(t):"string"==typeof t&&n.text(t),"object"==typeof e?n.attr(e):"string"==typeof e&&n.text(e),n},tdc:function(t,e,n){return $$.td(e,n).addClass(t)},td2:function(t){var e=$('');return"string"===$.type(t)?e.text(t):t instanceof jQuery?e.append(t):"function"==typeof t?t.call(e):e.html(" "),e},td3:function(t){var e=$('');return"string"===$.type(t)?e.text(t):t instanceof jQuery?e.append(t):"function"==typeof t?t.call(e):e.html(" "),e},tdtr:function(t,e){var n=$$.tr().appendTo(e);return t instanceof jQuery==!0||"string"==typeof t?t.appendTo($$.td().appendTo(n)):!0===Array.isArray(t)&&$.each(t,(function(t,e){$(e).appendTo($$.td().appendTo(n))})),n},tr:function(t,e){var n=$("");return t instanceof jQuery==!0?n.appendTo(t):"object"==typeof t&&n.attr(t),"object"==typeof e&&n.attr(e),n},trc:function(t,e){var n=$("").addClass(t);return e instanceof jQuery==!0?n.appendTo(e):"object"==typeof e&&n.attr(e),n},d:function(t){return $("
").attr(t||{})},dc:function(t,e,n,o){var i=$("
").addClass(t);return e instanceof jQuery==!0?i.appendTo(e):"object"==typeof e?i.attr(e):"function"==typeof e?i.click(e):"string"==typeof e&&i.text(e),"string"==typeof n?i.text(n):"object"==typeof n?i.attr(n):"function"==typeof n&&i.click(n),"string"==typeof o?i.text(o):"object"==typeof o?i.attr(o):"function"==typeof o&&i.click(o),i},df:function(t){return $("
 
").attr(t||{})},opt:function(t,e,n){var o=$("");return"string"==typeof t?o.attr("value",t):"object"==typeof t&&o.attr(t),"string"==typeof e?o.text(e):"object"==typeof e&&o.attr(e),"object"==typeof n&&o.attr(n),o},eOpt:function(t){var e=$('');return t&&e.attr("selected","selected"),e},tbl:function(t){return $("
").attr(t||{})},tblc:function(t){return $("
").addClass(t)},thead:function(t){let e=$("");return t instanceof jQuery&&e.prependTo(t),e},tbody:function(t){let e=$("");return t instanceof jQuery&&e.appendTo(t),e},tblset:function(t,e){let n=$$.tbl(t||{});return e instanceof jQuery&&e.append(n),{tbl:n,hd:$$.thead().appendTo(n),bdy:$$.tbody().appendTo(n)}},i:function(t){return $("").attr(t||{})},img:function(t,e){return $("").attr("src",t).attr(e||{})},sel:function(t){return $("").attr(t||{})},btn:function(t){return $("").attr(t||{})},a:function(t){return $("").attr(t||{})},li:function(t){return $("
  • ").attr(t||{})},ul:function(t){return $("
      ").attr(t||{})},nav:function(t){return $("").attr(t||{})},lbl:function(t,e){var n=$("");return"string"==typeof t&&n.text(t),"object"==typeof t?n.attr(t):"object"==typeof e&&n.attr(e),n},txt:function(t){return $("").attr(t||{})},0:function(t,e){return $("<"+t+">").attr(e||{})},bbtn:function(t,e){return $$.btn({type:"button",class:"btn"}).addClass(e).text(t)},svg:t=>$(document.createElementNS("http://www.w3.org/2000/svg",t))};function getMonday(t){var e=(t=new Date(t)).getDay(),n=t.getDate()-e+(0==e?-6:1);return new Date(t.setDate(n))}function $lf(t){var e=void 0===t?null:"number"==typeof t&&1!==t||"boolean"==typeof cl&&!1===t;return $("#listframe").tC("hd",e).is(".hd")}function $nuf(t){if(t&&t.stopPropagation(),!$(this).is(".disabled")){var e=function(t){t.removeClass("vis").find("li.dropdown").removeClass("open").removeClass("vis").attr("aria-expanded","false")},n=$(this).parent("li.dropdown");if(n.length>0){n.tC("open"),navs=!0===n.is(".open")?"true":"false",n.attr("aria-expanded",navs);var o=n.closest("nav");o.find("li.dropdown").not(n.parentsUntil("nav")).not(n).removeClass("open").attr("aria-expanded","false"),!1===n.is(".open")&&n.find("li.dropdown").removeClass("open").attr("aria-expanded","false"),e($("nav").not(o))}else e($("nav"))}}function $tbr(){return $lf(0),$("#topbar").ocmsmenu([])}function $lfr(){return $("#sidebar").empty(),$("#listframe").removeClass("fix").addClass("hd").empty()}function $cfr(){return $tbr(),$("#contentframe").empty()}function jObj(t,e){let n={};if("{"===(t||"").substr(0,1))try{n=JSON.parse(t)}catch(t){n={}}return n[e]||""}function string(t,e){var n,o=t||"";return $.each(e||[],(function(t,e){n=new RegExp("\\{"+t.toString()+"\\}","ig"),o=o.replace(n,e)})),o}function init_tooltip(t){var e=!0===("boolean"==typeof t&&t)&&"mouse";$("[title]").qtip({position:{target:e,adjust:{x:2,y:2},viewport:!0},events:{hidden:$ocms.tooltip_hidden},effect:!1}),$("div.tooltiptext").each((function(){$(this).filter(":not(:empty)").parent().qtip({suppress:!1,content:{text:$(this).clone()},position:{target:e,adjust:{x:2,y:2},viewport:!0},events:{hidden:$ocms.tooltip_hidden}})}))}String.prototype.trim=function(){return this.replace(/^\s+|\s+$/g,"")},String.prototype.left=function(t){if("string"===$.type(t)){var e=this.indexOf(t);return e>0?this.slice(0,e):""}return this.substring(0,t)},String.prototype.right=function(t){if("string"===$.type(t)){var e=this.indexOf(t);return e>0?this.substring(this.length-e):""}return this.substring(this.length-t)},Array.prototype.move=function(t,e){if(e>=this.length)for(var n=e-this.length;1+n--;)this.push(void 0);return this.splice(e,0,this.splice(t,1)[0]),this},function(t){t.fn.appendToIf=function(e,n){var o=t(this),i="function"==typeof n?n(o):n;return!0===("boolean"!=typeof i||i)&&o.appendTo(e),o},t.fn.appendIf=function(e,n){var o=t(this),i="function"==typeof n?n(o):n;return!0===("boolean"!=typeof i||i)&&o.append(e),o},t.fn.rwText=function(e,n,o){var i=t(this).empty();o=t.extend({wrap:!0},o);var r=!0===Array.isArray(e)?e:(null==e?"":String(e)).split("\n");return t.each(r,(function(t,e){""!==(e||"")&&(t>0&&i.append($$.br()),i.append(!0===o.wrap?$$.s(e):e))})),n&&i.attr("title",n),i},t.fn.loadSel=function(e,n,o){if("SELECT"===t(this).prop("tagName").toUpperCase()){var i=t(this);$ocms.postXT.call(this,{url:e,data:n||{},success:function(e){t.each(e,(function(){i.append($$.opt(e.value,e.text))}))},complete:function(){i.ldng(0),"function"==typeof o&&o.call(i)}})}},t.fn.emptyWithEditors=function(e){var n=t(this);return n.find(":input.tinymce").each((function(e,n){try{var o=tinymce.get(t(n).attr("id"));o&&o.remove()}catch(e){t.noop()}})),n.empty()},t.fn.cssValue=function(t){if(this.length>0){var e=this.css(t)||"";if(""===e)return 0;var n=/(^[\d\.]*)(\D{1,3}$)/gi.exec(e);return null!==n?"rem"===n[2]?$ocms.rpx(parseFloat(n[1])):parseFloat(n[1]):!1===isNaN(e)?parseFloat(e):0}return 0},t.fn.veryInnerHeight=function(){let e=e=>t(this).cssValue(e);return t(this).innerHeight()-e("padding-top")-e("padding-bottom")},t.fn.veryInnerWidth=function(){let e=e=>t(this).cssValue(e);return t(this).innerWidth()-e("padding-left")-e("padding-right")},t.fn.marginWidth=function(){let e=e=>t(this).cssValue(e);return e("margin-left")+e("margin-right")},t.fn.marginHeight=function(){let e=e=>t(this).cssValue(e);return e("margin-top")+e("margin-bottom")},t.inArrayRegEx=function(e,n,o){var i="regexp"===t.type(e)?e:new RegExp(e);if(!n)return-1;for(var r=o=o||0;r7){o=e.split(","),i=(n||(t<0?"rgb(0,0,0)":"rgb(255,255,255)")).split(",");var c=a(o[0].slice(4)),l=a(o[1]),u=a(o[2]);return"rgb("+(s((a(i[0].slice(4))-c)*r)+c)+","+(s((a(i[1])-l)*r)+l)+","+(s((a(i[2])-u)*r)+u)+")"}var d=(o=a(e.slice(1),16))>>16,h=o>>8&255,p=255&o;return"#"+(16777216+65536*(s((((i=a((n||(t<0?"#000000":"#FFFFFF")).slice(1),16))>>16)-d)*r)+d)+256*(s(((i>>8&255)-h)*r)+h)+(s(((255&i)-p)*r)+p)).toString(16).slice(1)},t.fn.IN=function(e){return t(this).fadeIn(400,e),t(this)},t.fn.OUT=function(e){return t(this).fadeOut(400,e),t(this)},t.fn.tooltip=function(e,n){var o=!0===("boolean"==typeof e&&e)&&"mouse",i="boolean"==typeof n&&n,r=t(this);return r.each((function(){var e=i?t(this).find(".tooltiptext"):t(this).children(".tooltiptext");t(e).length>0?e.each((function(){var e=t(this);t(this).filter(":not(:empty)").parent().qtip({suppress:!1,content:{text:e.clone()},position:{target:o,adjust:{x:2,y:2},viewport:!0},events:{hidden:$ocms.tooltip_hidden},show:{effect:!1},hide:{effect:!1}}),e.remove()})):t(this).qtip({position:{target:o,adjust:{x:2,y:2},viewport:!0},events:{hidden:$ocms.tooltip_hidden},effect:!1})})),r},t.fn.rC=function(e){return t(this).removeClass(e)},t.fn.aC=function(e){return t(this).addClass(e)},t.fn.tC=function(e,n){return t(this).toggleClass(e,n)}}(jQuery),function(t){t.fn.ocmsmenu=function(e,n){var o=t(this);return $ocms.menu.call(o,e,n),o},t.fn.activatemenu=function(){var e=t(this).filter("nav");return e.find("a").not(".on").addClass("on").click($nuf),e.find(".nav-btn").not(".on").addClass("on").click((function(e){e.stopPropagation();var n=t(this);t(n.attr("data-target")).tC(n.attr("data-toggle"))})),e}}(jQuery);class ObjectArray extends Array{isEmpty(){return 0===this[0].length}static get[Symbol.species](){return Array}filter(t){return"function"==typeof t?new ObjectArray(this[0].filter(t)):this}remove(t){if("function"!=typeof t)return this;{let e=this[0].findIndex(t);for(;e>-1;)this[0].splice(e),e=this[0].findIndex(t)}}sortBy(t){return"function"==typeof t&&this[0].sort(t),this}sortString(t){return this[0].sort(((e,n)=>{let o=(e[t]||"").toString().toUpperCase(),i=(n[t]||"").toString().toUpperCase();return console.debug(o.localeCompare(i)),o.localeCompare(i)})),this}sortNum(t){return this[0].sort(((e,n)=>{let o=e[t],i=n[t];return!0===isNaN(i)&&!1===isNaN(o)||oi?1:0})),this}sum(t){return this[0].reduce(((e,n)=>e+(!0===isNaN(n[t])?0:n[t])),0)}groupBy(t){return this[0].reduce((function(e,n){let o=n[t];return e[o]||(e[o]=[]),e[o].push(n),e}),{})}each(t){if("function"==typeof t){let e=!1;this[0].forEach(((n,o,i)=>{if(!1===e){let r=t(n,o,i);"boolean"==typeof r&&!1===r&&(e=!0)}}))}}get toArray(){return this[0]}}class NumArray extends Array{sum(){return this.reduce(((t,e)=>t+e))}first(){return this[0]}last(){return this[this.length-1]}average(){return this.sum()/this.length}range(){let t=this.map((t=>t)).sort();return{min:t[0],max:t[this.length-1]}}static get[Symbol.species](){return Array}}$ocms.ocmsmenu=[{lbl:"",id:"m_home",ico:"glyphicon glyphicon-home",fnc:"init:home"},{fnc:"separator"}],function(t){t.multline=function(t){let e=t.split("\n"),n=$$.d();return $.each(e,((t,e)=>{n.append($$.s(e))})),n.html()},t.tooltip_hidden=function(t,e){$(this).remove(),e.rendered=!1},t.isJSONDateString=function(t){return"string"==typeof t&&/^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2}(\.\d+)?(Z|[+-]\d{2}:\d{2})?)?$/.test(t)},t.failure=function(e){11110===(e.internalCode||-1)?t.login.dlg():alert($t.f1+"\n"+(e.internalText||""))},t.getScript=function(e,n){var o=[],i=[],r=function(t){return"string"==typeof t&&""!==(t||"")},s=function(t,e){!0===bool(e.condition,!0)&&(""!==(e.script||"")&&i.push({url:e.script,module:e.module||""}),!0===r(e.css||"")?o.push(e.css):!0===Array.isArray(e.css)&&Array.prototype.push.apply(o,e.css.filter(r)))};!0===r(e||"")?i.push(e):!0===Array.isArray(e)?$.each(e,s):"object"==typeof e&&""!==(e.script||"")&&s(0,e);let a=[];$.each(o,(function(t,e){""!==(e||"")&&a.push(loadCSS(e))}));let c=i.map((function(e,n){let o=e.url,r=e.module||"";if(""===r){let t=new Promise((function(t,e){try{!async function(){$.ajax({url:o,dataType:"script",success:function(){t(i)},error:function(){e(i)},timeout:3e4})}()}catch(t){console.debug(t.message+"%o",t)}}));return t}return t.loadmodule(r,o,e.alias)}));Promise.all(c).then(n)},t.loadmodule=function(e,n,o){let i=new Promise((function(i,r){!async function(){try{let s=(n.startsWith("/")||n.startsWith(".")?"":"/")+n;import(s).then((n=>{t[e]=n[o||"default"],i(e)})).catch((t=>{console.debug(t.message+"%o",t),r(e)}))}catch(t){console.debug(t.message+"%o",t)}}()}));return i},t.ocms_auth=function(e,n,o,i){!1===$.isPlainObject(t.auth.modules)&&(t.auth.modules={});var r=0;t.auth.modules[e+(o||"")]?((r=t.auth.modules[e+(o||"")])<2&&(o||"")===auth.guid&&(r=2),r>=(n||0)&&i(false)):t.postXT({url:t.url("auth"),data:{module:e,person_guid:o||""},success:function(s){r=s[e],t.auth.modules[e+(o||"")]=r,r<2&&(o||"")===t.auth.person_guid&&(r=2),r>=(n||0)&&i(false)},error:function(e){t.failure.call(this,e)}})},t.auth.locale="de",t.ocms_prepauth=function(e,n,o){t.postXT({url:t.url("auth"),data:{fn:"csv",modules:e,person_guid:n||""},success:function(e){t.ocms_regauth(e)},error:function(e){t.failure.call(this,e)},complete:function(){o()}})},t.ocms_regauth=function(t){$.each(t||{},(function(t,e){auth.modules[t]=parseInt(e)}))},t.init=function(e){var n="string"==typeof e?e:(e.data||{}).fn||"";""!==n&&("home"===n?($cfr(),$lfr(),$("#topbar").ocmsmenu([],!0),$("#activemodule").text($t.ov),t.ov.call($("#contentframe"))):($cfr(),$lfr(),$("#topbar").ocmsmenu([]),t.postXT({url:t.url(n+"/auth"),success:function(e){void 0===t[n]&&(t[n]={}),t[n].auth=e,e.manage>0&&t.getScript({module:n,script:["web/imdl",n,t.auth.locale||"de","js"].join("."),css:["web/imdl",n,"css"].join("."),condition:"function"!=typeof t[n].init2},(function(){t[n].init2()}))},error:function(){$("#contentframe").empty()}})))},t.menuarray=function(t){this.array=[],this.sep=function(){this.length>0&&"separator"!==this.array[array.length-1].fnc&&this.push({fnc:"separator"})},this.push=function(t){return void 0===t?null:(!0===Array.isArray(t)?Array.prototype.push.apply(this.array,t):"object"==typeof t&&this.array.push(t),t)},this.unshift=function(t){return void 0===t?null:(!0===Array.isArray(t)?Array.prototype.unshift.apply(this.array,t):"object"==typeof t&&this.array.unshift(t),t)},this.push(t)},t.menu=function(e,n){e=e||[];var o=$(this).removeClass("vis");if(!0===bool(n,!0)&&!1===o.is("#mainmenu")&&o.empty(),!1===bool(n,!1)&&o.is("#sidebar,#topbar")&&(e.unshift({id:"sbctrl",glyph:"glyphicon-th-list",aclass:"fbtn",fnc:function(){$lf()}}),$lf(0)),0===(e||[]).length)o.empty().addClass("hd");else{o.removeClass("hd");var i=!0===o.is("nav")?o:o.children("nav");1!==i.length&&(i=$("").tC("nv",o.is("#sidebar")).tC("ctxt",o.is("#topbar")).appendTo(o));var r,s=$$.ul().appendTo(i),a=function(t,e){var n=$(this).addClass("dropdown submenu");t.append($$.sc("caret dd")).addClass("dds dropdown-toggle").attr({"aria-expanded":"false"}),""!==(e.ico||"")&&t.prepend($$.sc("ico "+e.ico));var o=$$.ul({class:"dropdown-menu",role:"menu"}).appendTo(n);$.each(e.itm||[],(function(t,e){r.call(o,e)}))},c=function(t){$(this).tC("disabled","boolean"==typeof t.disabled?t.disabled:"string"==typeof t.disabled&&"subs"===t.disabled&&0===(t.itm||[]).length)};r=function(e){var n,o=$$.li({id:e.id}).attr(e.attr||{}).addClass(e.lclass).appendTo($(this)),i="string"==typeof e.fnc&&""!==e.fnc?e.fnc.split(":")[0]:"";""!==i&&"init"!==i?o.attr("role",i).appendIf($$.s(e.lbl),""!==ne(e.lbl)):(n=$$.a({class:"on",role:"button"}).addClass(e.aclass).appendTo(o).append($$.s(e.lbl)),c.call(n,e),(e.itm||[]).length>0&&a.call(o,n,e),n.click($nuf),"function"==typeof e.fnc?n.click(e.data||{},e.fnc):"init"===i&&n.click($.extend({},e.data||{},{fn:e.fnc.split(":")[1]}),t.init))},$.each(e,(function(e,n){var o,i=$$.li({id:n.id}).attr(n.attr||{}).addClass(n.lclass),a="string"==typeof n.fnc&&""!==n.fnc?n.fnc.split(":")[0]:"";if(""!==a&&"init"!==a)i.attr("role",a).appendIf($$.s(n.lbl),""!==ne(n.lbl));else{if(o=$$.a({class:"on",role:"button"}).addClass(n.aclass).appendTo(i),c.call(o,n),""!==(n.lbl||"")&&o.append($$.s(n.lbl)),""!==(n.ico||"")&&o.prepend($$.sc("ico "+n.ico)),""!==(n.glyph||"")&&o.prepend($$.sc("glyphicon "+n.glyph)),(n.itm||[]).length>0){i.addClass("dropdown"),o.append($$.sc("caret dd")).addClass("dds dropdown-toggle").attr({"aria-expanded":"false"});var l=$$.ul({class:"dropdown-menu",role:"menu"}).appendTo(i);$.each(n.itm||[],(function(t,e){r.call(l,e)}))}(n.sel||[]).length>0||(o.click($nuf),"function"==typeof n.fnc?o.click(n.data||{},n.fnc):"init"===a&&o.click($.extend({},n.data||{},{fn:n.fnc.split(":")[1]}),t.init))}i.appendTo(s)})),i.activatemenu()}},t.easytbl=(t,e)=>{e=e||{};let n=$$.tbl().addClass(e.class).css("border-collapse","collapse"),o=($$.tbody(n),!0===bool(e.frame,!1)?{padding:"5px",border:"1px solid #727272"}:{});if(!0===Array.isArray(e.header)){let t=$$.thead(n);$.each(e.header,((n,i)=>$$.th(t).css(e.cellcss||o).rwText(i)))}else if(!0===bool(e.header,!1)&&(t||[]).length>0){let i=$$.thead(n);$.each(Object.keys(t[0]),((t,n)=>$$.th(i).css(e.cellcss||o).rwText(n)))}return $.each(t||[],((t,i)=>{let r=$$.tr();$.each(i,((t,n)=>{n=n||"";let i=$$.td(r).css(e.cellcss||o);n instanceof jQuery?i.append(n):"string"==typeof n&&("<"===n.substring(0,1)?i.append(n):i.text(n))})),n.append(r)})),n},t.dlgtbl=(e,n,o)=>{o=o||{};let i=t.easytbl(e,o);t.dlg(i,$.extend({title:n},o))},t.dlg=function(t,n){n=n||{};let o=$("body > .modal").length>0,i=t=>typeof n[t],r=t=>"function"===i(t);if(!0===bool(n.exclusive,!0)&&!0===o)return void alert($t.dbldlg||"Es ist bereits ein Dialog geöffnet");let s=$$.dc("modal",$("body")),a=$$.dc("modal-dialog",s);!1===isNaN(n.zindex)?s.css("zIndex",n.zindex):!0===o&&s.css("zIndex",parseInt($("body > .modal:last").cssValue("zIndex"))+200),!1===isNaN(n.zindex_min)&&s.cssValue("zIndex")').appendTo(d)),""!==ne(n.title)&&(c=$$.dc("modal-header",d),$("

      ").text(n.title).appendTo(c));let p=$$.dc("modal-body",d),f=$$.dc("modal-footer",d);t instanceof jQuery==!0&&p.append(t);let m=function(t){t&&"function"==typeof t.stopPropagation&&t.stopPropagation(),a.removeClass("in"),!0===r("closing")&&n.closing.call(d),p.hide().emptyWithEditors(),s.remove(),!0===r("close")&&n.close.call(d)};if(d.find(":input[required]").length>0&&($$.dc("note_required",f).append($$.sc("ind_required","*")).append($$.s($t.t1||"Eingabe erforderlich")),$$.dc("note_invalid",f).append($$.s($t.t2||"Bitte überprüfen Sie Ihre Eingaben im Formular."))),!0===r("cancel")){$$.bbtn(n.cancelbutton||"Abbrechen","cancel").attr({type:"button",role:"cancel"}).appendTo(f).click((function(t){n.cancel.call(d,t);t.stopPropagation(),m()}))}if(!0===r("confirm")){let t=$$.bbtn(n.button||"OK","confirm").attr({type:!0===bool(n.form,!1)?"submit":"button",role:"confirm"}).appendTo(f);!0===h?(d.submit((function(t){try{n.confirm.call(d,t)}finally{t.preventDefault()}return!1})),d.on("modal_submit",(function(){n.confirm.call(d,e)}))):(t.click((function(t){n.confirm.call(d,t);t.stopPropagation()})),d.on("modal_submit",(function(){t.click()})))}else!0===h&&d.submit((function(t){return t.preventDefault(),!1}));return d.on("modal_close",(function(){m()})),l.click(m),!0===r("opening")&&n.opening.call(d),a.addClass("in"),ne(n.mode).indexOf("maxbody")>-1&&p.css("min-height",(u.height()-c.outerHeight()-f.outerHeight()).toString()+"px"),!0===r("open")&&n.open.call(d),{hd:c,bdy:p,ft:f,ct:u,dlg:a,c:d}},t.mform=function(e){let n=$$.dc("form-body"),o=Array.isArray(e)?e:e instanceof fields_definition?e.fields:[];return $.each(o||[],(function(e,o){let i=o.type||"";if("ignore"===i)return!0;let r=$$.dc("form-group",n),s=o.id||"dlg_"+(o.name||"")+("html"===o.type?"_"+(65536*(1+Math.random())||0).toString(16).substr(9):""),a=$$.lbl(o.label||o.name,{for:s}).appendTo($$.dc("form-itm",r)),c=$$.dc("form-itm",r),l=$$.i({id:s,name:o.name,placeholder:o.placeholder,type:o.type});switch(i){case"email":o.pattern=ne(o.pattern,"[a-z0-9._%+-]+@[a-z0-9.-]+\\.[a-z]{2,}$");break;case"url":o.pattern=ne(o.pattern,"https?://.+");break;case"number":o.pattern=ne(o.pattern,"[-+]?[0-9]*[.,]?[0-9]*"),l.attr("step",o.precision||"any"),l.attr("data-format","float");break;case"integer":case"int":o.pattern=ne(o.pattern,"[-+]?[0-9]*"),l.attr("type","number"),l.attr("data-format","integer");break;case"date":if(""!==ne(o.pattern,$t.datepattern)&&(o.pattern=ne(o.pattern,"("+$t.datepattern+")|([0-9]{4}.(0[1-9]|1[012]).(0[1-9]|1[0-9]|2[0-9]|3[01]))")),""!==ne(o.placeholder,$t.dateplaceholder)&&l.attr("placeholder",ne(o.placeholder,$t.dateplaceholder)),"string"==typeof o.value){var u=o.value.substr(0,10);o.value="date"!==l.prop("type")?fdt(u+"T00:00:00",ne(o.dateformat,$t.dateformat)):u}l.attr("data-format","date:"+ne(o.dateformat,$t.dateformat)+";yyyy-MM-dd");break;case"datetime":l.attr("type","datetime-local"),""!==ne(o.pattern,$t.datetimepattern)&&(o.pattern=ne(o.pattern,"("+$t.datetimepattern+")|([0-9]{4}-(0[1-9]|1[012])-(0[1-9]|1[0-9]|2[0-9]|3[01])\\s([0-5][0-9]):([0-5][0-9]))")),""!==ne(o.placeholder,$t.datetimeplaceholder)&&l.attr("placeholder",ne(o.placeholder,$t.datetimeplaceholder)),"string"==typeof o.value&&"T"===o.value.substr(10,1)&&(o.value="datetime"!==l.prop("type").substr(0,8)?fdt(o.value,ne(o.datetimeformat,$t.datetimeformat)):o.value),l.attr("data-format","datetime:"+ne(o.datetimeformat,$t.datetimeformat)+";yyyy-MM-dd HH:mm:ss");break;case"hidden":r.addClass("hd");break;case"html":case"text":l=$$.txt({id:s,name:o.name,placeholder:o.placeholder,type:o.type}),l.tC("tinymce","html"===o.type);break;case"bool":case"boolean":o.url=[{value:"true",label:($t||{}).true||"Yes"},{value:"false",label:($t||{}).false||"No"}],"boolean"==typeof o.value&&(o.value=o.value?"true":"false");case"select":l=$$.sel({id:s,name:o.name,type:o.type}),!1===bool(o.required,!1)&&$$.eOpt().appendTo(l);try{var d=function(t){!0===Array.isArray(t)&&$.each(t,(function(t,e){"string"==typeof e?$$.opt(e,e).appendTo(l):!0===Array.isArray(e)?$$.opt(e[0],e[1]).appendTo(l):"object"==typeof e&&$$.opt(e.value,e.label||e.text).appendTo(l)}))};!0===Array.isArray(o.url)?d(o.url):"function"==typeof o.url?o.url.call(l):"string"==typeof o.url&&t.postXT({url:o.url,success:d})}catch(t){$.noop()}break;default:""!==ne(o["max-length"])&&l.attr("max-length",o["max-length"])}""!==ne(o.pattern)&&l.attr("pattern",o.pattern),l.val(o.value).change(),l.change((function(){$(this)[0].setCustomValidity("")})),l.addClass("form-control").prop("required",bool(o.required,!1)).prop("readonly",bool(o.readonly,!1)).appendTo(c),!0===bool(o.required,!1)&&a.append($$.sc("ind_required","*")),"object"==typeof o.attr&&l.attr(o.attr),"object"==typeof o.prop&&l.prop(o.prop),"string"==typeof o.class&&l.addClass(o.class),"function"==typeof o.change&&(l.change(o.change),!0===bool(o.applychange,!1)&&void 0!==o.value&&l.change()),""!==(o.note||"")&&$$.dc("form-note",c).rwText(o.note),"function"==typeof o.complete&&o.complete.call(l)})),n},t.initMCE=function(t,e){t=$(t),e=e||{};try{let n={target:t[0],inline:!1,width:e.width||"100%",statusbar:!1,document_base_url:window.location.origin+"/",content_style:"ph:before {content: '«'; color: #BBB; font-style:italic; } ph:after {content: '»'; color: #BBB; font-style:italic; } ph { color: #AAA; font-style:italic; }",relative_urls:!1,remove_script_host:!1};!0===bool(e.hidemenu,!1)&&(n.menubar=!1,n.menu={}),!0===bool(e.hidetoolbar,!1)&&(n.toolbar=!1),$.extend(n,e||{}),tinymce.init(n)}catch(t){alert(t.message)}},t.dlgform=function(e,n){n=n||{};let o,i=$$.dc("frm").append(t.mform(e||[]).addClass("stacked"));n.addcontent instanceof jQuery&&i.append(n.addcontent),"function"==typeof n.submit?o=n.submit:"function"==typeof n.success&&(o=function(e){var o=$(this).ldng(1),i=$.extend({loginaccount:t.auth.account||""},o.serializeObject(bool(n.checkvalidity,!0),{typedvalues:bool(n.typedvalues,!1)}));""!==(n.url||"")?t.postXT({url:n.url,data:i,success:function(t){n.success.call(this,t),o.trigger("modal_close")},error:function(){alert($t.l17)},complete:function(){o.ldng(0)},timeout:6e4}):(n.success.call(this,i),o.trigger("modal_close"))});let r={form:!0,title:n.title||"",button:n.button||$t.submit,confirm:o,size:n.size||[500,600],open:function(){let e=$(this).find(".tinymce");e.length>0&&t.initMCE(e,n.tinymce||{})}};return t.dlg.call(this,i,r)},t.login.dlg=function(e){e=e||{};let n=[{name:"userinfo",label:$t.l1,type:"string",value:t.auth.login,change:t.login.uichange,required:!0},{name:"userlogin",type:"hidden",required:!0,value:t.auth.login},{name:"username",type:"string",label:$t.l4,required:!0,readonly:!0,placeholder:$t.l5,value:t.auth.fullname_rev},{name:"userpass",type:"password",label:$t.l3,required:!0,placeholder:$t.l3}];""===(t.auth.account||"")&&n.unshift({id:"dlg_loginaccount",name:"loginaccount",type:"string",required:!0,value:t.auth.account});let o=$$.dc("frm").append(t.mform(n).addClass("stacked")),i=t.dlg.call(this,o,{form:!0,title:$t.l0,button:$t.submit,confirm:function(n){var o=$(this).ldng(1),i=$.extend({loginaccount:t.auth.account||""},o.serializeObject());t.postXT({url:"/vt/login",data:i,success:function(n){""!==((n||{}).login||"")&&(o.trigger("modal_close"),t.auth=n,"object"==typeof e.ajo&&(e.ajo.islogin,$.ajax(e.ajo)))},error:function(){alert($t.l17)},complete:function(){o.ldng(0)},timeout:6e4})},size:[500,600]}),r=$$.dc("modal-content").css("height","auto").attr("novalidate","true").append($$.dc("modal-header").appendIf($("

      ").text(t.auth.accountname),""!==(t.auth.accountname||"")).append($("

      Vereinsmanager

      ")));i.dlg.prepend(r)},t.addNoEntryInfo=function(t){$(this).append($$.dc("noentryinfo").text(t||$t.t11))}}($ocms),Element.prototype.matches||(Element.prototype.matches=Element.prototype.msMatchesSelector||Element.prototype.webkitMatchesSelector),Element.prototype.closest||(Element.prototype.closest=function(t){var e=this;do{if(Element.prototype.matches.call(e,t))return e;e=e.parentElement||e.parentNode}while(null!==e&&1===e.nodeType);return null}),function(t,e){var n,o;"object"==typeof window&&(window[t]=(n=function(t){var e=window,n=document.body,o=document.documentElement,i=Math.max(0,e.pageXOffset||o.scrollLeft||n.scrollLeft||0)-(o.clientLeft||0),r=Math.max(0,e.pageYOffset||o.scrollTop||n.scrollTop||0)-(o.clientTop||0);return{x:t?Math.max(0,t.pageX||t.clientX||0)-i:0,y:t?Math.max(0,t.pageY||t.clientY||0)-r:0}},(o=function(t,e){t&&t instanceof Element&&(this._container=t,this._options=e||{},this._clickItem=null,this._dragItem=null,this._showDragItem="boolean"!=typeof this._options.dragItem||!1!==this._options.dragItem,this._hovItem=null,this._sortLists=[],this._click={},this._dragging=!1,this._dragHandleClass=this._options.dragHandleClass||"",this._parentident=this._options.parentident||"",this._swapdone="function"==typeof this._options.swapdone?this._options._swapdone:null,this._container.setAttribute("data-is-sortable",1),this._container.classList.add("sortable"),this._container.style.position="static",window.addEventListener("mousedown",this._onPress.bind(this),!0),window.addEventListener("touchstart",this._onPress.bind(this),!0),window.addEventListener("mouseup",this._onRelease.bind(this),!0),window.addEventListener("touchend",this._onRelease.bind(this),!0),window.addEventListener("mousemove",this._onMove.bind(this),!0),window.addEventListener("touchmove",this._onMove.bind(this),!0))}).prototype={constructor:o,toArray:function(t){t=t||"id";for(var e=[],n="",o=0;oo.left&&eo.top&&n-1)&&e.className.indexOf("nosort")<0)&&(t.preventDefault(),this._dragging=!0,this._click=n(t),this._makeDragItem(e),this._onMove(t),!0)}t&&!1===e.call(this,t.target)&&""!==this._parentident&&t.target.closest(this._parentident)&&e.call(this,t.target.closest(this._parentident))},_onRelease:function(t){this._dragging=!1,this._trashDragItem()},_onMove:function(t){if(this._dragItem&&this._dragging){t.preventDefault();var e=n(t),o=this._container;!0===this._showDragItem&&this._moveItem(this._dragItem,e.x-this._click.x,e.y-this._click.y);for(var i=0;i0?a.mousedown(c).addClass("dctrl"):s.mousedown(c).addClass("dctrl"),t(this)}}(jQuery),$(document).ready((function(){$("html").click((function(t){$nuf()})),$("#listframe").click((function(t){t.stopPropagation(),$nuf()})),$("#mainmenu").ocmsmenu($ocms.ocmsmenu),$("#mainmenu").activatemenu()})),$.extend($t,{m_inv:"Rechnungen",m_req:"Aufträge",m_rep:"Berichte",m_todo:"ToDos",m_bcd:"BankBuchungen",rsp:"Passwort ändern",pnm:"Die Passwörter stimmen nicht überein",cps:"Das neue Passwort wurde gespeichert.",pwr:"Bitte wählen Sie ein starkes Passwort (min 8 Zeichen, davon jeweils min 2 Zahlen, kleine und große Buchstaben, Sonderzeichen sind optional).",smsc:"Sie beötigen für diese Funktion einen SMS-Code.\nSoll dieser nun versandt werden?",wdc:"Doppelt klicken, um die Box zu aktualisieren.",wdg:{}}),$t.rspf={sms:"Der SMS-Code konnte nicht bestätigt werden",valid:"Das alte Passwort ist nicht korrekt",requirements:"Das Passwort entspricht nicht den Anforderungen.\n"+$t.pwr},$fd={rsp:new fields_definition("","",[{name:"opw",label:"aktuelles Passwort",type:"password",required:!0,attr:{"auto-complete":"current-password"}},{name:"npw",label:"neues Passwort",type:"password",required:!0,pattern:"(.{6,})",attr:{"auto-complete":"new-password"}},{name:"npwc",label:"neues Passwort (Bestätigung)",type:"password",required:!0,attr:{"auto-complete":"new-password"},note:$t.pwr},{name:"code",label:"SMS-Code",type:"string",required:!0,attr:{"auto-complete":"one-time-code"}}])},$ocms.init=function(t){var e="string"==typeof t?t:(t.data||{}).fn||"";""!==e&&("home"===e?($cfr(),$lfr(),$("#topbar").ocmsmenu([],!0),$("#activemodule").text($t.ov),$fis.ov()):($cfr(),$lfr(),$("#topbar").ocmsmenu([]),$ocms.postXT({url:$ocms.url(e+"/auth"),success:function(t){void 0===$ocms[e]&&($ocms[e]={}),$ocms[e].auth=t,t.manage>0&&$ocms.getScript({module:e,script:["/web/fis",e,$ocms.auth.locale||"de","js"].join("."),css:["/web/fis",e,"css"].join("."),condition:"function"!=typeof $ocms[e].init2},(function(){$ocms[e].init2()}))},error:function(){$("#contentframe").empty()}})))};var $fis={auth:{},db:function(){$("#mainmenu_activemodule").text($t.ov);let t=$(this).empty(),e=$$.d({id:"dashboard_frame"}).appendTo(t);$ocms.postXT({url:$ocms.url("wdg/my"),success:function(t){$.each(t,(function(t,n){var o=$$.dc("wdg_frame",e,{"data-wdg":n}).ldng(1);$ocms.wdg.call(o,{wdg:n})}))},loading:e})},ValidateEmail:function(t){return!!/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)*$/.test(t)},cf:t=>{let e=$("#contentframe");return!0===bool(t,!1)&&e.empty().rC("hd"),e},lf:t=>{let e=$("#listframe");return!0===bool(t,!1)&&e.empty().aC("hd").rC("fix"),e},frm_edit:function(t){let e=$fis.cf(!1),n=e.children(".cfrm"),o=e.children(".edit_frm");return n.length<1?n=$$.dc("cfrm hd").prependTo(e):!0===bool(t,!1)&&n.empty(),o.length<1&&(o=$$.dc("edit_frm").insertAfter(n)),o.empty()},frm_list:function(t,e){let n=$fis.cf(!1),o=n.children(".cfrm"),i=n.children(".list_frm");return o.length<1?o=$$.dc("cfrm hd").prependTo(n):!0===bool(t,!1)&&o.empty(),!0===bool(e,!1)&&n.children(".edit_frm").remove(),i.length<1&&(i=$$.dc("list_frm").appendTo(n)),i.empty()},lfm:()=>{let t=$fis.lf(!1),e=t.children(".lfrm");return e.length<1&&(e=$$.dc("lfrm").prependTo(t)),e},getAuth:(t,e)=>new Promise(((n,o)=>{$fis.auth[t]&&!1===bool(e,!1)?n($fis.auth[t]||-1):$ocms.postXT({url:$ocms.url("auth"),data:{module:t},success:e=>{$fis.auth[t]=e.auth||-1,n($fis.auth[t]||-1)},error:()=>{o()}})})),prepAuth:t=>new Promise(((e,n)=>{$ocms.postXT({url:$ocms.url("auth"),data:{module:t,array:1},success:t=>{$.extend($fis.auth,t||{})},complete:()=>{e()}})})),isAuth:(t,e)=>($fis.auth[t]||-1)>=(e||1),resetPass:function(t,e){confirm($t.smsc)&&($ocms.postXT({url:$ocms.url("account/sms"),data:{fn:"pwc"}}),$ocms.dlgform($fd.rsp.clone(),{title:$t.rsp||"",submit:function(t){var e=$(this).ldng(1),n=$.extend({loginaccount:$ocms.auth.account||""},e.serializeObject(!0,{typedvalues:!0}));(n.npw||"")!==(n.npwc||"")?e.find('input[name="npw"]:first')[0].setCustomValidity($t.pnm):$ocms.postXT({url:$ocms.url("account/changepassword"),data:n,success:function(t){alert($t.cps),e.trigger("modal_close")},error:function(t){alert($t.rspf[t.getResponseHeader("x-ocms-std")])},complete:function(){e.ldng(0)},timeout:6e4})}}))},wdg:function(t){let e=$(this).empty();$ocms.postXT({url:$ocms.url("wdg/one"),data:{short_name:t.wdg},timeout:9e4,success:function(n,o,i){let r=t.wdg,s=n[r];if(!s)return void e.ldng(0);let a=$.inArrayRegEx("dblwidth",s.rendering_options)>-1,c=$.inArrayRegEx("tiny",s.rendering_options)>-1;e.toggleClass("dbl",a&&!c).toggleClass("tny",c);$$.dc("wdg_hd",e,{title:ne(s.description,$t.wdc)}).toggleClass("dbl",a).text(ne(s.name,t.wdg)).dblclick((function(t){t.stopPropagation(),$fis.wdg.call(e,{wdg:r})}));let l=$$.dc("wdg_cnt",e).toggleClass("dbl",a).hide(),u=$.inArrayRegEx("bgcolor",s.rendering_options);switch(u>-1&&l.css("backgroundColor",s.rendering_options[u].toString().right(":")),s.type){case"table":var d=$$.tblset({},l),h=$$.tr().appendTo(d.hd),p=$t.wdg[r.indexOf("wdg_ev_")>=0?"wdg_ev_":r]||{};$.each(s.columns,(function(t,e){var n=p[e]?p[e].label:e;$$.th().text(n).appendTo(h)})),$.each(s.data,(function(t,e){var n=$$.tr().appendTo(d.bdy);$.each(s.columns,(function(t,o){var i=$$.td().appendTo(n);e[o]instanceof Date||!0===$ocms.isJSONDateString(e[o])?i.text(fdt(e[o],$t.dateformat)):i.rwText(e[o])}))})),$.inArray("firstrow_bold",s.rendering_options)>-1&&h.nextAll("tr:first").css("font-weight","bold");break;case"ind":$$.dc("ind",l).addClass("sts_"+(s.data.status||"")).append([$$.dc("ind").text(s.data.value),$$.lbl(s.data.label)]);break;case"image_url":l.css("background","url('"+s.url+"') no-repeat center center transparent");break;case"image_base64":l.css("background","url('data:image/png;base64,"+s.image+"') no-repeat center center transparent");break;case"html":if(l.html(s.html),$.inArray("reload_10min",s.rendering_options)>-1){var f=l.find("iframe");setTimeout((function(){f.attr("src",(function(t,e){return e}))}),6e5)}}$.inArray("reload_30min",s.rendering_options)>-1&&"html"!==s.type&&setTimeout((function(){$fis.wdg.call(e,{wdg:r})}),18e5),l.slideDown(150)},error:function(t){e.slideUp(150),$fis.failure.call(this,t)},complete:function(){e.ldng(0)}})},ov:function(){$fis.lf(!0);let t=$("#contentframe").empty(),e=$$.d({id:"dashboard_frame"}).appendTo(t);$ocms.postXT({url:$ocms.url("wdg/my"),success:function(t){$.each(t,(function(t,n){var o=$$.dc("wdg_frame",e,{"data-wdg":n}).ldng(1);$fis.wdg.call(o,{wdg:n})}))},loading:e})}};$fis.notifications={connection:null,init:function(){"undefined"!=typeof signalR&&null===this.connection&&$ocms.auth.useraccount_id&&(this.ensureFrame(),this.connection=(new signalR.HubConnectionBuilder).withUrl("/notifications").withAutomaticReconnect().build(),this.connection.on("notification",(t=>{this.push(t)})),this.connection.start().catch((()=>{this.connection=null})))},ensureFrame:function(){$("#notification_frame").length<1&&$("
      ",{id:"notification_frame"}).appendTo($("footer:first").length?"footer:first":"body")},push:function(t){this.ensureFrame(),t=t||{};let e=$("
      ",{class:"notification_item"}).addClass((t.severity||"info").toLowerCase()).append($("
      '),n=e.find(".form-body"),o=null;e.find("form").submit((function(t){t.preventDefault();var i=$(this).serializeObject(!0),r=null===o,s=r?"spwc":"spw";return $ocms.postXT.call(this,{url:$ocms.url(s),data:i,complete:function(){r?(n.append('
      Ihnen wurde ein Code per SMS zugesandt.
      Bitte tragen Sie den hier ein:
      '),o=$('
      ').appendTo(n)):(alert($t.l13),e.remove())},error:()=>{}}),!1})),e.find(".modal-close").click((function(){e.remove()}));var i=[];$.each($t.l7a.split("\n"),((t,e)=>{Array.prototype.push.apply(i,[$("
      "),$("").text(e)])})),e.find(".modal-note").append($('').text($t.alert)).append(i),e.appendTo("body"),setTimeout((function(){$(".modal").find('input[name="lastname"]').focus()}),600)}};var $$={s:function(t){return $("").text(t)},br:function(){return $("
      ")},sc:function(t,e){return $("").addClass(t).text(e)},td:function(t,e){var n=$("");return t instanceof jQuery==!0?n.appendTo(t):"object"==typeof t?n.attr(t):"string"==typeof t&&n.text(t),"object"==typeof e?n.attr(e):"string"==typeof e&&n.text(e),n},th:function(t,e){var n=$("");return t instanceof jQuery==!0?n.appendTo(t):"object"==typeof t?n.attr(t):"string"==typeof t&&n.text(t),"object"==typeof e?n.attr(e):"string"==typeof e&&n.text(e),n},tdc:function(t,e,n){return $$.td(e,n).addClass(t)},td2:function(t){var e=$('');return"string"===$.type(t)?e.text(t):t instanceof jQuery?e.append(t):"function"==typeof t?t.call(e):e.html(" "),e},td3:function(t){var e=$('');return"string"===$.type(t)?e.text(t):t instanceof jQuery?e.append(t):"function"==typeof t?t.call(e):e.html(" "),e},tdtr:function(t,e){var n=$$.tr().appendTo(e);return t instanceof jQuery==!0||"string"==typeof t?t.appendTo($$.td().appendTo(n)):!0===Array.isArray(t)&&$.each(t,(function(t,e){$(e).appendTo($$.td().appendTo(n))})),n},tr:function(t,e){var n=$("");return t instanceof jQuery==!0?n.appendTo(t):"object"==typeof t&&n.attr(t),"object"==typeof e&&n.attr(e),n},trc:function(t,e){var n=$("").addClass(t);return e instanceof jQuery==!0?n.appendTo(e):"object"==typeof e&&n.attr(e),n},d:function(t){return $("
      ").attr(t||{})},dc:function(t,e,n,o){var i=$("
      ").addClass(t);return e instanceof jQuery==!0?i.appendTo(e):"object"==typeof e?i.attr(e):"function"==typeof e?i.click(e):"string"==typeof e&&i.text(e),"string"==typeof n?i.text(n):"object"==typeof n?i.attr(n):"function"==typeof n&&i.click(n),"string"==typeof o?i.text(o):"object"==typeof o?i.attr(o):"function"==typeof o&&i.click(o),i},df:function(t){return $("
       
      ").attr(t||{})},opt:function(t,e,n){var o=$("");return"string"==typeof t?o.attr("value",t):"object"==typeof t&&o.attr(t),"string"==typeof e?o.text(e):"object"==typeof e&&o.attr(e),"object"==typeof n&&o.attr(n),o},eOpt:function(t){var e=$('');return t&&e.attr("selected","selected"),e},tbl:function(t){return $("
      ").attr(t||{})},tblc:function(t){return $("
      ").addClass(t)},thead:function(t){let e=$("");return t instanceof jQuery&&e.prependTo(t),e},tbody:function(t){let e=$("");return t instanceof jQuery&&e.appendTo(t),e},tblset:function(t,e){let n=$$.tbl(t||{});return e instanceof jQuery&&e.append(n),{tbl:n,hd:$$.thead().appendTo(n),bdy:$$.tbody().appendTo(n)}},i:function(t){return $("").attr(t||{})},img:function(t,e){return $("").attr("src",t).attr(e||{})},sel:function(t){return $("").attr(t||{})},btn:function(t){return $("").attr(t||{})},a:function(t){return $("").attr(t||{})},li:function(t){return $("
    • ").attr(t||{})},ul:function(t){return $("
        ").attr(t||{})},nav:function(t){return $("").attr(t||{})},lbl:function(t,e){var n=$("");return"string"==typeof t&&n.text(t),"object"==typeof t?n.attr(t):"object"==typeof e&&n.attr(e),n},txt:function(t){return $("").attr(t||{})},0:function(t,e){return $("<"+t+">").attr(e||{})},bbtn:function(t,e){return $$.btn({type:"button",class:"btn"}).addClass(e).text(t)},svg:t=>$(document.createElementNS("http://www.w3.org/2000/svg",t))};function getMonday(t){var e=(t=new Date(t)).getDay(),n=t.getDate()-e+(0==e?-6:1);return new Date(t.setDate(n))}function $lf(t){var e=void 0===t?null:"number"==typeof t&&1!==t||"boolean"==typeof cl&&!1===t;return $("#listframe").tC("hd",e).is(".hd")}function $nuf(t){if(t&&t.stopPropagation(),!$(this).is(".disabled")){var e=function(t){t.removeClass("vis").find("li.dropdown").removeClass("open").removeClass("vis").attr("aria-expanded","false")},n=$(this).parent("li.dropdown");if(n.length>0){n.tC("open"),navs=!0===n.is(".open")?"true":"false",n.attr("aria-expanded",navs);var o=n.closest("nav");o.find("li.dropdown").not(n.parentsUntil("nav")).not(n).removeClass("open").attr("aria-expanded","false"),!1===n.is(".open")&&n.find("li.dropdown").removeClass("open").attr("aria-expanded","false"),e($("nav").not(o))}else e($("nav"))}}function $tbr(){return $lf(0),$("#topbar").ocmsmenu([])}function $lfr(){return $("#sidebar").empty(),$("#listframe").removeClass("fix").addClass("hd").empty()}function $cfr(){return $tbr(),$("#contentframe").empty()}function jObj(t,e){let n={};if("{"===(t||"").substr(0,1))try{n=JSON.parse(t)}catch(t){n={}}return n[e]||""}function string(t,e){var n,o=t||"";return $.each(e||[],(function(t,e){n=new RegExp("\\{"+t.toString()+"\\}","ig"),o=o.replace(n,e)})),o}function init_tooltip(t){var e=!0===("boolean"==typeof t&&t)&&"mouse";$("[title]").qtip({position:{target:e,adjust:{x:2,y:2},viewport:!0},events:{hidden:$ocms.tooltip_hidden},effect:!1}),$("div.tooltiptext").each((function(){$(this).filter(":not(:empty)").parent().qtip({suppress:!1,content:{text:$(this).clone()},position:{target:e,adjust:{x:2,y:2},viewport:!0},events:{hidden:$ocms.tooltip_hidden}})}))}String.prototype.trim=function(){return this.replace(/^\s+|\s+$/g,"")},String.prototype.left=function(t){if("string"===$.type(t)){var e=this.indexOf(t);return e>0?this.slice(0,e):""}return this.substring(0,t)},String.prototype.right=function(t){if("string"===$.type(t)){var e=this.indexOf(t);return e>0?this.substring(this.length-e):""}return this.substring(this.length-t)},Array.prototype.move=function(t,e){if(e>=this.length)for(var n=e-this.length;1+n--;)this.push(void 0);return this.splice(e,0,this.splice(t,1)[0]),this},function(t){t.fn.appendToIf=function(e,n){var o=t(this),i="function"==typeof n?n(o):n;return!0===("boolean"!=typeof i||i)&&o.appendTo(e),o},t.fn.appendIf=function(e,n){var o=t(this),i="function"==typeof n?n(o):n;return!0===("boolean"!=typeof i||i)&&o.append(e),o},t.fn.rwText=function(e,n,o){var i=t(this).empty();o=t.extend({wrap:!0},o);var r=!0===Array.isArray(e)?e:(null==e?"":String(e)).split("\n");return t.each(r,(function(t,e){""!==(e||"")&&(t>0&&i.append($$.br()),i.append(!0===o.wrap?$$.s(e):e))})),n&&i.attr("title",n),i},t.fn.loadSel=function(e,n,o){if("SELECT"===t(this).prop("tagName").toUpperCase()){var i=t(this);$ocms.postXT.call(this,{url:e,data:n||{},success:function(e){t.each(e,(function(){i.append($$.opt(e.value,e.text))}))},complete:function(){i.ldng(0),"function"==typeof o&&o.call(i)}})}},t.fn.emptyWithEditors=function(e){var n=t(this);return n.find(":input.tinymce").each((function(e,n){try{var o=tinymce.get(t(n).attr("id"));o&&o.remove()}catch(e){t.noop()}})),n.empty()},t.fn.cssValue=function(t){if(this.length>0){var e=this.css(t)||"";if(""===e)return 0;var n=/(^[\d\.]*)(\D{1,3}$)/gi.exec(e);return null!==n?"rem"===n[2]?$ocms.rpx(parseFloat(n[1])):parseFloat(n[1]):!1===isNaN(e)?parseFloat(e):0}return 0},t.fn.veryInnerHeight=function(){let e=e=>t(this).cssValue(e);return t(this).innerHeight()-e("padding-top")-e("padding-bottom")},t.fn.veryInnerWidth=function(){let e=e=>t(this).cssValue(e);return t(this).innerWidth()-e("padding-left")-e("padding-right")},t.fn.marginWidth=function(){let e=e=>t(this).cssValue(e);return e("margin-left")+e("margin-right")},t.fn.marginHeight=function(){let e=e=>t(this).cssValue(e);return e("margin-top")+e("margin-bottom")},t.inArrayRegEx=function(e,n,o){var i="regexp"===t.type(e)?e:new RegExp(e);if(!n)return-1;for(var r=o=o||0;r7){o=e.split(","),i=(n||(t<0?"rgb(0,0,0)":"rgb(255,255,255)")).split(",");var c=a(o[0].slice(4)),l=a(o[1]),u=a(o[2]);return"rgb("+(s((a(i[0].slice(4))-c)*r)+c)+","+(s((a(i[1])-l)*r)+l)+","+(s((a(i[2])-u)*r)+u)+")"}var d=(o=a(e.slice(1),16))>>16,h=o>>8&255,p=255&o;return"#"+(16777216+65536*(s((((i=a((n||(t<0?"#000000":"#FFFFFF")).slice(1),16))>>16)-d)*r)+d)+256*(s(((i>>8&255)-h)*r)+h)+(s(((255&i)-p)*r)+p)).toString(16).slice(1)},t.fn.IN=function(e){return t(this).fadeIn(400,e),t(this)},t.fn.OUT=function(e){return t(this).fadeOut(400,e),t(this)},t.fn.tooltip=function(e,n){var o=!0===("boolean"==typeof e&&e)&&"mouse",i="boolean"==typeof n&&n,r=t(this);return r.each((function(){var e=i?t(this).find(".tooltiptext"):t(this).children(".tooltiptext");t(e).length>0?e.each((function(){var e=t(this);t(this).filter(":not(:empty)").parent().qtip({suppress:!1,content:{text:e.clone()},position:{target:o,adjust:{x:2,y:2},viewport:!0},events:{hidden:$ocms.tooltip_hidden},show:{effect:!1},hide:{effect:!1}}),e.remove()})):t(this).qtip({position:{target:o,adjust:{x:2,y:2},viewport:!0},events:{hidden:$ocms.tooltip_hidden},effect:!1})})),r},t.fn.rC=function(e){return t(this).removeClass(e)},t.fn.aC=function(e){return t(this).addClass(e)},t.fn.tC=function(e,n){return t(this).toggleClass(e,n)}}(jQuery),function(t){t.fn.ocmsmenu=function(e,n){var o=t(this);return $ocms.menu.call(o,e,n),o},t.fn.activatemenu=function(){var e=t(this).filter("nav");return e.find("a").not(".on").addClass("on").click($nuf),e.find(".nav-btn").not(".on").addClass("on").click((function(e){e.stopPropagation();var n=t(this);t(n.attr("data-target")).tC(n.attr("data-toggle"))})),e}}(jQuery);class ObjectArray extends Array{isEmpty(){return 0===this[0].length}static get[Symbol.species](){return Array}filter(t){return"function"==typeof t?new ObjectArray(this[0].filter(t)):this}remove(t){if("function"!=typeof t)return this;{let e=this[0].findIndex(t);for(;e>-1;)this[0].splice(e),e=this[0].findIndex(t)}}sortBy(t){return"function"==typeof t&&this[0].sort(t),this}sortString(t){return this[0].sort(((e,n)=>{let o=(e[t]||"").toString().toUpperCase(),i=(n[t]||"").toString().toUpperCase();return console.debug(o.localeCompare(i)),o.localeCompare(i)})),this}sortNum(t){return this[0].sort(((e,n)=>{let o=e[t],i=n[t];return!0===isNaN(i)&&!1===isNaN(o)||oi?1:0})),this}sum(t){return this[0].reduce(((e,n)=>e+(!0===isNaN(n[t])?0:n[t])),0)}groupBy(t){return this[0].reduce((function(e,n){let o=n[t];return e[o]||(e[o]=[]),e[o].push(n),e}),{})}each(t){if("function"==typeof t){let e=!1;this[0].forEach(((n,o,i)=>{if(!1===e){let r=t(n,o,i);"boolean"==typeof r&&!1===r&&(e=!0)}}))}}get toArray(){return this[0]}}class NumArray extends Array{sum(){return this.reduce(((t,e)=>t+e))}first(){return this[0]}last(){return this[this.length-1]}average(){return this.sum()/this.length}range(){let t=this.map((t=>t)).sort();return{min:t[0],max:t[this.length-1]}}static get[Symbol.species](){return Array}}$ocms.ocmsmenu=[{lbl:"",id:"m_home",ico:"glyphicon glyphicon-home",fnc:"init:home"},{fnc:"separator"}],function(t){t.multline=function(t){let e=t.split("\n"),n=$$.d();return $.each(e,((t,e)=>{n.append($$.s(e))})),n.html()},t.tooltip_hidden=function(t,e){$(this).remove(),e.rendered=!1},t.isJSONDateString=function(t){return"string"==typeof t&&/^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2}(\.\d+)?(Z|[+-]\d{2}:\d{2})?)?$/.test(t)},t.failure=function(e){11110===(e.internalCode||-1)?t.login.dlg():alert($t.f1+"\n"+(e.internalText||""))},t.getScript=function(e,n){var o=[],i=[],r=function(t){return"string"==typeof t&&""!==(t||"")},s=function(t,e){!0===bool(e.condition,!0)&&(""!==(e.script||"")&&i.push({url:e.script,module:e.module||""}),!0===r(e.css||"")?o.push(e.css):!0===Array.isArray(e.css)&&Array.prototype.push.apply(o,e.css.filter(r)))};!0===r(e||"")?i.push(e):!0===Array.isArray(e)?$.each(e,s):"object"==typeof e&&""!==(e.script||"")&&s(0,e);let a=[];$.each(o,(function(t,e){""!==(e||"")&&a.push(loadCSS(e))}));let c=i.map((function(e,n){let o=e.url,r=e.module||"";if(""===r){let t=new Promise((function(t,e){try{!async function(){$.ajax({url:o,dataType:"script",success:function(){t(i)},error:function(){e(i)},timeout:3e4})}()}catch(t){console.debug(t.message+"%o",t)}}));return t}return t.loadmodule(r,o,e.alias)}));Promise.all(c).then(n)},t.loadmodule=function(e,n,o){let i=new Promise((function(i,r){!async function(){try{let s=(n.startsWith("/")||n.startsWith(".")?"":"/")+n;import(s).then((n=>{t[e]=n[o||"default"],i(e)})).catch((t=>{console.debug(t.message+"%o",t),r(e)}))}catch(t){console.debug(t.message+"%o",t)}}()}));return i},t.ocms_auth=function(e,n,o,i){!1===$.isPlainObject(t.auth.modules)&&(t.auth.modules={});var r=0;t.auth.modules[e+(o||"")]?((r=t.auth.modules[e+(o||"")])<2&&(o||"")===auth.guid&&(r=2),r>=(n||0)&&i(false)):t.postXT({url:t.url("auth"),data:{module:e,person_guid:o||""},success:function(s){r=s[e],t.auth.modules[e+(o||"")]=r,r<2&&(o||"")===t.auth.person_guid&&(r=2),r>=(n||0)&&i(false)},error:function(e){t.failure.call(this,e)}})},t.auth.locale="de",t.ocms_prepauth=function(e,n,o){t.postXT({url:t.url("auth"),data:{fn:"csv",modules:e,person_guid:n||""},success:function(e){t.ocms_regauth(e)},error:function(e){t.failure.call(this,e)},complete:function(){o()}})},t.ocms_regauth=function(t){$.each(t||{},(function(t,e){auth.modules[t]=parseInt(e)}))},t.init=function(e){var n="string"==typeof e?e:(e.data||{}).fn||"";""!==n&&("home"===n?($cfr(),$lfr(),$("#topbar").ocmsmenu([],!0),$("#activemodule").text($t.ov),t.ov.call($("#contentframe"))):($cfr(),$lfr(),$("#topbar").ocmsmenu([]),t.postXT({url:t.url(n+"/auth"),success:function(e){void 0===t[n]&&(t[n]={}),t[n].auth=e,e.manage>0&&t.getScript({module:n,script:["web/imdl",n,t.auth.locale||"de","js"].join("."),css:["web/imdl",n,"css"].join("."),condition:"function"!=typeof t[n].init2},(function(){t[n].init2()}))},error:function(){$("#contentframe").empty()}})))},t.menuarray=function(t){this.array=[],this.sep=function(){this.length>0&&"separator"!==this.array[array.length-1].fnc&&this.push({fnc:"separator"})},this.push=function(t){return void 0===t?null:(!0===Array.isArray(t)?Array.prototype.push.apply(this.array,t):"object"==typeof t&&this.array.push(t),t)},this.unshift=function(t){return void 0===t?null:(!0===Array.isArray(t)?Array.prototype.unshift.apply(this.array,t):"object"==typeof t&&this.array.unshift(t),t)},this.push(t)},t.menu=function(e,n){e=e||[];var o=$(this).removeClass("vis");if(!0===bool(n,!0)&&!1===o.is("#mainmenu")&&o.empty(),!1===bool(n,!1)&&o.is("#sidebar,#topbar")&&(e.unshift({id:"sbctrl",glyph:"glyphicon-th-list",aclass:"fbtn",fnc:function(){$lf()}}),$lf(0)),0===(e||[]).length)o.empty().addClass("hd");else{o.removeClass("hd");var i=!0===o.is("nav")?o:o.children("nav");1!==i.length&&(i=$("").tC("nv",o.is("#sidebar")).tC("ctxt",o.is("#topbar")).appendTo(o));var r,s=$$.ul().appendTo(i),a=function(t,e){var n=$(this).addClass("dropdown submenu");t.append($$.sc("caret dd")).addClass("dds dropdown-toggle").attr({"aria-expanded":"false"}),""!==(e.ico||"")&&t.prepend($$.sc("ico "+e.ico));var o=$$.ul({class:"dropdown-menu",role:"menu"}).appendTo(n);$.each(e.itm||[],(function(t,e){r.call(o,e)}))},c=function(t){$(this).tC("disabled","boolean"==typeof t.disabled?t.disabled:"string"==typeof t.disabled&&"subs"===t.disabled&&0===(t.itm||[]).length)};r=function(e){var n,o=$$.li({id:e.id}).attr(e.attr||{}).addClass(e.lclass).appendTo($(this)),i="string"==typeof e.fnc&&""!==e.fnc?e.fnc.split(":")[0]:"";""!==i&&"init"!==i?o.attr("role",i).appendIf($$.s(e.lbl),""!==ne(e.lbl)):(n=$$.a({class:"on",role:"button"}).addClass(e.aclass).appendTo(o).append($$.s(e.lbl)),c.call(n,e),(e.itm||[]).length>0&&a.call(o,n,e),n.click($nuf),"function"==typeof e.fnc?n.click(e.data||{},e.fnc):"init"===i&&n.click($.extend({},e.data||{},{fn:e.fnc.split(":")[1]}),t.init))},$.each(e,(function(e,n){var o,i=$$.li({id:n.id}).attr(n.attr||{}).addClass(n.lclass),a="string"==typeof n.fnc&&""!==n.fnc?n.fnc.split(":")[0]:"";if(""!==a&&"init"!==a)i.attr("role",a).appendIf($$.s(n.lbl),""!==ne(n.lbl));else{if(o=$$.a({class:"on",role:"button"}).addClass(n.aclass).appendTo(i),c.call(o,n),""!==(n.lbl||"")&&o.append($$.s(n.lbl)),""!==(n.ico||"")&&o.prepend($$.sc("ico "+n.ico)),""!==(n.glyph||"")&&o.prepend($$.sc("glyphicon "+n.glyph)),(n.itm||[]).length>0){i.addClass("dropdown"),o.append($$.sc("caret dd")).addClass("dds dropdown-toggle").attr({"aria-expanded":"false"});var l=$$.ul({class:"dropdown-menu",role:"menu"}).appendTo(i);$.each(n.itm||[],(function(t,e){r.call(l,e)}))}(n.sel||[]).length>0||(o.click($nuf),"function"==typeof n.fnc?o.click(n.data||{},n.fnc):"init"===a&&o.click($.extend({},n.data||{},{fn:n.fnc.split(":")[1]}),t.init))}i.appendTo(s)})),i.activatemenu()}},t.easytbl=(t,e)=>{e=e||{};let n=$$.tbl().addClass(e.class).css("border-collapse","collapse"),o=($$.tbody(n),!0===bool(e.frame,!1)?{padding:"5px",border:"1px solid #727272"}:{});if(!0===Array.isArray(e.header)){let t=$$.thead(n);$.each(e.header,((n,i)=>$$.th(t).css(e.cellcss||o).rwText(i)))}else if(!0===bool(e.header,!1)&&(t||[]).length>0){let i=$$.thead(n);$.each(Object.keys(t[0]),((t,n)=>$$.th(i).css(e.cellcss||o).rwText(n)))}return $.each(t||[],((t,i)=>{let r=$$.tr();$.each(i,((t,n)=>{n=n||"";let i=$$.td(r).css(e.cellcss||o);n instanceof jQuery?i.append(n):"string"==typeof n&&("<"===n.substring(0,1)?i.append(n):i.text(n))})),n.append(r)})),n},t.dlgtbl=(e,n,o)=>{o=o||{};let i=t.easytbl(e,o);t.dlg(i,$.extend({title:n},o))},t.dlg=function(t,n){n=n||{};let o=$("body > .modal").length>0,i=t=>typeof n[t],r=t=>"function"===i(t);if(!0===bool(n.exclusive,!0)&&!0===o)return void alert($t.dbldlg||"Es ist bereits ein Dialog geöffnet");let s=$$.dc("modal",$("body")),a=$$.dc("modal-dialog",s);!1===isNaN(n.zindex)?s.css("zIndex",n.zindex):!0===o&&s.css("zIndex",parseInt($("body > .modal:last").cssValue("zIndex"))+200),!1===isNaN(n.zindex_min)&&s.cssValue("zIndex")').appendTo(d)),""!==ne(n.title)&&(c=$$.dc("modal-header",d),$("

        ").text(n.title).appendTo(c));let p=$$.dc("modal-body",d),f=$$.dc("modal-footer",d);t instanceof jQuery==!0&&p.append(t);let m=function(t){t&&"function"==typeof t.stopPropagation&&t.stopPropagation(),a.removeClass("in"),!0===r("closing")&&n.closing.call(d),p.hide().emptyWithEditors(),s.remove(),!0===r("close")&&n.close.call(d)};if(d.find(":input[required]").length>0&&($$.dc("note_required",f).append($$.sc("ind_required","*")).append($$.s($t.t1||"Eingabe erforderlich")),$$.dc("note_invalid",f).append($$.s($t.t2||"Bitte überprüfen Sie Ihre Eingaben im Formular."))),!0===r("cancel")){$$.bbtn(n.cancelbutton||"Abbrechen","cancel").attr({type:"button",role:"cancel"}).appendTo(f).click((function(t){n.cancel.call(d,t);t.stopPropagation(),m()}))}if(!0===r("confirm")){let t=$$.bbtn(n.button||"OK","confirm").attr({type:!0===bool(n.form,!1)?"submit":"button",role:"confirm"}).appendTo(f);!0===h?(d.submit((function(t){try{n.confirm.call(d,t)}finally{t.preventDefault()}return!1})),d.on("modal_submit",(function(){n.confirm.call(d,e)}))):(t.click((function(t){n.confirm.call(d,t);t.stopPropagation()})),d.on("modal_submit",(function(){t.click()})))}else!0===h&&d.submit((function(t){return t.preventDefault(),!1}));return d.on("modal_close",(function(){m()})),l.click(m),!0===r("opening")&&n.opening.call(d),a.addClass("in"),ne(n.mode).indexOf("maxbody")>-1&&p.css("min-height",(u.height()-c.outerHeight()-f.outerHeight()).toString()+"px"),!0===r("open")&&n.open.call(d),{hd:c,bdy:p,ft:f,ct:u,dlg:a,c:d}},t.mform=function(e){let n=$$.dc("form-body"),o=Array.isArray(e)?e:e instanceof fields_definition?e.fields:[];return $.each(o||[],(function(e,o){let i=o.type||"";if("ignore"===i)return!0;let r=$$.dc("form-group",n),s=o.id||"dlg_"+(o.name||"")+("html"===o.type?"_"+(65536*(1+Math.random())||0).toString(16).substr(9):""),a=$$.lbl(o.label||o.name,{for:s}).appendTo($$.dc("form-itm",r)),c=$$.dc("form-itm",r),l=$$.i({id:s,name:o.name,placeholder:o.placeholder,type:o.type});switch(i){case"email":o.pattern=ne(o.pattern,"[a-z0-9._%+-]+@[a-z0-9.-]+\\.[a-z]{2,}$");break;case"url":o.pattern=ne(o.pattern,"https?://.+");break;case"number":o.pattern=ne(o.pattern,"[-+]?[0-9]*[.,]?[0-9]*"),l.attr("step",o.precision||"any"),l.attr("data-format","float");break;case"integer":case"int":o.pattern=ne(o.pattern,"[-+]?[0-9]*"),l.attr("type","number"),l.attr("data-format","integer");break;case"date":if(""!==ne(o.pattern,$t.datepattern)&&(o.pattern=ne(o.pattern,"("+$t.datepattern+")|([0-9]{4}.(0[1-9]|1[012]).(0[1-9]|1[0-9]|2[0-9]|3[01]))")),""!==ne(o.placeholder,$t.dateplaceholder)&&l.attr("placeholder",ne(o.placeholder,$t.dateplaceholder)),"string"==typeof o.value){var u=o.value.substr(0,10);o.value="date"!==l.prop("type")?fdt(u+"T00:00:00",ne(o.dateformat,$t.dateformat)):u}l.attr("data-format","date:"+ne(o.dateformat,$t.dateformat)+";yyyy-MM-dd");break;case"datetime":l.attr("type","datetime-local"),""!==ne(o.pattern,$t.datetimepattern)&&(o.pattern=ne(o.pattern,"("+$t.datetimepattern+")|([0-9]{4}-(0[1-9]|1[012])-(0[1-9]|1[0-9]|2[0-9]|3[01])\\s([0-5][0-9]):([0-5][0-9]))")),""!==ne(o.placeholder,$t.datetimeplaceholder)&&l.attr("placeholder",ne(o.placeholder,$t.datetimeplaceholder)),"string"==typeof o.value&&"T"===o.value.substr(10,1)&&(o.value="datetime"!==l.prop("type").substr(0,8)?fdt(o.value,ne(o.datetimeformat,$t.datetimeformat)):o.value),l.attr("data-format","datetime:"+ne(o.datetimeformat,$t.datetimeformat)+";yyyy-MM-dd HH:mm:ss");break;case"hidden":r.addClass("hd");break;case"html":case"text":l=$$.txt({id:s,name:o.name,placeholder:o.placeholder,type:o.type}),l.tC("tinymce","html"===o.type);break;case"bool":case"boolean":o.url=[{value:"true",label:($t||{}).true||"Yes"},{value:"false",label:($t||{}).false||"No"}],"boolean"==typeof o.value&&(o.value=o.value?"true":"false");case"select":l=$$.sel({id:s,name:o.name,type:o.type}),!1===bool(o.required,!1)&&$$.eOpt().appendTo(l);try{var d=function(t){!0===Array.isArray(t)&&$.each(t,(function(t,e){"string"==typeof e?$$.opt(e,e).appendTo(l):!0===Array.isArray(e)?$$.opt(e[0],e[1]).appendTo(l):"object"==typeof e&&$$.opt(e.value,e.label||e.text).appendTo(l)}))};!0===Array.isArray(o.url)?d(o.url):"function"==typeof o.url?o.url.call(l):"string"==typeof o.url&&t.postXT({url:o.url,success:d})}catch(t){$.noop()}break;default:""!==ne(o["max-length"])&&l.attr("max-length",o["max-length"])}""!==ne(o.pattern)&&l.attr("pattern",o.pattern),l.val(o.value).change(),l.change((function(){$(this)[0].setCustomValidity("")})),l.addClass("form-control").prop("required",bool(o.required,!1)).prop("readonly",bool(o.readonly,!1)).appendTo(c),!0===bool(o.required,!1)&&a.append($$.sc("ind_required","*")),"object"==typeof o.attr&&l.attr(o.attr),"object"==typeof o.prop&&l.prop(o.prop),"string"==typeof o.class&&l.addClass(o.class),"function"==typeof o.change&&(l.change(o.change),!0===bool(o.applychange,!1)&&void 0!==o.value&&l.change()),""!==(o.note||"")&&$$.dc("form-note",c).rwText(o.note),"function"==typeof o.complete&&o.complete.call(l)})),n},t.initMCE=function(t,e){t=$(t),e=e||{};try{let n={target:t[0],inline:!1,width:e.width||"100%",statusbar:!1,document_base_url:window.location.origin+"/",content_style:"ph:before {content: '«'; color: #BBB; font-style:italic; } ph:after {content: '»'; color: #BBB; font-style:italic; } ph { color: #AAA; font-style:italic; }",relative_urls:!1,remove_script_host:!1};!0===bool(e.hidemenu,!1)&&(n.menubar=!1,n.menu={}),!0===bool(e.hidetoolbar,!1)&&(n.toolbar=!1),$.extend(n,e||{}),tinymce.init(n)}catch(t){alert(t.message)}},t.dlgform=function(e,n){n=n||{};let o,i=$$.dc("frm").append(t.mform(e||[]).addClass("stacked"));n.addcontent instanceof jQuery&&i.append(n.addcontent),"function"==typeof n.submit?o=n.submit:"function"==typeof n.success&&(o=function(e){var o=$(this).ldng(1),i=$.extend({loginaccount:t.auth.account||""},o.serializeObject(bool(n.checkvalidity,!0),{typedvalues:bool(n.typedvalues,!1)}));""!==(n.url||"")?t.postXT({url:n.url,data:i,success:function(t){n.success.call(this,t),o.trigger("modal_close")},error:function(){alert($t.l17)},complete:function(){o.ldng(0)},timeout:6e4}):(n.success.call(this,i),o.trigger("modal_close"))});let r={form:!0,title:n.title||"",button:n.button||$t.submit,confirm:o,size:n.size||[500,600],open:function(){let e=$(this).find(".tinymce");e.length>0&&t.initMCE(e,n.tinymce||{})}};return t.dlg.call(this,i,r)},t.login.dlg=function(e){e=e||{};let n=[{name:"userinfo",label:$t.l1,type:"string",value:t.auth.login,change:t.login.uichange,required:!0},{name:"userlogin",type:"hidden",required:!0,value:t.auth.login},{name:"username",type:"string",label:$t.l4,required:!0,readonly:!0,placeholder:$t.l5,value:t.auth.fullname_rev},{name:"userpass",type:"password",label:$t.l3,required:!0,placeholder:$t.l3}];""===(t.auth.account||"")&&n.unshift({id:"dlg_loginaccount",name:"loginaccount",type:"string",required:!0,value:t.auth.account});let o=$$.dc("frm").append(t.mform(n).addClass("stacked")),i=t.dlg.call(this,o,{form:!0,title:$t.l0,button:$t.submit,confirm:function(n){var o=$(this).ldng(1),i=$.extend({loginaccount:t.auth.account||""},o.serializeObject());t.postXT({url:"/vt/login",data:i,success:function(n){""!==((n||{}).login||"")&&(o.trigger("modal_close"),t.auth=n,"object"==typeof e.ajo&&(e.ajo.islogin,$.ajax(e.ajo)))},error:function(){alert($t.l17)},complete:function(){o.ldng(0)},timeout:6e4})},size:[500,600]}),r=$$.dc("modal-content").css("height","auto").attr("novalidate","true").append($$.dc("modal-header").appendIf($("

        ").text(t.auth.accountname),""!==(t.auth.accountname||"")).append($("

        Vereinsmanager

        ")));i.dlg.prepend(r)},t.addNoEntryInfo=function(t){$(this).append($$.dc("noentryinfo").text(t||$t.t11))}}($ocms),Element.prototype.matches||(Element.prototype.matches=Element.prototype.msMatchesSelector||Element.prototype.webkitMatchesSelector),Element.prototype.closest||(Element.prototype.closest=function(t){var e=this;do{if(Element.prototype.matches.call(e,t))return e;e=e.parentElement||e.parentNode}while(null!==e&&1===e.nodeType);return null}),function(t,e){var n,o;"object"==typeof window&&(window[t]=(n=function(t){var e=window,n=document.body,o=document.documentElement,i=Math.max(0,e.pageXOffset||o.scrollLeft||n.scrollLeft||0)-(o.clientLeft||0),r=Math.max(0,e.pageYOffset||o.scrollTop||n.scrollTop||0)-(o.clientTop||0);return{x:t?Math.max(0,t.pageX||t.clientX||0)-i:0,y:t?Math.max(0,t.pageY||t.clientY||0)-r:0}},(o=function(t,e){t&&t instanceof Element&&(this._container=t,this._options=e||{},this._clickItem=null,this._dragItem=null,this._showDragItem="boolean"!=typeof this._options.dragItem||!1!==this._options.dragItem,this._hovItem=null,this._sortLists=[],this._click={},this._dragging=!1,this._dragHandleClass=this._options.dragHandleClass||"",this._parentident=this._options.parentident||"",this._swapdone="function"==typeof this._options.swapdone?this._options._swapdone:null,this._container.setAttribute("data-is-sortable",1),this._container.classList.add("sortable"),this._container.style.position="static",window.addEventListener("mousedown",this._onPress.bind(this),!0),window.addEventListener("touchstart",this._onPress.bind(this),!0),window.addEventListener("mouseup",this._onRelease.bind(this),!0),window.addEventListener("touchend",this._onRelease.bind(this),!0),window.addEventListener("mousemove",this._onMove.bind(this),!0),window.addEventListener("touchmove",this._onMove.bind(this),!0))}).prototype={constructor:o,toArray:function(t){t=t||"id";for(var e=[],n="",o=0;oo.left&&eo.top&&n-1)&&e.className.indexOf("nosort")<0)&&(t.preventDefault(),this._dragging=!0,this._click=n(t),this._makeDragItem(e),this._onMove(t),!0)}t&&!1===e.call(this,t.target)&&""!==this._parentident&&t.target.closest(this._parentident)&&e.call(this,t.target.closest(this._parentident))},_onRelease:function(t){this._dragging=!1,this._trashDragItem()},_onMove:function(t){if(this._dragItem&&this._dragging){t.preventDefault();var e=n(t),o=this._container;!0===this._showDragItem&&this._moveItem(this._dragItem,e.x-this._click.x,e.y-this._click.y);for(var i=0;i0?a.mousedown(c).addClass("dctrl"):s.mousedown(c).addClass("dctrl"),t(this)}}(jQuery),$(document).ready((function(){$("html").click((function(t){$nuf()})),$("#listframe").click((function(t){t.stopPropagation(),$nuf()})),$("#mainmenu").ocmsmenu($ocms.ocmsmenu),$("#mainmenu").activatemenu()})),$.extend($t,{m_inv:"Rechnungen",m_req:"Aufträge",m_rep:"Berichte",m_todo:"ToDos",m_bcd:"BankBuchungen",rsp:"Passwort ändern",pnm:"Die Passwörter stimmen nicht überein",cps:"Das neue Passwort wurde gespeichert.",pwr:"Bitte wählen Sie ein starkes Passwort (min 8 Zeichen, davon jeweils min 2 Zahlen, kleine und große Buchstaben, Sonderzeichen sind optional).",smsc:"Sie beötigen für diese Funktion einen SMS-Code.\nSoll dieser nun versandt werden?",wdc:"Doppelt klicken, um die Box zu aktualisieren.",wdg:{}}),$t.rspf={sms:"Der SMS-Code konnte nicht bestätigt werden",valid:"Das alte Passwort ist nicht korrekt",requirements:"Das Passwort entspricht nicht den Anforderungen.\n"+$t.pwr},$fd={rsp:new fields_definition("","",[{name:"opw",label:"aktuelles Passwort",type:"password",required:!0,attr:{"auto-complete":"current-password"}},{name:"npw",label:"neues Passwort",type:"password",required:!0,pattern:"(.{6,})",attr:{"auto-complete":"new-password"}},{name:"npwc",label:"neues Passwort (Bestätigung)",type:"password",required:!0,attr:{"auto-complete":"new-password"},note:$t.pwr},{name:"code",label:"SMS-Code",type:"string",required:!0,attr:{"auto-complete":"one-time-code"}}])},$ocms.init=function(t){var e="string"==typeof t?t:(t.data||{}).fn||"";""!==e&&("home"===e?($cfr(),$lfr(),$("#topbar").ocmsmenu([],!0),$("#activemodule").text($t.ov),$fis.ov()):($cfr(),$lfr(),$("#topbar").ocmsmenu([]),$ocms.postXT({url:$ocms.url(e+"/auth"),success:function(t){void 0===$ocms[e]&&($ocms[e]={}),$ocms[e].auth=t,t.manage>0&&$ocms.getScript({module:e,script:["/web/fis",e,$ocms.auth.locale||"de","js"].join("."),css:["/web/fis",e,"css"].join("."),condition:"function"!=typeof $ocms[e].init2},(function(){$ocms[e].init2()}))},error:function(){$("#contentframe").empty()}})))};var $fis={auth:{},db:function(){$("#mainmenu_activemodule").text($t.ov);let t=$(this).empty(),e=$$.d({id:"dashboard_frame"}).appendTo(t);$ocms.postXT({url:$ocms.url("wdg/my"),success:function(t){$.each(t,(function(t,n){var o=$$.dc("wdg_frame",e,{"data-wdg":n}).ldng(1);$ocms.wdg.call(o,{wdg:n})}))},loading:e})},ValidateEmail:function(t){return!!/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)*$/.test(t)},cf:t=>{let e=$("#contentframe");return!0===bool(t,!1)&&e.empty().rC("hd"),e},lf:t=>{let e=$("#listframe");return!0===bool(t,!1)&&e.empty().aC("hd").rC("fix"),e},frm_edit:function(t){let e=$fis.cf(!1),n=e.children(".cfrm"),o=e.children(".edit_frm");return n.length<1?n=$$.dc("cfrm hd").prependTo(e):!0===bool(t,!1)&&n.empty(),o.length<1&&(o=$$.dc("edit_frm").insertAfter(n)),o.empty()},frm_list:function(t,e){let n=$fis.cf(!1),o=n.children(".cfrm"),i=n.children(".list_frm");return o.length<1?o=$$.dc("cfrm hd").prependTo(n):!0===bool(t,!1)&&o.empty(),!0===bool(e,!1)&&n.children(".edit_frm").remove(),i.length<1&&(i=$$.dc("list_frm").appendTo(n)),i.empty()},lfm:()=>{let t=$fis.lf(!1),e=t.children(".lfrm");return e.length<1&&(e=$$.dc("lfrm").prependTo(t)),e},getAuth:(t,e)=>new Promise(((n,o)=>{$fis.auth[t]&&!1===bool(e,!1)?n($fis.auth[t]||-1):$ocms.postXT({url:$ocms.url("auth"),data:{module:t},success:e=>{$fis.auth[t]=e.auth||-1,n($fis.auth[t]||-1)},error:()=>{o()}})})),prepAuth:t=>new Promise(((e,n)=>{$ocms.postXT({url:$ocms.url("auth"),data:{module:t,array:1},success:t=>{$.extend($fis.auth,t||{})},complete:()=>{e()}})})),isAuth:(t,e)=>($fis.auth[t]||-1)>=(e||1),resetPass:function(t,e){confirm($t.smsc)&&($ocms.postXT({url:$ocms.url("account/sms"),data:{fn:"pwc"}}),$ocms.dlgform($fd.rsp.clone(),{title:$t.rsp||"",submit:function(t){var e=$(this).ldng(1),n=$.extend({loginaccount:$ocms.auth.account||""},e.serializeObject(!0,{typedvalues:!0}));(n.npw||"")!==(n.npwc||"")?e.find('input[name="npw"]:first')[0].setCustomValidity($t.pnm):$ocms.postXT({url:$ocms.url("account/changepassword"),data:n,success:function(t){alert($t.cps),e.trigger("modal_close")},error:function(t){alert($t.rspf[t.getResponseHeader("x-ocms-std")])},complete:function(){e.ldng(0)},timeout:6e4})}}))},wdg:function(t){let e=$(this).empty();$ocms.postXT({url:$ocms.url("wdg/one"),data:{short_name:t.wdg},timeout:9e4,success:function(n,o,i){let r=t.wdg,s=n[r];if(!s)return void e.ldng(0);let a=$.inArrayRegEx("dblwidth",s.rendering_options)>-1,c=$.inArrayRegEx("tiny",s.rendering_options)>-1;e.toggleClass("dbl",a&&!c).toggleClass("tny",c);$$.dc("wdg_hd",e,{title:ne(s.description,$t.wdc)}).toggleClass("dbl",a).text(ne(s.name,t.wdg)).dblclick((function(t){t.stopPropagation(),$fis.wdg.call(e,{wdg:r})}));let l=$$.dc("wdg_cnt",e).toggleClass("dbl",a).hide(),u=$.inArrayRegEx("bgcolor",s.rendering_options);switch(u>-1&&l.css("backgroundColor",s.rendering_options[u].toString().right(":")),s.type){case"table":var d=$$.tblset({},l),h=$$.tr().appendTo(d.hd),p=$t.wdg[r.indexOf("wdg_ev_")>=0?"wdg_ev_":r]||{};$.each(s.columns,(function(t,e){var n=p[e]?p[e].label:e;$$.th().text(n).appendTo(h)})),$.each(s.data,(function(t,e){var n=$$.tr().appendTo(d.bdy);$.each(s.columns,(function(t,o){var i=$$.td().appendTo(n);e[o]instanceof Date||!0===$ocms.isJSONDateString(e[o])?i.text(fdt(e[o],$t.dateformat)):i.rwText(e[o])}))})),$.inArray("firstrow_bold",s.rendering_options)>-1&&h.nextAll("tr:first").css("font-weight","bold");break;case"ind":$$.dc("ind",l).addClass("sts_"+(s.data.status||"")).append([$$.dc("ind").text(s.data.value),$$.lbl(s.data.label)]);break;case"image_url":l.css("background","url('"+s.url+"') no-repeat center center transparent");break;case"image_base64":l.css("background","url('data:image/png;base64,"+s.image+"') no-repeat center center transparent");break;case"html":if(l.html(s.html),$.inArray("reload_10min",s.rendering_options)>-1){var f=l.find("iframe");setTimeout((function(){f.attr("src",(function(t,e){return e}))}),6e5)}}$.inArray("reload_30min",s.rendering_options)>-1&&"html"!==s.type&&setTimeout((function(){$fis.wdg.call(e,{wdg:r})}),18e5),l.slideDown(150)},error:function(t){e.slideUp(150),$fis.failure.call(this,t)},complete:function(){e.ldng(0)}})},ov:function(){$fis.lf(!0);let t=$("#contentframe").empty(),e=$$.d({id:"dashboard_frame"}).appendTo(t);$ocms.postXT({url:$ocms.url("wdg/my"),success:function(t){$.each(t,(function(t,n){var o=$$.dc("wdg_frame",e,{"data-wdg":n}).ldng(1);$fis.wdg.call(o,{wdg:n})}))},loading:e})}};$fis.notifications={connection:null,init:function(){"undefined"!=typeof signalR&&null===this.connection&&$ocms.auth.useraccount_id&&(this.ensureFrame(),this.connection=(new signalR.HubConnectionBuilder).withUrl("/notifications").withAutomaticReconnect().build(),this.connection.on("notification",(t=>{this.push(t)})),this.connection.onclose((()=>{console.warn("Notification connection closed; retrying in 5s."),this.connection=null,setTimeout((()=>this.init()),5e3)})),this.start())},start:function(){this.connection.start().catch((t=>{console.warn("Notification connection failed to start; retrying in 5s.",t),this.connection=null,setTimeout((()=>this.init()),5e3)}))},ensureFrame:function(){$("#notification_frame").length<1&&$("
        ",{id:"notification_frame"}).appendTo($("footer:first").length?"footer:first":"body")},push:function(t){this.ensureFrame(),t=t||{};let e=$("
        ",{class:"notification_item"}).addClass((t.severity||"info").toLowerCase()).append($("