From 9b9a5c8be888e36857cd9e41aaa01da6b5c80020 Mon Sep 17 00:00:00 2001 From: Josh Willis <168561922+josh-willis-arcadis@users.noreply.github.com> Date: Tue, 14 Oct 2025 16:44:58 -0500 Subject: [PATCH 1/5] create placeholder for publish status data --- i18n/english.yml | 1 + lib/manager/components/FeedSourceTable.js | 8 +++++++- lib/manager/components/FeedSourceTableRow.js | 2 ++ lib/manager/containers/FeedSourceTableRow.js | 1 - 4 files changed, 10 insertions(+), 2 deletions(-) diff --git a/i18n/english.yml b/i18n/english.yml index dd1a290e6..72105379f 100644 --- a/i18n/english.yml +++ b/i18n/english.yml @@ -370,6 +370,7 @@ components: feedInfo: Feed Info issues: Issues latestVersion: Latest Version + publishState: Publish State status: Status FeedSourceTableRow: dateFormat: MMM D, YYYY diff --git a/lib/manager/components/FeedSourceTable.js b/lib/manager/components/FeedSourceTable.js index 66288becf..b55fa8fea 100644 --- a/lib/manager/components/FeedSourceTable.js +++ b/lib/manager/components/FeedSourceTable.js @@ -40,7 +40,7 @@ export default class FeedSourceTable extends PureComponent {

{this.messages(`comparisonColumn.${comparisonColumn}`)}

} - +

{this.messages('latestVersion')}

@@ -78,6 +78,12 @@ export default class FeedSourceTable extends PureComponent { {this.messages('issues')} + +

+ + {this.messages('publishState')} +

+ diff --git a/lib/manager/components/FeedSourceTableRow.js b/lib/manager/components/FeedSourceTableRow.js index 887031712..1447ecf57 100644 --- a/lib/manager/components/FeedSourceTableRow.js +++ b/lib/manager/components/FeedSourceTableRow.js @@ -236,6 +236,7 @@ export default class FeedSourceTableRow extends PureComponent { {currentVersionData.endDate} {currentVersionData.errorCount} + test @@ -247,6 +248,7 @@ export default class FeedSourceTableRow extends PureComponent { class FeedInfo extends PureComponent<{ feedSource: Feed, project: Project, user: ManagerUserState }> { messages = getComponentMessages('FeedInfo') + /* eslint-disable complexity */ render () { const { feedSource, project, user } = this.props diff --git a/lib/manager/containers/FeedSourceTableRow.js b/lib/manager/containers/FeedSourceTableRow.js index 07ff9f16a..e3221fe2c 100644 --- a/lib/manager/containers/FeedSourceTableRow.js +++ b/lib/manager/containers/FeedSourceTableRow.js @@ -12,7 +12,6 @@ import { import {uploadFeed} from '../actions/versions' import FeedSourceTableRow from '../components/FeedSourceTableRow' import {getVersionValidationSummaryByFilterStrategy} from '../util/version' - import type {Feed, Project} from '../../types' import type {AppState} from '../../types/reducers' From e482e47dd153a3f8624d668debfed46a85d7f627 Mon Sep 17 00:00:00 2001 From: Josh Willis <168561922+josh-willis-arcadis@users.noreply.github.com> Date: Thu, 16 Oct 2025 14:17:05 -0500 Subject: [PATCH 2/5] Revert "Remove non-English lang files" This reverts commit de852317d28eeae9ecf9d87ea3361e9466073ccc. --- i18n/german.yml | 1543 +++++++++++++++++++++++++++++++++++++++++++++++ i18n/polish.yml | 1515 ++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 3058 insertions(+) diff --git a/i18n/german.yml b/i18n/german.yml index 3d08f99af..f71169a7c 100644 --- a/i18n/german.yml +++ b/i18n/german.yml @@ -1,2 +1,1545 @@ _id: de _name: Deutsch +components: + Actions: + error: Fehler beim %method% Aufruf von %url% + errorGraphQL: Fehler beim GTFS-Abruf via GraphQL + errorWithStatus: Fehler (%status%) beim %method% Aufruf von %url% + networkError: Netzwerk-Fehler (%status%)!\n\n(%method% Aufruf von %url%) + noFile: Keine Datei zum Hochladen! + AddCustomFile: + addCustomCsvData: Add the custom CSV data. + customFileName: Custom file name + saveCsvAndFileName: Save CSV and file name + AdminPage: + applicationLogs: Anwendungs-Logs + backToDashboard: Zurück zum Dashboard + deploymentServers: Deployment Server + noAccess: Sie haben keine ausreichenden Berechtigung zum Zugriff auf diesen Bereich. + organizations: Organisationen + title: Administration + userManagement: Konten-Verwaltung + ApplicationStatusView: + actions: Aktionen + columns: + id: ID + name: Name + path: Pfad + status: Status + time: Zeit + user: Konto + feed: + filterByLabels: Filtere Feeds nach Etiketten + isPublic: Ist öffentlich + lastFetched: Letzter Zeitpunkt des Feedabrufs von Feed-URL + lastUpdated: Zuletzt aktualisiert + lastApiRequests: Letzte API Anfrage nach Nutzenden + lastUpdatedAt: letzte Aktualisierung um + latestValidation: + endDate: 'Aktuellste Version: End-Datum' + errorCount: 'Aktuellste Version: Anzahl Fehler' + routeCount: 'Aktuellste Version: Anzahl Routen' + startDate: 'Aktuellste Version: Start-Datum' + stopCount: 'Aktuellste Version: Anzahl Haltestellen' + stopTimesCount: 'Aktuellste Version: Anzahl Abfahrtszeiten' + tripCount: 'Aktuellste Version: Anzahl Trips' + name: Name + noDataText: Keine aktiven Jobs. + refresh: Aktualisieren + serverJobs: Aktive Server Jobs + sortBy: Sortiere nach + unauthenticated: (unangemeldet) + url: Feed-Abruf-URL + userLogs: Nutzer-Authentisierungs-Logs + viewUserLogs: Nutzenden-Logs auf Auth0.com ansehen + Brand: + dataTools: Data Tools + Breadcrumbs: + deployments: Deployments + projects: Projekte + root: Erkunden + CalendarSelect: + exceptionBasedCalendar: (Exception based calendar) + selectCalendar: " Select calendar..." + ConfirmModal: + cancel: Abbrechen + ok: OK + CreateProject: + new: Neues Projekt erstellen + CreateSnapshotModal: + cancel: Abbrechen + description: Schnappschüsse sind gespeicherte Zwischenstände, die Sie immer wiederherstellen + können, während Sie eine GTFS Feed bearbeiten. Erstellen Sie einen Schnappschuss + mit der aktivierter Option um automatisch eine neue GTFS-Datei zu veröffentlichen + (und diese als neue Feed-Version zu prozessieren). + fields: + comment: + label: Kommentar + placeholder: Zusätzliche Information (optional) + confirmPublishWithUnapproved: + label: Veröffentlichung mit nicht freigegebenen Routen bestätigen + name: + label: Name + placeholder: Name des Schnappschusses (erforderlich) + publishNewVersion: + label: Veröffentliche Schnappschuss als neue Feed-Version + publishProprietaryFiles: + helpText: Proprietary files allow you to maintain certain Datatools features, such as pattern names, when re-importing a feed. + label: Publish new feed version with proprietary (extra) Datatools files. + missingNameAlert: Gültiger Schnappschuss-Name erforderlich! + ok: OK + title: Neuen Schnappschuss erstellen + unapprovedRoutesDesc: 'Diese Routen werden nicht im Export enthalten sein:' + unapprovedRoutesHeader: Die folgenden Routen sind nicht freigegeben + CreateUser: + email: + label: Email-Adresse + placeholder: Email-Adresse eingeben + new: Nutzerkonto erstellen + password: + label: Passwort + placeholder: Passwort für neues Konto eingeben + title: Erstelle Nutzerkonto + DatatoolsNavbar: + account: Mein Konto + alerts: Warnungen + editor: Editor + guide: Leitfaden + login: Anmelden + logout: Abmelden + manager: Manager + resetPassword: Passwort zurücksetzen + signConfig: eTID Konfiguration + users: Benutzende + DeploymentConfirmModal: + alert: + alreadyDeployed: ist bereits auf diesen Server und den gleiche Routing-Dienst + deployed. (Deployen würde den aktuellen Graph löschen.) + boundsTooLarge: Grenzen sind viel zu groß um erfolgreich in OpenTripPlanner + bereitgestellt zu werden. Deployment ist deaktiviert. + expiredFeeds: Die folgenden Feeds sind abgelaufen (alle Trips liegen in der + Vergangenheit) + missingBounds: Für diese Feeds sind keinge Grenzen definiert. Deployment ist + deaktiviert. + missingFeeds: Für dieses Deployment sind keine Feeds definiert. Deployment ist + deaktiviert. + success: Deployment erfolgreich ausgeführt. + cancel: Abbrechen + close: Schließen + danger: Gefahr! + deploy: Deployen + invalidBounds: Grenzen sind ungültig! + success: Erfolg! + to: zu + warning: Warnung! + DeploymentConfirmModalAlert: + danger: Gefahr! + success: Erfolg! + warning: Warnung! + DeploymentVersionsTable: + dateRetrieved: Abrufdatum + errorCount: Fehlerzahl + expires: Läuft aus + loadStatus: Erfolgreich geladen + name: Name + routeCount: Routen-Anzahl + stopTimesCount: Anzahl StopTimes + tripCount: Trip-Anzahl + validFrom: Gültig von + version: Version + DeploymentViewer: + addFeedSource: Feed-Quelle hinzufügen + allFeedsAdded: Alle Feeds hinzugefügt + deploy: Deploy + download: Herunterladen + noServers: Keine Server definiert + search: Suche nach Name + table: + dateRetrieved: Abrufdatum + errorCount: Fehler-Anzahl + expires: Läuft aus + loadStatus: Erfolgreich geladen + name: Name + routeCount: Route-Anzahl + stopTimesCount: Anzahl StopTimes + tripCount: Trip-Anzahl + validFrom: Gültig von + version: Version + to: nach + versions: Feed Versionen + DeploymentsList: + delete: Deployment entfernen + new: Neues Deployment + search: Nach Deployments suchen + table: + creationDate: Erstellt + deployedTo: Deployed nach + feedCount: '# Feeds' + lastDeployed: Zuletzt deployed + name: Name + testDeployment: Testen? + title: Deployments + DeploymentsPanel: + autoDeploy: + deployWithErrors: + checklabel: Deployen, auch falls einige Feeds kritische Fehler aufweisen? + help: | + Wenn abgewählt, wird Auto-Deployment will anhalten, falls mindestens eine der Feed-Versionen im Deployment einen kritischen Fehler aufweist + title: Critical Errors Handling + help: | + Ein Deployment wird automatisch gestartet (angenommen es treten keine kritischen Fehler auf) wenn eines der oben definierten Ereignisse auftritt. + label: Auto-Deploy Ereignisse + placeholder: Auto-Deploy Ereignisse spezifizieren + title: Auto-Deployment + types: + ON_FEED_FETCH: Eine neue Version wurde abgerufen + ON_PROCESS_FEED: Eine neue Version wird verarbeitet + config: + body: | + Deployments können projekt-spezifische Konfigurationen nutzen (z.B. für Graphbau- der Router-Konfigurations-Dateien) oder individuell konfiguriert werden. + editSettings: Deployment-Einstellungen bearbeiten + manageServers: Deployment-Server verwalten + title: Deployments konfigurieren + delete: Entferne Deployment + new: Neues Deployment + pinnedDeployment: + help: Deployment pinnen (und zumindest einmaliges Deployment auf einen Server + ausführen) um Auto-Deployment zu aktivieren. + label: Gepinntes Deployment + placeholder: Wählen Sie ein zu pinnendes Deployment + search: Suche nach Deployments + table: + creationDate: Erstellt + deployedTo: Deployed nach + feedCount: '# Feeds' + lastDeployed: Zuletzt deployed + name: Name + testDeployment: Testen? + title: Deployments + EC2InstanceCard: + aws: AWS + confirmTermination: 'Sind Sie sicher, dass Sie %count% Instanz(en) beenden möchten?\n\n + ACHTUNG: Dies wird OTP Dienste aller auf diesem Server gestarteten Deployments + beenden.' + log: Log-Datei + noPublicIP: Keine öffentliche IP + notApplicable: N/A + status: + booting: Startet. + running: Server läuft. + terminated: Beendet. + terminatedAt: Beendet %moment% + terminate: Instanz beenden + view: Deployment ansehen + EditableTextField: + invalidInput: Gültige Eingabe erforderlich. + none: (leer) + EditorFeedSourcePanel: + active: Aktiv + availableSnapshots: Verfügbare Schnappschüssse + confirmDelete: Dies wird den Schnappschuss dauerhaft löschen. Alle damit gespeicherten + Date können nicht wiederhergestellt werden. Sind Sie sicher, dass Sie fortfahren + möchten? + confirmLoad: Dies wird alle aktiven GTFS Editor Daten dieser Feed-Quelle mit den + Daten dieser Version überschreiben. Wenn Sie im Editor ungespeicherte Änderungen + behalten möchten, müssen Sie für diese Daten zuerst einen Schnappschuss erstellen. + Sind Sie sicher, dass Sie fortfahren möchten? + createFromScratch: Erstelle leeren GTFS-Feed + created: erstellt + date: Datum + delete: Löschen + download: Herunterladen + editFeed: Feed bearbeiten + feed: Feed + help: + body: + - Schnappschüsse sind gespeicherte Zwischenstände, die Sie immer wiederherstellen + können, während Sie eine GTFS Feed bearbeiten. + - Ein Schnapschuss kein eine Arbeitsstand, ein zukünftiges Planungsszenario + oder sogar verschiedene Fahrpläne abbilden (z.B. Sommerfahrplan). + title: Was sind Schnappschüsse? + load: Zur Bearbeitung laden + loadLatest: Aktuellsten zur Bearbeitung herunterladen + name: Name + noOtherSnapshots: No other snapshots + noSnapshotsExist: Für diese Feed-Quelle existieren noch keine Schnappschüsse. + Schnappschüsse können im Editor erstellt werden. Wählen Sie "Feed bearbeiten" + um den Bearbeitungsmodus zu starten. + noVersions: (Keine Versionen) + noVersionsExist: Für diese Feed-Quelle existieren noch keine Versionen. + of: von + publish: Veröffentlichen + restore: Wiederherstellen + snapshot: Schnappschuss + snapshotLatest: Schnappschuss erstellen + title: Schnappschüsse + version: Version + EditorInput: + daysOfService: Service-Tage + dropImage: Ziehen Sie ein %activeComponent%-Bild hier hin, oder klicken Sie um + ein Bild hochzuladen. + optional: (optional) + selectAgency: Betreiber auswählen... + selectDate: Bitte wählen Sie ein Datum + selectOption: -- Option auswählen -- + uploadAsset: '%activeComponent%-Branding-Asset hochladen' + EditorSidebar: + backToFeed: Zurück zum Feed + EntityDetailsHeader: + attributes: Attribute + feedInfo: Feed Info + noValidationIssues: Keine Validierungsfehler + requiredField: '* kenzeichnet Pflichtfeld' + routeDetails: Routen-Details + rules: Regeln + saveChanges: Änderungen speicheren + tripPatterns: Trip-Muster + undoChanges: Änderungen rückgängig machen + validationIssues: Validatungsfehler + zoomTo: Zoome auf + EntityList: + createFirst: Erstelle erste/n + createStop: Um eine neue Haltestelle zu erstellen, klicken Sie per rechter Maustaste + auf eine Örtlickeit in der Karte + editSchedules: Abfahrzeiten erstellen + name: Name + ExceptionCalendarSelector: + selectCalendar: Select calendar... + unnamedDefault: "[unnamed]" + ExceptionDate: + addRange: Add range + dateRemoved: ⓘ Date has been removed. Date entered is already included in an existing range or single date! + selectDate: Select date + ExceptionDateRange: + andOtherErrors: ...and %errors% other errors + deleteEndDate: Delete end date + deleteRange: Delete range + ExceptionValidationErrorsList: + andOtherErrors: ...and %errors% other errors + ExportPatternsModal: + exportPatterns: Publish version with proprietary patterns? + no: No + yes: Yes + FeedActionsDropdown: + delete: Löschen + deleteFeedSource: Feed-Quelle löschen? + deploy: Deployen + deployFeed: Feed-Quelle deployen. + deployNoPermission: Sie haben keine Berechtigungen, um den Feed zu deployen + fetch: Abrufen + menu: Menü + noVersions: Keine Versionen. Erstellen Sie eine neue Version um den Feed zu deployen + notDeployable: Feed-Quelle nicht deploybar. Ändern Sie die Feed-Quelle-Einstellungen. + openInEditor: Im Editor öffnen + upload: Hochladen + uploadFeed: Feed hochladen + view: Öffentliche Seite ansehen + FeedFetchFrequency: + DAYS: Tage + HOURS: Stunden + MINUTES: Minuten + fetchFeedEvery: Feed-Abruf alle + FeedInfo: + autoFetch: Automatischer Abruf + autoPublish: Automatische Veröffentlichung + bundleFilename: Bundle Filename + dateFormat: DD.MM.YYYY + deployable: Deploybar + edit: Bearbeiten + lastUpdatedDate: Zuletzt aktualisiert am %date% + noUpdates: Keine Aktualisierungen + private: Privat + public: Öffentlich + FeedInfoPanel: + add: '%id% hinzufügen' + backToFeedSource: Zurück zur Feed-Quelle + backToProject: Zurück zum Projekt + editingFeed: '%feed% bearbeiten' + noSnapshot: Keine Schnappschüsse erstellt + restoreSnapshot: + body: Sind Sie sicher, dass Sie diesen Schnappschuss wiederherstellen möchten? + title: '%key% wiederherstellen?' + revert: '%snapshot% wiederherstelllen' + takeSnapshot: Schnappschuss erstelllen + toolbar: + hide: Verberge Werkzeugleiste + show: Zeige Werkzeugleiste + unnamed: Unbenannt + uploadShapefile: + body: 'Wählen Sie eine gezippte Shape-Datei zur Darstellung in der Karte. Hinweis: + Dies dient nur zur visuellen Unterstützung.' + error: Hochgeladene Datei muss gültige zip-Datei sein (.zip). + title: Routen-Shapefile hochladen + FeedLabel: + delete: + body: Sind Sie sicher, dass Sie Etikett %name% löschen möchten? Diese Aktion + wird das Etikett von allen Feed-Quellen, denen es zugewiesen ist, entfernen. + title: Etikett löschen? + FeedSourceAttributes: + lastUpdated: Aktualisiert + FeedSourcePanel: + chooseProject: '[Projekt auswählen]' + chooseProjectToView: Projekt wählen um Feeds anzusehen + createOne: Projekt erstellen. + filters: + ALL: Alle + PRIVATE: Privat + PUBLIC: Öffentlich + STARRED: Favoriten + forFeed: Feeds für + noFeedsYet: Noch keine Feeds. + search: Suche Feeds + unnamed: unbenannt + FeedSourceSettings: + autoPublish: Auto-Veröffentlichung + feedTransformations: Feed-Transformationen + general: Allgemein + noPermission: Sie verfügen nicht über die notwendigen Berechtigungen um Eigenschaften + dieser Feed-Quelle zu bearbeiten. + properties: Eigenschaften + warning: Achtung! + FeedSourceTable: + comparisonColumn: + DEPLOYED: Deployte Version + PUBLISHED: Veröffentlichte Version + createFirst: Erste Feed-Quelle erstellen! + datesValid: Gültigkeits-Zeitraum + feedInfo: Feed Info + issues: Fehler + latestVersion: Aktuellste Version + status: Status + FeedSourceTableRow: + dateFormat: DD.MM.YYYY + delete: Löschen + expired: Vor %duration% ausgelaufen + lastUpdated: Zuletzt aktualsiert vor %lastVersionUpdate% + noUpdates: Noch keine Aktualisierungen + none: Keine + startingIn: Beginnt in %duration% + status: + active: Aktiv + all: Alle + expired: Veraltet + expiring-within-5-days: Veraltet in 5 Tagen + expiring-within-20-days: Veraltet in 20 Tagen + feedNotInDeployment: Feed nicht deployed + feedNotPublished: Feed nicht veröffentlicht + future: Zukunft + no-version: Keine Version + same-as-deployed: Entspricht deploytem + same-as-published: Entspricht veröffentlichtem + validFor: Gültig für weitere %duration% + FeedSourceViewer: + deploy: Deployen + edit: GTFS bearbeiten + gtfs: GTFS + notesTitle: Notizen + private: Private Ansicht + properties: + deployable: Deploybar? + name: Name + noneSelected: (Nichts ausgewählt) + property: Eigenschaft + public: Öffentlich? + retrievalMethod: + fetchedAutomatically: Automatisch abgerufen + manuallyUploaded: Manuell hochgeladen + producedInHouse: Selbst produziert + producedInHouseGtfsPlus: Selbst produziert (GTFS+) + regionalMerge: Regionale Zusammenführung + servicePeriodMerge: Service -Zeitraum Zusammenführung + title: Abruf-Methode + versionClone: Version klonen + snapshot: Editor Schnappschuss + title: Einstellungen + value: Wert + snapshotsTitle: Schnappschüsse + update: Aktualisieren + upload: Hochladen + versions: Versionen + viewPublic: Öffentliche Seite ansehen + FeedTransformationDescriptions: + DeleteRecordsTransformation: + label: Lösche Einträge von %tablePlaceholder% + name: Lösche Datensatz-Transformation + NormalizeFieldTransformation: + filePlaceholder: Zu normalisierende Datei/Tabelle auswählen + label: Feld normalisieren + name: Feld-Normalisierungs-Abbildung + ReplaceFileFromStringTransformation: + filePlaceholder: Zu ersetzende Datei/Tabelle auswählen + label: Ersetze %tablePlaceholder% durch %filePlaceholder% + name: Ersetze Datei von String-Transformation + ReplaceFileFromVersionTransformation: + filePlaceholder: Zu ersetzende Datei/Tabelle auswählen + label: Ersetze %tablePlaceholder% durch %versionPlaceholder% + name: Ersetze Datei von Versions-Transformation + general: + fileDefined: unterhalb des Textes + filePlaceholder: '[Datei auswählen]' + table: Tabelle + tablePlaceholder: '[Tabelle auswählen]' + version: Version + versionPlaceholder: '[Version auswählen]' + AddCustomFileTransformation: + label: Add custom file in GTFS. + name: Add custom file transformation + PreserveCustomFieldsTransformation: + filePlaceholder: Choose the file/table with custom field + label: Preserve fields in %tablePlaceholder% from %filePlaceholder% + name: Preserve custom fields transformation + FeedVersionNavigator: + confirmDelete: Sind Sie sicher, dass sie diese Version endgültig löschen möchten? + confirmLoad: Dies wird alle aktiven GTFS Editor Daten dieser Feed-Quelle mit den + Daten dieser Version überschreiben. Wenn Sie im Editor ungespeicherte Änderungen + behalten möchten, müssen Sie für diese Daten zuerst einen Schnappschuss erstellen. + Sind Sie sicher, dass Sie fortfahren möchten? + delete: Löschen + deployFeed: Feed deployen + download: Herunterladen + editFeed: Feed bearbeiten + feed: Feed + fetch: Abrufen + fromSnapshot: Von Schnapschuss + load: Zur Bearbeitung laden + newVersion: Erstelle neue Version + next: Nächster + of: von + previous: Voriger + selectFeed: 'Hochzuladenden GTFS-Feed auswählen:' + selectVersion: Wählen Sie eine Version umd Zusammenfassung anzuzeigen + upload: Hochladen + uploadFeed: Feed hochladen + version: Version + zipWarning: Hochgeladene Datei muss gültige Zip-Datei sein (.zip). + FeedVersionTabs: + agencyCount: Betreiber-Anzahl + daysActive: aktive Tage + routeCount: Routen-Anzahl + stopCount: Haltestellen-Anzahl + stopTimesCount: Abfahrtszeiten-Anzahl + tripCount: Trip-Anzahl + validDates: Gültige Daten + FeedVersionViewer: + confirmDelete: Sind Sie sicher, dass Sie diese Version löschen möchten? Dies kann + nicht rückgängig gemacht werden. + confirmLoad: Dies wird alle aktiven GTFS Editor Daten dieser Feed-Quelle mit den + Daten dieser Version überschreiben. Wenn Sie im Editor ungespeicherte Änderungen + behalten möchten, müssen Sie für diese Daten zuerst einen Schnappschuss erstellen. + Sind Sie sicher, dass Sie fortfahren möchten? + delete: Löschen + download: Herunterladen + feed: Feed + load: Laden + noVersionsExist: Für diese Feed-Quelle existieren keine Versionen. + status: Status + timestamp: Datei Zeitstempel + version: Version + FormInput: + buildConfig: + elevationBucket: + accessKey: Zugriffs-Schlüssel (access) + bucketName: S3 Bucket Name + secretKey: Geheim-Schlüssel (secret) + fares: Tarife + fetchElevationUS: Höheninformation abrufen + stationTransfers: Umstiege + subwayAccessTime: Zeitaufschlag U-Bahn-Zugang + title: Graph-Bau-Konfiguration + deployment: + osm: + bounds: Benutzerdefinierte Extrakt-Grenzen + custom: Benutze benutzerdefinierte Extrakt-Grenzen + gtfs: Benutze GTFS-abgeleitete Extrakt-Grenzen + title: OSM Extrakt + title: Deployment + otpServers: + $index: + admin: Nur Admin-Zugriff? + delete: Entfernen + ec2Info: + amiId: AMI ID + buildAmiId: Graphbau AMI ID + buildImageDescription: Neue Image-Beschreibung + buildImageName: Neuer Image-Name + buildInstanceType: Graph build instance type + iamInstanceProfileArn: IAM Instanz Profil ARN + instanceCount: Instanz-Anzahl + instanceType: Instanztyp + keyName: Name Schlüsseldatei + recreateBuildImage: Build-Image nach Graphbau eu erstellen? + region: Name der Region + securityGroupId: ID der Sicherheitsgrupp + subnetId: Subnetz ID + targetGroupArn: Zielgruppen ARN (Load-Aalancer) + internalUrl: Interne URLs + name: Name + namePlaceholder: Produktion + publicUrl: Öffentliche URL + role: AWS Rolle + s3Bucket: S3 Bucket-Name + serverPlaceholder: Server-Name + title: Server + routerConfig: + brandingUrlRoot: Branding Wurzel-URL + carDropoffTime: Zeitaufschlag PKW abstellen + numItineraries: '# Reisevorschläge' + requestLogFile: Log-Datei anfordern + stairsReluctance: Treppen-Abneigung + title: Router Konfiguration + updaters: + $index: + defaultAgencyId: Standard-Betreiber-ID + frequencySec: Frequenz (in Sekunden) + sourceType: Quell-Type + type: Typ + url: URL + new: Updater hinzufügen + placeholder: Updater name + title: Real-time Updater + walkSpeed: Geh-Geschwindigkeit + GeneralSettings: + autoFetch: + checkbox: Feed-Quelle automatisch abrufen + hint: Aktiviert den automatischen Feed-Abruf. (Feed-Quelle-URL must angegeben + sein und Projekteinstellung Automatischer Abruf muss aktiviert sein.) + title: Automatischer Abruf + url: Feed-Quelle Abruf-URL + urlButton: URL ändern + confirmDelete: Sind Sie sicher, dass Sie dieses Projekt löschen möchten? Diese + Aktion kan nicht rückgängig gemacht werden und alle Feed-Quellen und ihre Versionen + werden dauerhaft gelöscht. + dangerZone: Gefahrenzone + deleteFeedSource: Feed-Quelle löschen + deleteFeedSourceDesc: Diese Feed-Quelle löschen. + deleteFeedSourceHint: Wenn Sie eine Feed-Quelle löschen, kann diese nicht wiederhergestellt + werden. + deleteProject: Projekt löschen? + deployment: + buildConfig: + elevationBucket: + accessKey: Zugriffs-Schlüssel (access) + bucketName: S3 Bucket Name + secretKey: Geheim-Schlüssel (secret) + fares: Tarife + fetchElevationUS: Höheninformation abrufen + stationTransfers: Umstiege + subwayAccessTime: Zeitaufschlag U-Bahn-Zugang + title: Graph-Bau-Konfiguration + osm: + bounds: Benutzerdefinierte Extrakt-Grenzen + custom: Benutze benutzerdefinierte Extrakt-Grenzen + gtfs: Benutze GTFS-abgeleitete Extrakt-Grenzen + title: OSM Extrakt + otpServers: + $index: + admin: Nur Admin-Zugriff? + delete: Entfernen + internalUrl: Interne URLs + name: Name + namePlaceholder: Produktion + publicUrl: Öffentliche URL + s3Bucket: S3 Bucket-Name + new: Server hinzufügen + serverPlaceholder: Server-Name + title: Server + routerConfig: + brandingUrlRoot: Branding Wurzel-URL + carDropoffTime: PKW-Abstell-Zeit + numItineraries: '# of Reisevorschläge' + requestLogFile: Log-Datei anfordern + stairsReluctance: Treppen-Abneigung + title: Router Konfiguration + updaters: + $index: + defaultAgencyId: Standard-Betreiber-ID + frequencySec: Frequenz (in Sekunden) + sourceType: Quell-Type + type: Type + url: URL + new: Updater hinzufügen + placeholder: Updater-Name + title: Real-time Updater + walkSpeed: Geh-Geschwindigkeit + title: Deployment + feedSourceName: Feed-Quellen-Name + general: + location: + boundingBox: Geographische Grenzen (W,S,E,N) + defaultLanguage: Standard-Sprache + defaultLocation: Standard-Örtlichkeit (Breitengrad, Längengrad) + defaultTimeZone: Standard-Zeitzone + title: Örtlichkeit + name: Projektname + title: Allgemein + updates: + autoFetchFeeds: Feed-Quellen automatisch abrufen? + title: Aktualisierungen + labels: + title: Ettiketten + bundleFilename: Override filename for GTFS bundle + bundleFilenameHint: Optional. Define a custom filename (without .zip) for this feed source when included in a GTFS bundle. The .zip extension is added automatically. + invalidFilename: "Filename contains invalid characters (e.g., / \ : * ? \" < > | space) or ends with .zip." + filenamePlaceholder: e.g., agency_bundle + make: + private: Privat setzen + privateDesc: Setzt diese Feed-Quelle auf Privat. + privateState: Diese Feed-Quelle ist aktuell privat. + public: Öffentlich setzen + publicDesc: Setzt diese Feed-Quelle auf Öffentlich. + publicState: Diese Feed-Quelle ist aktuell öffentlich. + makeDeployable: Deploybar machen + makeDeployableHint: Setzen Sie diese Feed-Quelle auf Deploybar, um Sie zu einer + (in den Organisations-Einstellungen definierten) OpenTripPlanner (OTP) Instanz + als Teil einer Feed-Quelle oder als einzelen Feed zu deployen. + rename: Umbenennen + save: Speichern + title: Einstellungen + GtfsIcons: + agency: + label: Betreiber + title: Betreiber bearbeiten + calendar: + label: Abfahrtzeiten + title: Abfahrtzeiten bearbeiten + fare: + label: Tarife + title: Tarife bearbeiten + feedinfo: + label: Feed Info + title: Feed-Info bearbeiten + route: + label: Routen + title: Routen bearbeiten + scheduleExceptions: + label: Fahrplan-Ausnahmen + title: Fahrplan-Ausnahmen bearbeiten + stop: + label: Haltestellen + title: Haltestellen bearbeiten + GtfsValidationExplorer: + accessibilityValidation: Erreichbarkeits-Explorer + table: + count: Anzahl + file: Datei + issue: Fehler + priority: Priorität + timeValidation: Zeit-basierte Validierung + title: Validierungs-Explorer + validationIssues: Validatierungs-Fehler + GtfsValidationViewer: + explorer: Validierungs-Explorer + issues: + other: Andere Fehler + routes: Routen-Fehler + shapes: Streckenverlauf-Fehler + stop_times: Abfahrtszeiten-Fehler + stops: Haltestellen-Fehler + trips: Trip-Fehler + noResults: Keine anzuzeigenden Validierungsergebnisse. + tips: + DATE_NO_SERVICE: Wenn die Linie nicht an Wochenenden verkehrt, können einige + oder alle dieser Validierungsergebnisse ignoriert werden. Analog können Feiertage, + an denen keine Fahrten verkehren, in dieser Liste erscheinen. + FEED_TRAVEL_TIMES_ROUNDED: Dies ist eine übliche Eigenschaft von GTFS-Feeds, + die keine sekundengenaue Präzision für Abfahrts- und Ankunftszeite nutzen. + Wenn diese Präzision jedoch erwartet wird, könnte beim Feed-Export ein Problem + entstehen. + MISSING_TABLE: Eine fehlende Pflicht-Tabelle ist ein größeres Problem, das behoben + werden muss, bevor die meisten GTFS-Konsumenten diese Daten für Reiseauskünfte + oder in anderen Anwendungen nutzen können. + title: Validierungs-Fehler + HomeProjectDropdown: + new: Neues Projekt + select: Projekt auswählen + view: '%name% ansehen' + InfoModal: + ok: OK + JobMonitor: + clearCompleted: Abgeschlossene löschen + jobs: + none: Kein aktiver Job + one: Ein aktiver Job + some: '%count% aktive Jobs' + jobsCompleted: Alle Jobs abgeschlossen + serverJobs: Server Jobs + waiting: Wartend + LabelPanel: + labels: Etiketten + new: Neues Etikett hinzufügen + noLabels: Es gibt keine Etiketten in diesem Projekt. + LanguageSelect: + placeholder: Sprache wählen... + Login: + title: Anmelden + ManagerHeader: + noUpdateYet: keine + bundleFilename: Bundle Filename + noUrl: (keine URL) + private: Diese Feed-Quelle und all ihre Versionen sind privat. + ManagerPage: + alerts: Alarme + changelog: Änderungs-Liste + contact: Kontakt + copyright: Copyright + datatools: Data Tools + guide: Leitfaden + home: Startseite + MapModal: + cancel: Cancel + ok: OK + MergeFeedsResult: + CHECK_STOP_TIMES: Einige Trip IDs wurden in beiden Quell-Feeds gefunden. Der zusammengeführte + Feed wurde erfolgreich erstellt. + DEFAULT: Trip IDs waren in den Quell-Feeds eindeutig. Der zusammengeführte Feed + wurde erfolgreich erstellt. + body: + failure: Zusammenführung mit %errorCount% Fehlern fehlgeschlagen. + success: Zusammenführung erfolgreich durchgeführt. Eine neue Version mit dem + Ergebnios-Feed wird verarbeitet/validiert. + remappedIds: 'Abgebildete IDs: %remappedIdCount%' + skipped: 'Übersprungene Datensätze:' + skippedTableRecords: '%table%: %skippedCount%' + strategyUsed: 'Benutzte Strategie: %strategy%' + title: + failure: 'Warnung: Während der Feed-Zusammenführung sind Fehler aufgetreten!' + success: Feed-Zusammeführung war erfolgreich! + tripIdsToCheck: 'Zu prüfende Trip IDs: %tripIdCount%' + NormalizeField: + issues: + fieldUndefined: Zu normalisierendes Feld muss angegeben werden. + substitutionInvalid: Substitutions-Muster ungültig. + substitutionUndefined: Substitution-Muster müssen angegeben werden. + NormalizeStopTimesModal: + close: Close + interpolateStopTimes: Interpolate stop times between timepoints? + normalizeStopTimes: Normalize stop times + normalizeStopTimesQuestion: Normalize stop times? + selectBeginningPatternStop: "Select beginning pattern stop:" + tooFewTimepoints: "You must have more than 1 timepoint to interpolate times" + usageExplanationOne: This feature is useful when the travel times for one or more + pattern stops change. Take for example a pattern + that has been re-routed along to travel a longer distance, has had a + stop added (or removed), or has had a layover introduced mid-trip. + Once you have adjusted the travel times to account for these changes, + you can normalize the stop times to bring them into alignment with the + updated travel times reflected in the pattern stops. + usageExplanationTwo: Interpolating stop times calculates the implicit speed between timepoints + based on the shape distance and the default travel times. This speed is + then applied to the shape distance traveled for each intermediate non-timepoint + stop to provide interpolated travel times. The default travel time for non-timepoint + stops will not be modified. + usageNotes: " Usage notes" + NormalizeStopTimesTip: + info: 'Tipp: Wenn Sie Reisezeiten ändern, erwägen Sie die Benutzung des "Stop + times normalisieren"-Buttons oberhalb, um automatisch alle Stop Times auf die + aktualisierte Reisezeit anzupassen.' + NoteForm: + adminOnly: Nur für Admins? + new: Senden + postComment: Neuen Kommentar absenden + NotesViewer: + adminOnly: Diese Nachricht ist nur für Administratoren sichtbar. + all: Alle Kommentare + feedSource: Feed-Quelle + feedVersion: Version + none: Keine Kommentare. + refresh: Aktualisieren + title: Kommentare + OrganizationList: + create: Organisation erstellen + missingName: Sie müssen einen Namen für die Organisations angeben. + new: Organisation anlegen + search: Organisation suchen + OrganizationSettings: + extensions: Erweiterungen + logoUrl: + label: Logo URL + placeholder: http://example.com/logo_30x30.png + name: + label: Name + placeholder: Big City Transit + orgDetails: Organisations-Details + projects: Projekte + subDetails: Subskriptions-Details + subscriptionBeginDate: Subskription beginnt + subscriptionEndDate: Subskription endet + usageTier: + high: Hoch + low: Niedrig + medium: Mittel + title: Nutzungsstufe + PageNotFound: + homePage: Startseite + pageNotFound: Seite nicht gefunden. + Permissions: + approve-alert: GTFS-RT Alerts freigeben + approve-gtfs: GTFS Feeds freigeben + edit-alert: GTFS-RT Alerts bearbeiten + edit-gtfs: GTFS Feeds bearbeiten + manage-feed: Feed-Konfiguration verwalten + PreserveCustomFields: + addCsvWithCustomFields: "Add the CSV data with custom fields to preserve in the final output." + saveCsv: Save CSV + ProjectAccessSettings: + admin: Admin + cannotFetchFeeds: Feeds nicht abrufbar + custom: Benutzerdefiniert + feeds: Feed-Quellen + noAccess: Kein Zugriff + permissions: Berechtigungen + title: Projekt-Einstellungen für + ProjectFeedListToolbar: + actions: Aktionen + all: alle + any: mind. einer + comparison: + DEPLOYED: deployter + LATEST: aktuellster + PUBLISHED: veröffentlichter + deployedVersion: 'Deployte Version:' + deployments: Deployments + downloadCsv: Zusammenfassung als CSV herunterladen + feeds: + createFirst: Erste Feed-Quelle erstellen! + new: Neu + search: Suche nach Name + table: + deployable: Deploybar? + errorCount: Fehler + lastUpdated: Aktualisiert + name: Name + public: Öffentlich? + retrievalMethod: Abruf-Methode + validRange: Gültigkeits-Zeitraum + title: Feed-Quellem + update: Alle abrufen + filter: + active: Aktiv + all: Alle + expired: Abgelaufen + expiring: Ablaufend + future: Zukünftig + filterByLabels: Filtere Feeds nach Label + filterFeedSources: Filtere Feed-Quellen nach + hasDeployedVersion: Hat deployete Version? + hasLatestVersion: Hat aktuellste Version? + hasPublishedVersion: Hat veröffentlichte Version? + isPublic: Ist Öffentlich + labelEndDate: '%labelPrefix% End-Datum' + labelNumberIssues: '%labelPrefix% Anzahl Fehler' + labelNumberRoutes: '%labelPrefix% Anzahl Routen' + labelNumberStopTimes: '%labelPrefix% Anzahl Abfahrtszeiten' + labelNumberStops: '%labelPrefix% Anzahl Haltestellen' + labelNumberTrips: '%labelPrefix% Anzahl Trips' + labelStartDate: '%labelPrefix% Start-Datum' + lastFetched: Zeitpunkt des letzten Datenabrufs des Feeds von URL + lastUpdated: Zuletzt aktualisiert + latestValidation: + endDate: 'Aktuellste Version: End-Datum' + errorCount: 'Aktuellste Version: Anzahl Fehler' + routeCount: 'Aktuellste Version: Anzahl Routen' + startDate: 'Aktuellste Version: Start-Datum' + stopCount: 'Aktuellste Version: Anzahl Haltestellen' + stopTimesCount: 'Aktuellste Version: Anzahl Abfahrtszeiten' + tripCount: 'Aktuellste Version: Anzahl Trips' + makePublic: Öffentliche Feeds veröffentlichen + mergeFeeds: Alle Zusammenführen + name: Name + noteSorting: 'Hinweis: Sortieren ist nur anhand der jeweils aktuellste Feed-Version + möglich' + ofTheLabels: 'der Labels:' + publishedVersion: 'Veröffentlichte Version:' + settings: Einstellungen + showFeedsWith: Zeige Feeds mit + sort: + alphabetically: + asc: A-Z + desc: Z-A + title: Alphabetisch + endDate: + asc: Frühest-Spätest + desc: Spätest-Frühest + title: Auslauf-Datum + lastUpdated: + asc: Veraltet-Aktuell + desc: Aktuell-Veraltet + title: Letzte Aktualisierung + numErrors: + asc: Wenigste-Meiste + desc: Meiste-Wenigste + title: Anzahl Auffälligkeiten + startDate: + asc: Frühest-Spätest + desc: Spätest-Frühest + title: Start-Datum + sortBy: Sortiere nach + sync: + mtc: Sync von MTC + transitfeeds: Sync von transitfeeds + transitland: Sync von transit.land + url: Feed-Abruf URL + version: Version + ProjectSettingsForm: + cancel: Abbrechen + confirmDelete: Sind Sie sicher, dass Sie dieses Projekt löschen möchten? Diese + Aktion kan nicht rückgängig gemacht werden und alle Feed-Quellen und ihre Versionen + werden dauerhaft gelöscht. + dangerZone: Gefarenzone + deleteProject: Projekt löschen? + deleteProjectAction: Projekt löschen + deleteThisProject: Dieses Projekt löschen. + deleteWarning: Wenn Sie ein Projekt löschen, kann das Projekt und all seine Feed-Quellen + nicht wieder hergestellt werden. + fields: + localPlacesIndex: + title: Adress-Index + webhookUrl: Webhook URL + sharedStops: + title: Shared Stops + placeholder: Shared stops config CSV + location: + boundingBox: Gebiets-Grenzen (W,S,E,N) + boundingBoxPlaceHolder: min_lon, min_lat, max_lon, max_lat + defaultLanguage: Standard-Sprache + defaultLocation: Standard-Ort (lat, lng) + defaultTimeZone: Standard-Zeitzone + title: Bereich + name: Projektname + title: Allgemein + updates: + autoFetchFeeds: Feed-Quelle automatisch abrufen? + title: Aktualisierungen + noPermissions: Sie haben keine Bearbeitungs-Rechte für die Eigenschaften dieser + Feed-Quelle. + required: Erforderlich. + save: Speichern + selectBounds: Wähle Projekt-Grenzen + selectBoundsHint: Spiegele Karte vor + title: Einstellungen + warning: Warnung! + ProjectSummaryPanel: + hoursPerWeekday: Stunden pro Wochentag + numberOfFeeds: 'Anzahl Feeds:' + summary: Zusammenfassung + totalErrors: 'Anzahl Fehler:' + totalService: 'Anzahl Services:' + ProjectViewer: + autoFetchDisabled: Automatischer Abruf deaktiviert + deployments: Deployments + feedSourceDesc: Eine Feed-Quelle defininert den Veröffentlichungsort eines GTFS-Feeds. + GTFS kann durch automatischen Abruf, direktes Bearbeiten, oder das manuelle + Hochladen einer GTFS-Zip-Datei befüllt werden. + feedSourceTitle: Was ist eine Feed-Quelle? + feeds: + createFirst: Erste Feed-Quelle erstellen! + new: Neue Feed Quelle + search: Suchen nach Name + table: + deployable: Deploybar? + errorCount: Fehler + lastUpdated: Aktualisiert + name: Name + public: Öffentlich? + retrievalMethod: Abruf-Method + validRange: Gültiger Bereich + title: Feed Quellen + update: Alle abrufen + here: hier + makePublic: Öffentliche Feeds publizieren + mergeFeeds: Alle zusammeführen + noProjectFound: Keine Projekte gefunden für + note: 'Hinweis:' + publicViewed: "Öffentliche Feed-Seite ist sichtbar " + returnToProjects: Zurück zur Projektliste + settings: Einstellungen + ProjectsList: + createFirst: Erstelle mein erstes Projekt + help: + content: Ein Projekt dient dazu, GTFS-Feeds zu gruppieren. Zum Beispiel können + die Feeds eines Projekts alle zur gleichen Region gehören oder sie definieren + zusammen ein Planungs-Szenario. + title: Was ist ein Projekt? + new: Neues Projekt + noProjects: Sie haben derzeit noch keine Projekte. + search: Suche nach Projektname + table: + name: Projektname + title: Projekte + PublicFeedsTable: + country: Ablaufend + lastUpdated: Letzte Aktualisierung + link: Link zum GTFS + name: Feed-Name + region: Region + search: Suche + stateProvince: Staat oder Bundesland + PublicFeedsViewer: + title: Katalog + PublicLandingPage: + appLogo: Applikations-Logo + copyright: Copyright + existingUsers: Existiende Nutzer + here: hier + learnMore: Erfahre mehr über Daten-Werkzeuge + signInHere: hier anmelden + viewDashboard: Dashboard ansehen + RegionSearch: + placeholder: Suche nach Regionen oder Unternehmen + ReplaceFileFromString: + addCsvData: "Add the CSV data to add to/replace in the incoming GTFS:" + saveCsv: Save CSV + ResultTable: + affectedIds: Betroffene ID(s) + description: Beschreibung + line: Linie + priority: Priorität + problemType: Problemtyp + RetiredJob: + bug: Oh nein! Es sieht so aus, als wäre ein Fehler aufgetreten. + support: Um einen Fehlerbericht einzusenden, übermitteln Sie bitte einen Screenshot + ihres Browser-Fensters, de folgenden Text (aktuelle URL and Fehler-Details), + und eine detailierte Beschreibung der Schritte, die Sie zuvor ausgeführt haben + an %supportEmail%. + view: Ansehen + RouteLayout: + errorOccurred: An error occurred while trying to fetch the data + jumpToRoute: Jump to a Route + route: "Route:" + RouteRow: + patterns: "%num% Patterns" + stops: "%num% Stops" + trips: "%num% Trips" + ScheduleExceptionForm: + addDate: " Add date" + customServiceID: Custom service ID + dates: Dates + exceptionBasedService: Exception Based Service + exceptionName: Exception name* + noDatesSpecified: No dates specified + noService: No Service + onTheseDates: On these dates* + ranges: Ranges + runFollowing: "Run the following schedule:" + selectCalendar: Select calendar to run* + selectCalendarToAdd: "Select calendars to add (optional):" + selectCalendarToRemove: "Select calendars to remove (optional):" + selectExemplar: -- Select exception type -- + swapAddOrRemove: Swap, add, or remove + thanksgivingDay: Thanksgiving Day + unnamedDefault: "[unnamed]" + SelectFileModal: + cancel: Abbrechen + mtcMergeWarning: Warning! Feeds merged outside of TDM are not recognized as a merged feed within TDM. + ok: OK + ServerSettings: + awsSetup: Anleitungen um OTP Deployment Server auf AWS aufzusetzen + confirmDelete: Sind Sie sicher, dass Sie diesen Server-Eintrag löschen möchten? + confirmTermination: 'Sind Sie sicher, dass Sie %count% Instanz(en) beenden möchten?\n\n + ACHTUNG: Dies wird OTP Dienste aller auf diesem Server gestarteten Deployments + beenden.' + deployment: + otpServers: + new: Server hinzufügen + refresh: Aktualisieren + serverPlaceholder: Servername + title: Deployment Server Verwaltung + instructions: Anleitungen + noServers: Keine Server angelegt + save: Speichern + title: Einstellungen + ServerSpecialFields: + confirmTermination: Sind Sie sicher, dass Sie diese EC2-Instanz beenden möchten? + Diese Aktion kann nicht rückgängig gemacht werden und entfernt diese Instanz + aus dem Load Balancer. + noEC2Instances: Keine mit diesem Server assoziierten EC2-Instanzen. + projectSpecific: Project spezifisch? + projectSpecificPlaceholder: Weisen Sie ein Projekt zu oder lassen Sie es das Feld + leer für beliebige Projekte + terminateEC2: EC2-Instanzen beenden + useELB: Elastic Load Balancer (ELB) verwenden? + ShowAllRoutesOnMapFilter: + fetching: Abruf läuft... + noShapes: Für dieses Feed wurden noch keine Routenformen erstellt. + showAllRoutesOnMap: Zeige alle Routen + tooManyShapeRecords: große shapes.txt können Performance beeinträchtigen + Sidebar: + about: Über diese Applikation + account: Konto + serverJobs: Server Jobs + serverVersion: 'Server Version:' + settings: Einstellungen + uiDeployedAt: 'UI deployed:' + uiVersion: 'UI Version:' + unknown: Unbekannt + SnapshotItem: + active: Aktiv + confirmDelete: Dies wird den Schnappschuss dauerhaft löschen. Alle damit gespeicherten + Date können nicht wiederhergestellt werden. Sind Sie sicher, dass Sie fortfahren + möchten? + confirmLoad: Dies wird alle aktiven GTFS Editor Daten dieser Feed-Quelle mit den + Daten dieser Version überschreiben. Wenn Sie im Editor ungespeicherte Änderungen + behalten möchten, müssen Sie für diese Daten zuerst einen Schnappschuss erstellen. + Sind Sie sicher, dass Sie fortfahren möchten? + createFromScratch: Erstelle leeres GTFS + created: erstellt + date: Datum + delete: Löschen + download: Herunterladen + feed: Feed + load: Zur Bearbeitung laden + loadLatest: Lade aktuellste Version zur Bearbeitung + name: Name + noVersions: (Keine Versionen) + noVersionsExist: Für diese Feed-Quelle existieren noch keine Versionen. + of: von + publish: Veröffentlichen + restore: Wiederherstellen + snapshot: Schnappschuss + title: Schnappschüsse + version: Version + StarButton: + star: Favorisieren + unstar: Favorisieren aufheben + Status: + CREATED_SNAPSHOT: + body: Neuer Schnappschuss "%payload%" erstellt. Er wird vom "Schnappschüsse" + Reiter in der Feed-Quelle-Seite aus zugänglich sein. + title: Schnappschuss erstellt + CREATING_SNAPSHOT: Erstelle Schnappschuss... + DELETING_AGENCY: Lösche Betreiber... + DELETING_FEEDVERSION: Lösche Feed-Version... + DELETING_SNAPSHOT: Lösche Schnappschuss... + DELETING_TRIPS_FOR_CALENDAR: Lösche Trips... + FETCHING_ALL_JOBS: Rufe Jobs ab... + LOADING_FEEDVERSION_FOR_EDITING: Lade Version in Editor... + PUBLISHING_GTFSPLUS_FEED: Veröffentlichte GTFS+ Feed... + RENAMING_FEEDVERSION: Benenne Feed-Version um... + REQUEST_RTD_ALERTS: Lade Alerts... + REQUESTING_AGENCIES: Lade Betreiber... + REQUESTING_DEPLOYMENT: Lade Deployment... + REQUESTING_DEPLOYMENTS: Lade Deployments... + REQUESTING_FEEDSOURCE: Lade Feed... + REQUESTING_FEEDSOURCES: Lade Feeds... + REQUESTING_FEEDVERSION_ISOCHRONES: Berechne Zugangszeiten... + REQUESTING_FEEDVERSIONS: Lade Feed-Versionen... + REQUESTING_GTFSEDITOR_SNAPSHOTS: Lade Schnappschuss... + REQUESTING_GTFSPLUS_CONTENT: Lade GTFS+ Daten... + REQUESTING_NOTES: Lade Kommentare... + REQUESTING_ORGANIZATIONS: Lade Organisationen... + REQUESTING_PROJECT: Lade Projekt... + REQUESTING_PROJECTS: Lade Projekte... + REQUESTING_PUBLIC_FEEDS: Lade öffentliche Feeds... + REQUESTING_ROUTES: Lade Routes... + REQUESTING_STOPS: Lade Haltestellen... + REQUESTING_SYNC: Synchronisiere Feeds... + REQUESTING_TRIPS_FOR_CALENDAR: Lade Trips... + REQUESTING_USERS: Lade Nutzer... + REQUESTING_VALIDATION_ISSUE_COUNT: Lade Validatierungs-Ergebnisse... + RESTORING_SNAPSHOT: Stelle Schnappschuss wieder her... + RUNNING_FETCH_FEED_FOR_PROJECT: Aktualisiere Feeds für Projekt... + SAVING_AGENCY: Speichere Betreiber... + SAVING_DEPLOYMENT: Speichere Deployment... + SAVING_FEEDSOURCE: Speichere Feed... + SAVING_PROJECT: Speichere Projekt... + RUNNING_FETCH_FEED: Lade Feed... + SAVING_ROUTE: Speichere Route... + SAVING_STOP: Speichere Haltestelle... + UPDATING_SERVER: Speichere Server... + UPDATING_USER_DATA: Aktualisiere Nutzerkonto... + UPLOADING_FEED: Lade Feed hoch... + UPLOADING_GTFSPLUS_FEED: Speichere GTFS+ Daten... + VALIDATING_GTFSPLUS_FEED: Aktualisiere GTFS+ Validierung... + StatusModal: + close: Schließen + login: Anmelden + reload: Seite neu laden + relock: Feed zur Bearbeitung sperren + relockingFailed: + body: Erneutes Sperren ist nur erlaubt, wenn eine andere Bearbeitung-Sitzung + durch Sie im Gange ist (nicht für andere Nutzende). Sie können es später erneut + versuchen, oder den/die aktuelle Bearbeiter*in kontaktieren, dass sie die + Sitzung beendet. + title: Versuch, Bearbeitung zu übernehmen, ist fehlgeschlagen! + TimetableEditor: + choosePattern: Trip-Muster auswählen. + createNew: Erstelle neues + deleteSelectedTrip: Sind Sie sicher, dass Sie den ausgewählten Trip permanent + lösche möchten? + deleteSelectedTrips: Sind Sie sicher, dass Sie die %count% ausgewählten Trips + permanent lösche möchten? + deleteTrips: Lösche Trips + deleteTripsQuestion: Trips löschen? + TimetableHeader: + addBlankTrip: Add blank trip + advancedSettings: Advanced settings + backToRoute: Back to route + calendarName: "%truncatedCalendarName% calendar" + cellNumber: "Cell %cellId%" + createTripSeries: Create trip series + deleteTrips: Delete trips + duplicateTrips: Duplicate trips + frequencyEditor: Frequency editor + hideDepartureTimes: " Hide departure times" + hideDepartureTimesTooltip: "Hiding departure times will keep arrival and departure times in sync. WARNING: do not use if arrivals and departures differ." + numValidationIssues: "%errorCount% validation issue(s) found!" + patternsOn: "%truncatedPatternName% on " + saveChanges: Save changes + selectCalendar: "[select calendar]" + selectPattern: "[select pattern]" + shiftClickToSubtract: Shift-click to subtract + showShortcuts: Show keyboard shortcuts + timetableEditor: Timetable editor + tripsFor: "trips for " + undoChanges: Undo changes + useSeconds: Use seconds in offset + useSecondsToolTip: Toggling the use of seconds allows more precision in the trip offset and trip series creation tools. + validationIssues: Validation issues + TimetableHelpModal: + close: Schließen + pressQuestionmark: Drücken Sie ? um Tastatur-Shortcuts anzusehen + shortcuts: + modify: + desc: + - Lösche ausgewählte Trip(s) + - Neuer Trip + - Klone ausgewählte(n) Trip(s) + - Wert von benachbarter Zelle (links) übernehmen + - Wert von Zelle oberhalb übernehmen + title: Ändere Trips + navigate: + desc: + - Voriger/nächter Trip + - Voorige/nächste Spalte + - Wähle Trip + - Alle Trips auswählen + - Alle Trips abwählen + title: Navigatieren und Trips auswählen + offset: + desc: + - Verschiebe Abfahrtszeiten des ausgewählten Trips durch Addieren eines Zeitversatzes + - Verschiebe Abfahrtszeiten des ausgewählten Trips durch Subtrahieren eines + Zeitversatzes + - Verschiebe nur Zeit der aktiven Zelle durch Addieren eines Zeitversatzes + - Verschiebe nur Zeit der aktiven Zelle durch Subtrahieren eines Zeitversatzes + - Reduziere Zeitversatz um 1 Minute + - Reduziere Zeitversatz um 10 Minuten + - Erhöhe Zeitversatz um 1 Minute + - Erhöhe Zeitversatz um 10 Minuten + title: Zeiten verschieben + title: Abfahrtszeiten-Editor Tastatur-Shortcuts + TimezoneSelect: + placeholder: Zeitzone auswählen... + TransformationsViewer: + columnsAdded: "Custom columns added: %columns%" + noTransformationApplied: No transformations applied. + rowsAdded: "Rows added: %rows%" + rowsDeleted: "Rows deleted: %rows%" + rowsUpdated: "Rows updated: %rows%" + tableModified: Table Modified + tableAdded: Table Added + tableReplaced: Table Replaced + tableDeleted: TableDeleted + transformationsTitle: Transformations + UserAccount: + account: + title: Konto + billing: + title: Rechnung + notifications: + methods: Benachrichtigungs-Methoden + subscriptions: Ihre Subskriptionen + title: Benachrichtigungen + unsubscribeAll: Von allen abmelden + organizationSettings: Organisations-Einstellungen + organizations: + title: Organisationen + personalSettings: Persönliche Einstellungen + profile: + profileInformation: Profil-Information + title: Profil + title: Meine Einstellungen + UserAccountInfoPanel: + hello: Hallo + profile: Profil + roles: + applicationAdmin: Applikations-Admin + organizationAdmin: Organisations-Admin + standardUser: Standard-Nutzer*in + UserButtons: + admin: Verwaltung + logout: Abmelden + myAccount: Mein Konto + UserHomePage: + authDisabledInfo: >- + You are running %appTitle% without user authentication enabled. + Features such as user management, account management and feed activity watching are unavailable. + createFirst: Erstelle mein erstes Projekt + help: + content: Ein Projekt dient dazu, GTFS-Feeds zu gruppieren. Zum Beispiel können + die Feeds eines Projekts alle zur gleichen Region gehören oder sie definieren + zusammen ein Planungs-Szenario. + title: Was ist ein Projekt? + new: Neues Projekt + noProjects: Sie haben derzeit noch keine Projekte. + recentActivity: Letzte Aktivitäten + recentActivityNone: Keine aktuellen Aktivitäten für Ihre Subskriptionen. + table: + name: Projekt Name + title: Projekte + userDocs: Benutzungs-Dokumentation + welcomeTo: Willkommen zu + UserList: + filterByOrg: Filtere nach Org. + headings: + accountType: Typ + lastLogin: Letzte Anmeldung + projects: Projekte + user: Konto + noResults: (Keine anzuzeigenden Ergebnisse) + of: von + perPage: Konten pro Seite + search: Suche nach Kontoname + showing: Angezeigt werden Nutzer*innen + title: Nutzer*innen-Verwaltungen + UserRow: + appAdmin: App-Admin + cancel: Abbrechen + delete: Löschen + deleteConfirm: Sind Sie sicher, dass Sie dieses Konto dauerhaft löschen möchten? + edit: Bearbeiten + missingProject: unbekannt + noProjectsFound: Keine Projekte + orgAdmin: Organisation-Admin + save: Speichern + unknownAccount: Unbekannt + UserSettings: + admin: + description: Applikations-Admininistrator*innen haben vollen Zugriff auf alle + Projekte. + title: Applikations-Admininistrator*in + application: Applikations-Einstellungen + cancel: Abbrechen + delete: Löschen + edit: Bearbeiten + noProjects: Keine Projekte verfügbar + org: + admin: Organisations-Administrator*in + billing: Rechungsstellung-Admin + description: Organisations-Administratoren haben vollen Zugriff auf Projekte + dieser Organisation. + project: + admin: Admin + custom: Benutzerdefiniert + noAccess: Kein Zugriff + save: Speichern + Validation: + agencyRequired: Field must be populated for feeds with more than one agency. + conflictingServiceId: Service ID already exists in a standard calendar! + customServiceId: Custom service ID + dateServiceIdCombinationDuplicate: Date (%exceptionDate%) and Service ID (%serviceId%) combination cannot appear more than once for all exceptions. + idMustBeUnique: Identifier must be unique. + idRequired: Identifier is required if more than one agency exists. + invalidEmail: Field must contain valid email address. + invalidLatitude: Field must be valid latitude. + invalidLongitude: Field must be valid longitude. + invalidRouteType: Field must be a valid route type. + invalidUrl: Field must contain valid URL. + latLonRequired: Latitude and Longitude are required for your current location type. + mustBePositiveInteger: Field must be a positive integer. + mustBePositiveNumber: Field must be a positive number. + mustBeValidNumber: Field must be a valid number. + nameAlreadyUsed: "%name% is already used in another exception." + serviceRequired: Calendar must have service for at least one day. + stopNameRequired: Stop name is required for stop, station, and entrance location types. + requiredFieldEmpty: Required field must not be empty. + VersionButtonToolbar: + confirmDelete: Sind Sie sicher, dass sie diese Version endgültig löschen möchten? + confirmLoad: Dies wird alle aktiven GTFS Editor Daten dieser Feed-Quelle mit den + Daten dieser Version überschreiben. Wenn Sie im Editor ungespeicherte Änderungen + behalten möchten, müssen Sie für diese Daten zuerst einen Schnappschuss erstellen. + Sind Sie sicher, dass Sie fortfahren möchten? + delete: Löschen + download: Herunterladen + feed: Feed + load: Laden + noVersionsExist: Für diese Feed-Quelle existieren keine Versionen. + status: Status + timestamp: Datei-Zeitstempel + version: Version + VersionComparisonDropdown: + compareToVersion: Vergleich mit Version %version% + compareVersions: Vergleiche Versionen + exit: Vergleichsmodus verlassen + loadAnother: Andere Version laden um zu vergleichen + selectVersion: Version zum Vergleich auswählen + VersionSelectorDropdown: + noVersions: Keine Versionen verfügbar + WatchButton: + emailVerificationConfirm: Um EMail-Benachrichtigungen zu erhalten, müssen Sie + zuerst Ihre EMail-Adresse bestätigen. Möchten Sie die Email-Bestätigungs-Nachricht + für Ihr Konto erneut versenden lassen? + unwatch: Nicht weiter verfolgen. + verificationSendError: Beim Versenden der EMail-Überprüfung ist ein Fehler aufgetreten! + verificationSent: Bitte prüfen Sie Ihr Posteingangsfach und bestätigen Sie Ihre + Email-Adresse durch Klick auf den Bestätigen-Links. Sie müssen dann diese Seite + aktualisieren und den 'Verfolgen'-Button klicken, um sich für Benachrichtigungen + zu registrieren. + watch: Beobachten + WrapComponentInAuthStrategy: + adminTestFailed: Sie haben versucht, eine eingeschränkt sichtbare Seite aufzurufen, + verfügen jedoch nicht über die erforderlichen Rechte. + CustomCSVForm: + numLines: "%numLines% lines." + csvInvalid: CSV ungültig! + uploading: Uploading... + FeedTransformationErrors: + csvMissingName: Custom CSV must have a name. + csvNameContainsTxt: Custom CSV name cannot contain .txt + undefinedCSVData: CSV data must be defined. + undefinedTable: Table must be defined + PatternStopCard: + PatternStopContents: + defaultDwellTime: Default dwell time + defaultTravelTime: Default travel time + firstStopTravelTime: Travel time for first stop must be zero + stopHeadsignPlaceholder: Outbound + stopHeadsignText: Stop headsign + stopHeadsignTitle: Headsign that overrides trip headsign between stops. + timepoint: Timepoint? + travelTimeHelp: Define the default time it takes to travel to this stop from + the previous stop. + PickupDropOffSelect: + available: Available (0) + continuousDropOffTitle: Indicates whether a rider can alight from the transit + vehicle at any point along the vehicle's travel path. + continuousPickupTitle: Indicates whether a rider can board the transit vehicle + anywhere along the vehicle's travel path. + continuousServiceDefault: (Inherit from route) + dropOffTitle: Define the dropff method/availability at this stop. + mustCoordinate: Must coordinate with driver to arrange (3) + mustPhoneAgency: Must phone agency to arrange (2) + notAvailable: Not available (1) + pickupDropOffDefault: (Default - Available) + pickupTitle: Define the pickup method/availability at this stop. + TripSeriesModal: + alternateEvery: "Alternate every: " + automaticallyUpdateBlockIds: Automatically assign Block IDs for trips created in series? + automaticallyUpdateTripIds: Automatically update Trip IDs for trips created in series? + blockIdPrefixPlaceholder: Block ID prefix + blockIncrementPlaceholder: inc. by + close: Close + createTripSeriesBody: Enter the start and end time for the trip series (24 hour time) and headway between trips. Click generate to create the series of trips. + createTripSeriesQuestion: Create a series of trips + disabledTooltip: There is an issue with the input data + endTime: "End Time:" + formatExplanation: "* Block IDs will be formatted as {prefix}-{alternating number}, e.g. 'WEEKDAY-1' then 'WEEKDAY-2', etc.'" + generateTrips: Generate Trips + headway: "Headway:" + incrementAmountPlaceholder: Increment amount + incrementBy: inc. by + incrementStartPlaceholder: Increment start (default 0) + prefixPlaceholder: Trip ID prefix (optional) + startTime: "Start Time:" + tripsStartingWith: "trip(s), starting with:" + diff --git a/i18n/polish.yml b/i18n/polish.yml index 6cddadf34..523b1654d 100644 --- a/i18n/polish.yml +++ b/i18n/polish.yml @@ -1,2 +1,1517 @@ _id: pl _name: Polski +components: + Actions: + error: Error making %method% request to %url% + errorGraphQL: Error fetching GTFS entities via GraphQL + errorWithStatus: Error (%status%) making %method% request to %url% + networkError: Network error (%status%)!\n\n(%method% request on %url%) + noFile: No file to upload! + AddCustomFile: + addCustomCsvData: Add the custom CSV data. + customFileName: Custom file name + saveCsvAndFileName: Save CSV and file name + AdminPage: + applicationLogs: Application logs + backToDashboard: Back to dashboard + deploymentServers: Deployment servers + noAccess: You do not have sufficient user privileges to access this area. + organizations: Organizations + title: Administration + userManagement: User Management + ApplicationStatusView: + actions: Actions + columns: + id: ID + name: Name + path: Path + status: Status + time: Time + user: User + feed: + filterByLabels: Filter feeds by labels + isPublic: Is Public + lastFetched: Last Time Data Fetched from Feed URL + lastUpdated: Last Updated + lastApiRequests: Last API requests by User + lastUpdatedAt: last updated at + latestValidation: + endDate: 'Latest Version: End Date' + errorCount: 'Latest Version: Number of Issues' + routeCount: 'Latest Version: Number of Routes' + startDate: 'Latest Version: Start Date' + stopCount: 'Latest Version: Number of Stops' + stopTimesCount: 'Latest Version: Number of Stop Times' + tripCount: 'Latest Version: Number of Trips' + name: Name + noDataText: No active jobs in progress. + refresh: Refresh + serverJobs: Active Server Jobs + sortBy: Sort By + unauthenticated: (unauthenticated) + url: Feed download URL + userLogs: User Authentication Logs + viewUserLogs: View user logs on Auth0.com + Brand: + dataTools: Data Tools + Breadcrumbs: + deployments: Wdrożenia + projects: Projekty + root: Eksploruj + CalendarSelect: + exceptionBasedCalendar: (Exception based calendar) + selectCalendar: " Select calendar..." + ConfirmModal: + cancel: Cancel + ok: OK + CreateProject: + new: Create New Project + CreateSnapshotModal: + cancel: Anuluj + description: Migawki to zapisywanie punktów, na które możesz powrócić do powrotu + do Edytowanie paszy GTFS. Do Auto-Publikuj nowy plik GTFS (i proces jako Nowa + wersja pliku danych, stwórz migawkę za pomocą opcji poniżej. + fields: + comment: + label: Komentarz + placeholder: Dodatkowe informacje (opcjonalnie) + confirmPublishWithUnapproved: + label: Potwierdź publikację z niezatwierdzonymi trasami + name: + label: Nazwa + placeholder: Nazwa migawki (wymagana) + publishNewVersion: + label: Publikuj migawkę jako nowa wersja pliku + publishProprietaryFiles: + helpText: Proprietary files allow you to maintain certain Datatools features, such as pattern names, when re-importing a feed. + label: Publish new feed version with proprietary (extra) Datatools files. + missingNameAlert: Migawce należy nadać prawidłową nazwę! + ok: OK + title: Utwórz nową migawkę + unapprovedRoutesDesc: 'Trasy te nie zostaną uwzględnione w danych wyjściowych:' + unapprovedRoutesHeader: 'Następujące trasy nie są akceptowane:' + CreateUser: + email: + label: Email Address + placeholder: Enter email + new: Utwórz użytkownika + password: + label: Password + placeholder: Enter password for new user + title: Create User + CustomCSVForm: + numLines: "%numLines% lines." + csvInvalid: CSV ungültig! + uploading: Uploading... + DatatoolsNavbar: + account: Moje konto + alerts: Alerty + editor: Edytor + guide: Przewodnik + login: Logowanie + logout: Wylogowanie + manager: Manager + resetPassword: Reset hasła + signConfig: eTID Config + users: Użytkownicy + DeploymentConfirmModal: + alert: + alreadyDeployed: is already deployed to this server at the same router. (Deploying + would evict the current graph.) + boundsTooLarge: Bounds are much too large to successfully deploy to OpenTripPlanner. + Deployment is disabled. + expiredFeeds: The following feeds have expired (all scheduled trips are for + past dates) + missingBounds: There are no bounds defined for the set of feeds. Deployment + is disabled. + missingFeeds: There are no feeds defined for this deployment. Deployment is + disabled. + success: Deployment successfully deployed. + cancel: Anuluj + close: Zamknij + danger: Uwaga! + deploy: Wdrożenie + invalidBounds: Granice są nieprawidłowe! + success: Sukces! + to: do + warning: Ostrzeżenie! + DeploymentConfirmModalAlert: + danger: Uwaga! + success: Sukces! + warning: Ostrzeżenie! + DeploymentVersionsTable: + dateRetrieved: Data pozyskania + errorCount: Licznik błędów + expires: Wygasa + loadStatus: Załadowany prawidłowo + name: Nazwa + routeCount: Licznik linii + stopTimesCount: Licznik czasów przystankowych + tripCount: Licznik kursów + validFrom: Ważny od + version: Wersja + DeploymentViewer: + addFeedSource: Dodaj źródło kanału + allFeedsAdded: Dodano wszystkie kanały + deploy: Wdrażaj + download: Pobierz + noServers: Brak zdefiniowanych serwerów + search: Szukaj według nazwy + table: + dateRetrieved: Data pozyskania + errorCount: Licznik błędów + expires: Wygasa + loadStatus: Załadowany prawidłowo + name: Nazwa + routeCount: Licznik linii + stopTimesCount: Licznik czasów przystankowych + tripCount: Licznik kursów + validFrom: Ważny od + version: Wersja + to: do + versions: Wersje kanałów + DeploymentsList: + delete: Remove deployment + new: New Deployment + search: Search for deployments + table: + creationDate: Utworzony + deployedTo: Wdrożony do + feedCount: '# of feeds' + lastDeployed: Ostatnio wdrożony + name: Nazwa + testDeployment: Test? + title: Wdrożenia + DeploymentsPanel: + autoDeploy: + deployWithErrors: + checklabel: Deploy even if some feed versions have critical errors + help: | + If this is unchecked, an auto-deployment will halt if any of the feed versions in the deployment have at least one critical error + title: Critical Errors Handling + help: | + A deployment will automatically be kicked off (assuming there are no critical errors) whenever one of the above-defined events occurs. + label: Auto-deploy events + placeholder: Specify auto-deploy events + title: Auto-deployment + types: + ON_FEED_FETCH: A new version is fetched + ON_PROCESS_FEED: A new version is processed + config: + body: | + Deployments can use project-level configurations (e.g., for build or router config files) or be configured individually. + editSettings: Edit deployment settings + manageServers: Manage deployment servers + title: Configuring deployments + delete: Remove deployment + new: New Deployment + pinnedDeployment: + help: Pin a deployment (and deploy to a server at least once) to enable auto-deployment. + label: Pinned deployment + placeholder: Select a deployment to pin + search: Search for deployments + table: + creationDate: Utworzony + deployedTo: Wdrożony do + feedCount: '# kanałów' + lastDeployed: Ostatnio wdrożony + name: Nazwa + testDeployment: Test? + title: Wdrożenia + EC2InstanceCard: + aws: AWS + confirmTermination: Are you sure you want to terminate this EC2 instance? This + action cannot be undone and will remove this instance from the load balancer. + log: log + noPublicIP: No public IP + notApplicable: N/A + status: + booting: Booting up. + running: Running as server. + terminated: Terminated. + terminatedAt: Terminated %moment% + terminate: Terminate instance + view: View deployment + EditableTextField: + invalidInput: Must provide a valid input. + none: (none) + EditorFeedSourcePanel: + active: Aktywny + availableSnapshots: Available snapshots + confirmDelete: Spowoduje to trwałe usunięcie tego zrzutu. Zapisane tutaj dane + nie mogą być odzyskane. Jesteś pewien, że chcesz kontynuować? + confirmLoad: Spowoduje to zastąpienie wszystkich aktywnych danych edytora GTFS + dla tego źródła kanału danymi z tej wersji. Jeśli w Edytorze jest niezapisana + praca, którą chcesz zachować, musisz najpierw wykonać zrzut bieżących danych + Edytora. Jesteś pewien, że chcesz kontynuować? + createFromScratch: Twórz GTFS od podstaw + created: utworzony + date: Data + delete: Usuń + download: Pobierz + editFeed: Edit feed + feed: Kanał + help: + body: + "0": Migawki to punkty zapisu, do których zawsze można wrócić podczas edytowania + kanału GTFS. + "1": Migawka może reprezentować pracę w toku, scenariusz przyszłego planowania + lub nawet różne wzorce usług (np. znaczniki harmonogramu letniego). + title: Co to są migawki? + load: Wczytaj do edycji + loadLatest: Załaduj najnowszy do edycji + name: Nazwa + noOtherSnapshots: No other snapshots + noSnapshotsExist: Obecnie nie istnieją żadne zrzuty tego kanału. Migawki można + tworzyć w Edytorze. Kliknij „Edytuj kanał”, aby przejść do trybu edycji. + noVersions: (Brak wersji) + noVersionsExist: Brak wersji dla tego źródła kanału. + of: z + publish: Publikuj + restore: Przywróć + snapshot: migawka + snapshotLatest: Take snapshot of latest changes + title: Migawki + version: Wersja + EditorInput: + daysOfService: Days of service + dropImage: Drop %activeComponent% image here, or click to select image to upload. + optional: (optional) + selectAgency: Select agency... + selectDate: Please select a date + selectOption: -- select an option -- + uploadAsset: Upload %activeComponent% branding asset + EditorSidebar: + backToFeed: Back to Feed + EntityDetailsHeader: + attributes: Attributes + feedInfo: Feed Info + noValidationIssues: No validation issues + requiredField: '* denotes required field' + routeDetails: Route details + rules: Rules + saveChanges: Save changes + tripPatterns: Trip patterns + undoChanges: Undo changes + validationIssues: validation issue(s) + zoomTo: Zoom to + EntityList: + createFirst: Create first + createStop: Right-click a location on map to create a new stop + editSchedules: Edit schedules + name: Name + ExceptionCalendarSelector: + selectCalendar: Select calendar... + unnamedDefault: "[unnamed]" + ExceptionDate: + addRange: Add range + dateRemoved: ⓘ Date has been removed. Date entered is already included in an existing range or single date! + selectDate: Select date + ExceptionDateRange: + andOtherErrors: ...and %errors% other errors + deleteEndDate: Delete end date + deleteRange: Delete range + ExceptionValidationErrorsList: + andOtherErrors: ...and %errors% other errors + ExportPatternsModal: + exportPatterns: Publish version with proprietary patterns? + no: No + yes: Yes + FeedActionsDropdown: + delete: Delete + deleteFeedSource: Delete Feed Source? + deploy: Deploy + deployFeed: Deploy feed source. + deployNoPermission: You do not have permission to deploy feed + fetch: Fetch + menu: Menu + noVersions: No versions exist. Create new version to deploy feed + notDeployable: Feed source is not deployable. Change in feed source settings. + openInEditor: Open in Editor + upload: Upload + uploadFeed: Upload Feed + view: View public page + FeedFetchFrequency: + DAYS: dni + HOURS: godzin + MINUTES: minut + fetchFeedEvery: Pobieraj kanał co + FeedInfo: + autoFetch: Automatyczne pobieranie + autoPublish: Automatycznie publikuj + bundleFilename: Bundle Filename + dateFormat: MMM D, YYYY + deployable: Rozmieszczany + edit: Edytować + lastUpdatedDate: Last updated %date% + noUpdates: No updates + private: Prywatny + public: Publiczny + FeedInfoPanel: + add: Add %id% + backToFeedSource: Back to feed source + backToProject: Back to project + editingFeed: Editing %feed% + noSnapshot: No snapshots created + restoreSnapshot: + body: Are you sure you want to restore this snapshot? + title: Restore %key%? + revert: Revert to %snapshot% + takeSnapshot: Take snapshot + toolbar: + hide: Hide toolbar + show: Show toolbar + unnamed: Unnamed + uploadShapefile: + body: 'Wybierz spakowany plik kształtu do wyświetlenia na mapie. Uwaga: służy + tylko jako pomoc wizualna.' + error: Przesłany plik musi być prawidłowym plikiem zip (.zip). + title: Prześlij plik kształtu trasy + FeedLabel: + delete: + body: Are you sure you want to delete the label %name%? This action will remove + the label from all feed sources it's assigned to. + title: Delete Label? + FeedSourceAttributes: + lastUpdated: Zaktualizowano + FeedSourcePanel: + chooseProject: '[choose project]' + chooseProjectToView: Choose a project to view feeds + createOne: Create one. + filters: + ALL: All + PRIVATE: Private + PUBLIC: Public + STARRED: Starred + forFeed: For feed + noFeedsYet: No feeds yet. + search: Wyszukaj kanały + unnamed: unnamed + FeedSourceSettings: + autoPublish: Auto-publish + feedTransformations: Feed Transformations + general: General + noPermission: You do not have permission to edit details for this feed source. + properties: properties + warning: Warning! + FeedSourceTable: + comparisonColumn: + DEPLOYED: Wdrożona wersja + PUBLISHED: Wersja opublikowana + createFirst: Utwórz pierwsze źródło kanału! + datesValid: Dates Valid + feedInfo: Feed Info + issues: Issues + latestVersion: Latest Version + status: Status + FeedSourceTableRow: + dateFormat: MMM D, YYYY + expired: Expired %duration% ago + lastUpdated: Last updated %lastVersionUpdate% ago + noUpdates: No updates yet + none: None + startingIn: Starting in %duration% + status: + active: Aktywny + all: Wszystkie + expired: Wygasłe + expiring-within-5-days: Wygasające w ciągu 5 dni + expiring-within-20-days: Wygasające w ciągu 20 dni + feedNotInDeployment: Kanały niebędące w wdrożeniu + feedNotPublished: Kanały nieopublikowane + future: W przyszłości + no-version: Brak wersji + same-as-deployed: Taki sam jak wdrożony + same-as-published: Taki sam jak opublikowany + validFor: Valid for another %duration% + FeedSourceViewer: + deploy: Wdrażaj + edit: Edytuj GTFS + gtfs: GTFS + notesTitle: Notatki + private: Widok prywatny + properties: + deployable: Do wdrożenia? + name: Nazwa + noneSelected: (Nie wybrano) + property: Właściwość + public: Publiczny? + retrievalMethod: + fetchedAutomatically: Fetched Automatically + manuallyUploaded: Manually Uploaded + producedInHouse: Produced In-house + producedInHouseGtfsPlus: Produced In-house (GTFS+) + regionalMerge: Regional Merge + servicePeriodMerge: Service Period Merge + title: Retrieval Method + versionClone: Version Clone + snapshot: Migawka edytora + title: Ustawienia + value: Wartość + snapshotsTitle: Migawki + update: Aktualizacja + upload: Upload + versions: Wersje + viewPublic: View public page + FeedTransformationDescriptions: + DeleteRecordsTransformation: + label: Delete records from %tablePlaceholder% + name: Delete records transformation + NormalizeFieldTransformation: + filePlaceholder: Choose file/table to normalize + label: Normalize field + name: Normalize field transformation + ReplaceFileFromStringTransformation: + filePlaceholder: Choose the file/table to replace + label: Replace %tablePlaceholder% from %filePlaceholder% + name: Replace file from string transformation + ReplaceFileFromVersionTransformation: + filePlaceholder: Choose the file/table to replace + label: Replace %tablePlaceholder% from %versionPlaceholder% + name: Replace file from version transformation + general: + fileDefined: below text + filePlaceholder: '[choose file]' + table: table + tablePlaceholder: '[choose table]' + version: version + versionPlaceholder: '[choose version]' + AddCustomFileTransformation: + label: Add custom file in GTFS. + name: Add custom file transformation + PreserveCustomFieldsTransformation: + filePlaceholder: Choose the file/table with custom field + label: Preserve fields in %tablePlaceholder% from %filePlaceholder% + name: Preserve custom fields transformation + FeedVersionNavigator: + confirmDelete: Are you sure you want to delete this version? This cannot be undone. + confirmLoad: This will override all active GTFS Editor data for this Feed Source + with the data from this version. If there is unsaved work in the Editor you + want to keep, you must snapshot the current Editor data first. Are you sure + you want to continue? + delete: Delete + deployFeed: Deploy feed + download: Download + editFeed: Edit feed + feed: Feed + fetch: Fetch + fromSnapshot: From snapshot + load: Load for Editing + newVersion: Create new version + next: Next + of: of + previous: Previous + selectFeed: 'Select a GTFS feed to upload:' + selectVersion: Select a version to view summary + upload: Upload + uploadFeed: Upload Feed + version: Version + zipWarning: Uploaded file must be a valid zip file (.zip). + FeedVersionTabs: + agencyCount: Agency count + daysActive: Days active + routeCount: Route count + stopCount: Stop count + stopTimesCount: Stop time count + tripCount: Trip count + validDates: Valid Dates + FeedVersionViewer: + confirmDelete: Are you sure you want to delete this version? This cannot be undone. + confirmLoad: This will override all active GTFS Editor data for this Feed Source + with the data from this version. If there is unsaved work in the Editor you + want to keep, you must snapshot the current Editor data first. Are you sure + you want to continue? + delete: Delete + download: Download + feed: Feed + load: Load + noVersionsExist: No versions exist for this feed source. + status: Status + timestamp: File Timestamp + version: version + FormInput: + buildConfig: + elevationBucket: + accessKey: Access Key + bucketName: S3 Bucket Name + secretKey: Secret Key + fares: Fares + fetchElevationUS: Fetch Elevation + stationTransfers: Sta. Transfers + subwayAccessTime: Subway Access Time + title: Build Config + deployment: + osm: + bounds: Custom Extract Bounds + custom: Use Custom Extract Bounds + gtfs: Use GTFS-Derived Extract Bounds + title: OSM Extract + title: Deployment + otpServers: + $index: + admin: Admin access only? + delete: Remove + ec2Info: + amiId: AMI ID + buildAmiId: Graph build AMI ID + buildImageDescription: New Image Description + buildImageName: New Image Name + buildInstanceType: Graph build instance type + iamInstanceProfileArn: IAM Instance Profile ARN + instanceCount: Instance count + instanceType: Instance type + keyName: Key file name + recreateBuildImage: Recreate Build Image after Graph Build? + region: Region name + securityGroupId: Security Group ID + subnetId: Subnet ID + targetGroupArn: Target Group ARN (load balancer) + internalUrl: Internal URLs + name: Name + namePlaceholder: Production + publicUrl: Public URL + role: AWS Role + s3Bucket: S3 bucket name + serverPlaceholder: Server name + title: Servers + routerConfig: + brandingUrlRoot: Branding URL Root + carDropoffTime: Car Dropoff Time + numItineraries: '# of itineraries' + requestLogFile: Request log file + stairsReluctance: Stairs Reluctance + title: Router Config + updaters: + $index: + defaultAgencyId: Default agency ID + frequencySec: Frequency (in seconds) + sourceType: Source type + type: Type + url: URL + new: Add updater + placeholder: Updater name + title: Real-time updaters + walkSpeed: Walk Speed + GeneralSettings: + autoFetch: + checkbox: Auto fetch feed source + hint: Set this feed source to fetch automatically. (Feed source URL must be + specified and project auto fetch must be enabled.) + title: Automatic Fetch + url: Feed source fetch URL + urlButton: Change URL + bundleFilename: Override filename for GTFS bundle + bundleFilenameHint: Optional. Define a custom filename (without .zip) for this feed source when included in a GTFS bundle. The .zip extension is added automatically. + confirmDelete: Are you sure you want to delete this project? This action cannot + be undone and all feed sources and their versions will be permanently deleted. + dangerZone: Danger Zone + deleteFeedSource: Delete feed source + deleteFeedSourceDesc: Delete this feed source. + deleteFeedSourceHint: Once you delete a feed source, it cannot be recovered. + deleteProject: Delete Project? + deployment: + buildConfig: + elevationBucket: + accessKey: Access Key + bucketName: S3 Bucket Name + secretKey: Secret Key + fares: Fares + fetchElevationUS: Fetch Elevation + stationTransfers: Sta. Transfers + subwayAccessTime: Subway Access Time + title: Build Config + osm: + bounds: Custom Extract Bounds + custom: Use Custom Extract Bounds + gtfs: Use GTFS-Derived Extract Bounds + title: OSM Extract + otpServers: + $index: + admin: Admin access only? + delete: Remove + internalUrl: Internal URLs + name: Name + namePlaceholder: Production + publicUrl: Public URL + s3Bucket: S3 bucket name + new: Add server + serverPlaceholder: Server name + title: Servers + routerConfig: + brandingUrlRoot: Branding URL Root + carDropoffTime: Car Dropoff Time + numItineraries: '# of itineraries' + requestLogFile: Request log file + stairsReluctance: Stairs Reluctance + title: Router Config + updaters: + $index: + defaultAgencyId: Default agency ID + frequencySec: Frequency (in seconds) + sourceType: Source type + type: Type + url: URL + new: Add updater + placeholder: Updater name + title: Real-time updaters + walkSpeed: Walk Speed + title: Deployment + feedSourceName: Feed source name + general: + location: + boundingBox: Bounding box (W,S,E,N) + defaultLanguage: Default language + defaultLocation: Default location (lat, lng) + defaultTimeZone: Default time zone + title: Location + name: Project name + title: General + updates: + autoFetchFeeds: Auto fetch feed sources? + title: Updates + labels: + title: Labels + invalidFilename: "Filename contains invalid characters (e.g., / \ : * ? \" < > | space) or ends with .zip." + filenamePlaceholder: e.g., agency_bundle + make: + private: Make private + privateDesc: Make this feed source private. + privateState: This feed source is currently private. + public: Make public + publicDesc: Make this feed source public. + publicState: This feed source is currently public. + makeDeployable: Make feed source deployable + makeDeployableHint: Enable this feed source to be deployed to an OpenTripPlanner + (OTP) instance (defined in organization settings) as part of a collection of + feed sources or individually. + rename: Rename + save: Save + title: Settings + GtfsIcons: + agency: + label: Agencies + title: Edit agencies + calendar: + label: Calendar + title: Edit calendar + fare: + label: Fares + title: Edit fares + feedinfo: + label: Feed Info + title: Edit feed info + route: + label: Routes + title: Edit routes + scheduleExceptions: + label: Schedule Exceptions + title: Edit schedule exceptions + stop: + label: Stops + title: Edit stops + GtfsValidationExplorer: + accessibilityValidation: Accessibility Explorer + table: + count: Count + file: File + issue: Issue + priority: Priority + timeValidation: Time-based Validation + title: Validation Explorer + validationIssues: Validation Issues + GtfsValidationViewer: + explorer: Validation Explorer + issues: + other: Other issues + routes: Route issues + shapes: Shape issues + stop_times: Stop times issues + stops: Stop issues + trips: Trip issues + noResults: No validation results to show. + tips: + DATE_NO_SERVICE: If the transit service does not operate on weekends, some or + all of these validation issue may be ignored. Similarly, holidays for which + there is no transit service running may appear in this list. + FEED_TRAVEL_TIMES_ROUNDED: This is a common feature of GTFS feeds that do not + use down-to-the-second precision for arrival/departure times. However, if + this precision is expected, there may be an issue occurring during feed export. + MISSING_TABLE: Missing a required table is a major issue that must be resolved + before most GTFS consumers can make use of the data for trip planning or in + other applications. + title: Validation issues + HomeProjectDropdown: + new: New Project + select: Select project + view: View %name% + InfoModal: + ok: OK + JobMonitor: + clearCompleted: Clear completed + jobs: + none: No active jobs + one: One active job + some: '%count% active jobs' + jobsCompleted: All jobs completed + serverJobs: Server Jobs + waiting: waiting + LabelPanel: + labels: Labels + new: Add a new label + noLabels: There are no labels in this project. + LanguageSelect: + placeholder: Select language... + Login: + title: Log in + ManagerHeader: + noUpdateYet: n/a + bundleFilename: Bundle Filename + noUrl: (none) + private: This feed source and all its versions are private. + ManagerPage: + alerts: Alerts + changelog: Changelog + contact: Contact + copyright: Copyright + datatools: Data Tools + guide: Guide + home: Home + MapModal: + cancel: Cancel + ok: OK + MergeFeedsResult: + CHECK_STOP_TIMES: Some trip IDs were found in both feeds. The merged feed was + successfully created. + DEFAULT: Trip IDs were unique in the source feeds. The merged feed was successfully + created. + body: + failure: Merge failed with %errorCount% errors. + success: Merge was completed successfully. A new version will be processed/validated + containing the resulting feed. + remappedIds: 'Remapped IDs: %remappedIdCount%' + skipped: 'Skipped records:' + skippedTableRecords: '%table%: %skippedCount%' + strategyUsed: 'Strategy used: %strategy%' + title: + failure: 'Warning: Errors encountered during feed merge!' + success: Feed merge was successful! + tripIdsToCheck: 'Trip IDs to check: %tripIdCount%' + NormalizeField: + issues: + fieldUndefined: Field to normalize must be defined. + substitutionInvalid: Some substitution patterns are invalid. + substitutionUndefined: Substitution patterns must be defined. + NormalizeStopTimesModal: + close: Close + interpolateStopTimes: Interpolate stop times between timepoints? + normalizeStopTimes: Normalize stop times + normalizeStopTimesQuestion: Normalize stop times? + selectBeginningPatternStop: "Select beginning pattern stop:" + tooFewTimepoints: "You must have more than 1 timepoint to interpolate times" + usageExplanationOne: This feature is useful when the travel times for one or more + pattern stops change. Take for example a pattern + that has been re-routed along to travel a longer distance, has had a + stop added (or removed), or has had a layover introduced mid-trip. + Once you have adjusted the travel times to account for these changes, + you can normalize the stop times to bring them into alignment with the + updated travel times reflected in the pattern stops. + usageExplanationTwo: Interpolating stop times calculates the implicit speed between timepoints + based on the shape distance and the default travel times. This speed is + then applied to the shape distance traveled for each intermediate non-timepoint + stop to provide interpolated travel times. The default travel time for non-timepoint + stops will not be modified. + usageNotes: " Usage notes" + NormalizeStopTimesTip: + info: 'Tip: when changing travel times, consider using the "Normalize stop times" + button above to automatically update all stop times to the updated travel time.' + NoteForm: + adminOnly: 'TODO: Translate' + new: 'TODO: Translate' + postComment: 'TODO: Translate' + NotesViewer: + adminOnly: 'TODO: Translate' + all: All Comments + feedSource: Feed Source + feedVersion: Version + new: Post + none: No comments. + postComment: Post a New Comment + refresh: Refresh + title: Comments + OrganizationList: + create: Create Organization + missingName: Must provide organization name. + new: Create org + search: Search orgs + OrganizationSettings: + extensions: Extensions + logoUrl: + label: Logo URL + placeholder: http://example.com/logo_30x30.png + name: + label: Name + placeholder: Big City Transit + orgDetails: Organization details + projects: Projects + subDetails: Subscription details + subscriptionBeginDate: Subscription begins + subscriptionEndDate: Subscription ends + usageTier: + high: High + low: Low + medium: Medium + title: Usage tier + PageNotFound: + homePage: home page + pageNotFound: Page Not Found. + Permissions: + approve-alert: Approve GTFS-RT Alerts + approve-gtfs: Approve GTFS Feeds + edit-alert: Edit GTFS-RT Alerts + edit-gtfs: Edit GTFS Feeds + manage-feed: Manage Feed Configuration + PreserveCustomFields: + addCsvWithCustomFields: "Add the CSV data with custom fields to preserve in the final output." + saveCsv: Save CSV + ProjectAccessSettings: + admin: Admin + cannotFetchFeeds: Cannot fetch feeds + custom: Custom + feeds: Feed Sources + noAccess: No Access + permissions: Permissions + title: Project Settings for + ProjectFeedListToolbar: + actions: Actions + all: all + any: any + comparison: + DEPLOYED: Deployed + LATEST: Latest + PUBLISHED: Published + deployedVersion: 'Deployed Version:' + deployments: Deployments + downloadCsv: Download Summary as CSV + feeds: + createFirst: Create first feed source! + new: New + search: Search by name + table: + deployable: Deployable? + errorCount: Errors + lastUpdated: Updated + name: Name + public: Public? + retrievalMethod: Retrieval Method + validRange: Valid Range + title: Feed Sources + update: Fetch all + filter: + active: Active + all: All + expired: Expired + expiring: Expiring + future: Future + filterByLabels: Filter feeds by labels + filterFeedSources: Filter feed sources on + hasDeployedVersion: Has Deployed Version? + hasLatestVersion: Has a latest version? + hasPublishedVersion: Has Published Version? + isPublic: Is Public + labelEndDate: '%labelPrefix% End Date' + labelNumberIssues: '%labelPrefix% Number of Issues' + labelNumberRoutes: '%labelPrefix% Number of Routes' + labelNumberStopTimes: '%labelPrefix% Number of StopsTimes' + labelNumberStops: '%labelPrefix% Number of Stops' + labelNumberTrips: '%labelPrefix% Number of Trips' + labelStartDate: '%labelPrefix% Start Date' + lastFetched: Last Time Data Fetched from Feed URL + lastUpdated: Last Updated + latestValidation: + endDate: 'Latest Version: End Date' + errorCount: 'Latest Version: Number of Issues' + routeCount: 'Latest Version: Number of Routes' + startDate: 'Latest Version: Start Date' + stopCount: 'Latest Version: Number of Stops' + stopTimesCount: 'Latest Version: Number of Stop Times' + tripCount: 'Latest Version: Number of Trips' + makePublic: Publish public feeds + mergeFeeds: Merge all + name: Name + noteSorting: 'Note: sorting only available on latest version data' + ofTheLabels: 'of the labels:' + publishedVersion: 'Published Version:' + settings: Settings + showFeedsWith: Show feeds with + sort: + alphabetically: + asc: A-Z + desc: Z-A + title: Alphabetically + endDate: + asc: Earliest-Latest + desc: Latest-Earliest + title: Expiration Date + lastUpdated: + asc: Stale-Recent + desc: Recent-Stale + title: Last Update + numErrors: + asc: Least-Most + desc: Most-Least + title: Number of Issues + startDate: + asc: Earliest-Latest + desc: Latest-Earliest + title: Start Date + sortBy: Sort By + sync: + mtc: Sync from MTC + transitfeeds: Sync from transitfeeds + transitland: Sync from transit.land + url: Feed download URL + version: version + ProjectSettingsForm: + cancel: Cancel + confirmDelete: Are you sure you want to delete this project? This action cannot + be undone and all feed sources and their versions will be permanently deleted. + dangerZone: Danger zone + deleteProject: Delete Project? + deleteProjectAction: Delete Project + deleteThisProject: Delete this project. + deleteWarning: Once you delete an project, the project and all feed sources it + contains cannot be recovered. + fields: + localPlacesIndex: + title: Local Places Index + webhookUrl: Webhook URL + sharedStops: + title: Shared Stops + placeholder: Shared stops config CSV + location: + boundingBox: Bounding box (W,S,E,N) + boundingBoxPlaceHolder: min_lon, min_lat, max_lon, max_lat + defaultLanguage: Default language + defaultLocation: Default location (lat, lng) + defaultTimeZone: Default time zone + title: Location + name: Project name + title: General + updates: + autoFetchFeeds: Auto fetch feed sources? + title: Updates + noPermissions: You do not have permission to edit details for this feed source. + required: Required. + save: Save + selectBounds: Select project bounds + selectBoundsHint: Pretend this is a map + title: Settings + warning: Warning! + ProjectSummaryPanel: + hoursPerWeekday: hours per weekday + numberOfFeeds: 'Number of feeds:' + summary: summary + totalErrors: 'Total errors:' + totalService: 'Total service:' + ProjectViewer: + autoFetchDisabled: Auto fetch disabled + deployments: Deployments + feedSourceDesc: A feed source defines the location or upstream source of a GTFS + feed. GTFS can be populated via automatic fetch, directly editing or uploading + a zip file. + feedSourceTitle: What is a feed source? + feeds: + createFirst: Create first feed source! + new: New Feed Source + search: Search by name + table: + deployable: Deployable? + errorCount: Errors + lastUpdated: Updated + name: Name + public: Public? + retrievalMethod: Retrieval Method + validRange: Valid Range + title: Feed Sources + update: Fetch all + here: here + makePublic: Publish public feeds + mergeFeeds: Merge all + noProjectFound: No project found for + note: 'Note:' + publicViewed: "Public feeds page can be viewed " + returnToProjects: Return to list of projects + settings: Settings + ProjectsList: + createFirst: Create my first project + help: + content: A project is used to group GTFS feeds. For example, the feeds in a + project may be in the same region or they may collectively define a planning + scenario. + title: What's a project? + new: New Project + noProjects: You currently do not have any projects. + search: Search by project name + table: + name: Project Name + title: Projects + PublicFeedsTable: + country: Country + lastUpdated: Last Updated + link: Link to GTFS + name: Feed Name + region: Region + search: Search + stateProvince: State or Province + PublicFeedsViewer: + title: Catalogue + PublicLandingPage: + appLogo: App logo + copyright: Copyright + existingUsers: Existing users + here: here + learnMore: Learn more about Data Tools + signInHere: sign in here + viewDashboard: View dashboard + RegionSearch: + placeholder: Search for regions or agencies + ReplaceFileFromString: + addCsvData: "Add the CSV data to add to/replace in the incoming GTFS:" + saveCsv: Save CSV + ResultTable: + affectedIds: Affected ID(s) + description: Description + line: Line + priority: Priority + problemType: Problem Type + RetiredJob: + bug: Oh no! Looks like an error has occurred. + support: To submit an error report email a screenshot of your browser window, + the following text (current URL and error details), and a detailed description + of the steps you followed to %supportEmail%. + view: View + RouteLayout: + errorOccurred: An error occurred while trying to fetch the data + jumpToRoute: Jump to a Route + route: "Route:" + RouteRow: + patterns: "%num% Patterns" + stops: "%num% Stops" + trips: "%num% Trips" + ScheduleExceptionForm: + addDate: " Add date" + customServiceID: Custom service ID + dates: Dates + exceptionBasedService: Exception Based Service + exceptionName: Exception name* + noDatesSpecified: No dates specified + noService: No Service + onTheseDates: On these dates* + ranges: Ranges + runFollowing: "Run the following schedule:" + selectCalendar: Select calendar to run* + selectCalendarToAdd: "Select calendars to add (optional):" + selectCalendarToRemove: "Select calendars to remove (optional):" + selectExemplar: -- Select exception type -- + swapAddOrRemove: Swap, add, or remove + thanksgivingDay: Thanksgiving Day + unnamedDefault: "[unnamed]" + SelectFileModal: + cancel: Cancel + mtcMergeWarning: Warning! Feeds merged outside of TDM are not recognized as a merged feed within TDM. + ok: OK + ServerSettings: + awsSetup: Instructions for setting up OTP deployment servers on AWS + confirmDelete: Are you sure you want to delete this server record? + deployment: + otpServers: + new: Add server + refresh: Refresh + serverPlaceholder: Server name + title: Deployment Server Management + instructions: Instructions + noServers: No servers defined + save: Save + title: Settings + ServerSpecialFields: + confirmTermination: 'Are you sure you want to terminate %count% instance(s)?\n\n + WARNING: This will kill OTP service for any deployments launched for this server.' + noEC2Instances: No EC2 instances associated with server. + projectSpecific: Project specific? + projectSpecificPlaceholder: Assign to a project or leave open for any project + terminateEC2: Terminate EC2 Instances + useELB: Use Elastic Load Balancer (ELB)? + ShowAllRoutesOnMapFilter: + fetching: Fetching + noShapes: Karma nie ma jeszcze utworzonych żadnych kształtów tras. + showAllRoutesOnMap: Show all routes + tooManyShapeRecords: large shapes.txt may impact performance + Sidebar: + about: About this app + account: Account + serverJobs: Server jobs + serverVersion: 'Server version:' + settings: Settings + uiDeployedAt: 'UI deployed at:' + uiVersion: 'UI Version:' + unknown: Unknown + SnapshotItem: + active: Active + confirmDelete: This will permanently delete this snapshot. Any data saved here + cannot be recovered. Are you sure you want to continue? + confirmLoad: This will override all active GTFS Editor data for this Feed Source + with the data from this version. If there is unsaved work in the Editor you + want to keep, you must snapshot the current Editor data first. Are you sure + you want to continue? + createFromScratch: Create GTFS from Scratch + created: created + date: Date + delete: Delete + download: Download + feed: Feed + load: Load for Editing + loadLatest: Load latest for editing + name: Name + noVersions: (No Versions) + noVersionsExist: No versions exist for this feed source. + of: of + publish: Publish + restore: Restore + snapshot: snapshot + title: Snapshots + version: Version + StarButton: + star: Star + unstar: Unstar + Status: + CREATED_SNAPSHOT: + body: New snapshot "%payload%" created. It will be accessible from the "Editor + Snapshots" tab in the main Feed Source page. + title: Snapshot Created + CREATING_SNAPSHOT: Creating snapshot... + DELETING_AGENCY: Deleting agency... + DELETING_FEEDVERSION: Deleting feed version... + DELETING_SNAPSHOT: Deleting snapshot... + DELETING_TRIPS_FOR_CALENDAR: Deleting trips... + FETCHING_ALL_JOBS: Fetching jobs... + LOADING_FEEDVERSION_FOR_EDITING: Loading version into editor... + PUBLISHING_GTFSPLUS_FEED: Publishing GTFS+ feed... + RENAMING_FEEDVERSION: Renaming feed version... + REQUEST_RTD_ALERTS: Loading alerts... + REQUESTING_AGENCIES: Loading agencies... + REQUESTING_DEPLOYMENT: Loading deployment... + REQUESTING_DEPLOYMENTS: Loading deployments... + REQUESTING_FEEDSOURCE: Loading feed... + REQUESTING_FEEDSOURCES: Loading feeds... + REQUESTING_FEEDVERSION_ISOCHRONES: Calculating access shed... + REQUESTING_FEEDVERSIONS: Loading feed versions... + REQUESTING_GTFSEDITOR_SNAPSHOTS: Loading snapshots... + REQUESTING_GTFSPLUS_CONTENT: Loading GTFS+ data... + REQUESTING_NOTES: Loading comments... + REQUESTING_ORGANIZATIONS: Loading organizations... + REQUESTING_PROJECT: Loading project... + REQUESTING_PROJECTS: Loading projects... + REQUESTING_PUBLIC_FEEDS: Loading public feeds... + REQUESTING_ROUTES: Loading routes... + REQUESTING_STOPS: Loading stops... + REQUESTING_SYNC: Syncing feeds... + REQUESTING_TRIPS_FOR_CALENDAR: Loading trips... + REQUESTING_USERS: Loading users... + REQUESTING_VALIDATION_ISSUE_COUNT: Loading validation result... + RESTORING_SNAPSHOT: Restoring snapshot... + RUNNING_FETCH_FEED_FOR_PROJECT: Updating feeds for project... + SAVING_AGENCY: Saving agency... + SAVING_DEPLOYMENT: Saving deployment... + SAVING_FEEDSOURCE: Saving feed... + SAVING_PROJECT: Saving project... + SAVING_ROUTE: Saving route... + SAVING_STOP: Saving stop... + UPDATING_SERVER: Saving server... + UPDATING_USER_DATA: Updating user... + UPLOADING_FEED: Uploading feed... + UPLOADING_GTFSPLUS_FEED: Saving GTFS+ data... + VALIDATING_GTFSPLUS_FEED: Updating GTFS+ validation... + RUNNING_FETCH_FEED: Fetching feed... + StatusModal: + close: Close + login: Log in + reload: Reload page + relock: Re-lock feed + relockingFailed: + body: Re-locking feed is only permitted if another editing session is in progress + for you (not another user). You can try again later or contact the current + editor to request that they wrap up their session. + title: Attempt to take over editing failed! + TimetableEditor: + choosePattern: Choose a trip pattern. + createNew: create a new one + deleteSelectedTrip: Are you sure you want to permanently delete %count% selected + trip? + deleteSelectedTrips: Are you sure you want to permanently delete %count% selected + trips? + deleteTrips: Delete trips + deleteTripsQuestion: Delete trips? + TimetableHeader: + addBlankTrip: Add blank trip + advancedSettings: Advanced settings + backToRoute: Back to route + calendarName: "%truncatedCalendarName% calendar" + cellNumber: "Cell %cellId%" + createTripSeries: Create trip series + deleteTrips: Delete trips + duplicateTrips: Duplicate trips + frequencyEditor: Frequency editor + hideDepartureTimes: " Hide departure times" + hideDepartureTimesTooltip: "Hiding departure times will keep arrival and departure times in sync. WARNING: do not use if arrivals and departures differ." + numValidationIssues: "%errorCount% validation issue(s) found!" + patternsOn: "%truncatedPatternName% on " + saveChanges: Save changes + selectCalendar: "[select calendar]" + selectPattern: "[select pattern]" + shiftClickToSubtract: Shift-click to subtract + showShortcuts: Show keyboard shortcuts + timetableEditor: Timetable editor + tripsFor: "trips for " + undoChanges: Undo changes + useSeconds: Use seconds in offset + useSecondsToolTip: Toggling the use of seconds allows more precision in the trip offset and trip series creation tools. + validationIssues: Validation issues + TimetableHelpModal: + close: Close + pressQuestionmark: Press ? to view shortcuts + shortcuts: + modify: + desc: + "0": Delete selected trip(s) + "1": New trip + "2": Clone selected trip(s) + "3": Copy time value from adjacent cell (the cell immediately to the left) + "4": Copy value from cell directly above + title: Modify trips + navigate: + desc: + "0": Previous/next trip + "1": Previous/next column + "2": Select trip + "3": Select all trips + "4": Deselect all trips + title: Navigating and selecting trips + offset: + desc: + "0": Offset selected trips' stop times by adding offset time + "1": Offset selected trips' stop times by subtracting offset time + "2": Offset only active cell's time by adding offset time + "3": Offset only active cell's time by subtracting offset time + "4": Decrease offset time by 1 minute + "5": Decrease offset time by 10 minutes + "6": Increase offset time by 1 minute + "7": Increase offset time by 10 minutes + title: Offsetting times + title: Timetable editor keyboard shortcuts + TimezoneSelect: + placeholder: Select timezone... + TransformationsViewer: + columnsAdded: "Custom columns added: %columns%" + noTransformationApplied: No transformations applied. + rowsAdded: "Rows added: %rows%" + rowsDeleted: "Rows deleted: %rows%" + rowsUpdated: "Rows updated: %rows%" + tableModified: Table Modified + tableAdded: Table Added + tableReplaced: Table Replaced + tableDeleted: TableDeleted + transformationsTitle: Transformations + UserAccount: + account: + title: Account + billing: + title: Billing + notifications: + methods: Notification methods + subscriptions: Your subscriptions + title: Notifications + unsubscribeAll: Unsubscribe from all + organizationSettings: Organization settings + organizations: + title: Organizations + personalSettings: Personal settings + profile: + profileInformation: Profile information + title: Profile + title: My settings + UserAccountInfoPanel: + hello: Hello, + profile: Profile + roles: + applicationAdmin: Application admin + organizationAdmin: Organization admin + standardUser: Standard user + UserButtons: + admin: Admin + logout: Log out + myAccount: My account + UserHomePage: + authDisabledInfo: >- + You are running %appTitle% without user authentication enabled. + Features such as user management, account management and feed activity watching are unavailable. + createFirst: Create my first project + help: + content: A project is used to group GTFS feeds. For example, the feeds in a + project may be in the same region or they may collectively define a planning + scenario. + title: What's a project? + new: New Project + noProjects: You currently do not have any projects. + recentActivity: Recent Activity + recentActivityNone: No Recent Activity for your subscriptions. + table: + name: Project Name + title: Projects + userDocs: User Docs + welcomeTo: Welcome to + UserList: + filterByOrg: Filter by org. + headings: + accountType: Account Type + lastLogin: Last Login + projects: Projects + user: User + noResults: (No results to show) + of: of + perPage: Users per page + search: Search by username + showing: Showing Users + title: User Management + UserRow: + appAdmin: App admin + cancel: Cancel + delete: Delete + deleteConfirm: Are you sure you want to permanently delete this user? + edit: Edit + missingProject: unknown + noProjectsFound: No projects + orgAdmin: Org admin + save: Save + unknownAccount: Unknown + UserSettings: + admin: + description: Application administrators have full access to all projects. + title: Application Admininistrator + application: Application Settings + cancel: Cancel + delete: Delete + edit: Edit + noProjects: No projects available + org: + admin: Organization administrator + billing: Billing admin + description: Organization administrators have full access to projects within + the organization. + project: + admin: Admin + custom: Custom + noAccess: No Access + save: Save + Validation: + agencyRequired: Field must be populated for feeds with more than one agency. + conflictingServiceId: Service ID already exists in a standard calendar! + customServiceId: Custom service ID + dateServiceIdCombinationDuplicate: Date (%exceptionDate%) and Service ID (%serviceId%) combination cannot appear more than once for all exceptions. + idMustBeUnique: Identifier must be unique. + idRequired: Identifier is required if more than one agency exists. + invalidEmail: Field must contain valid email address. + invalidLatitude: Field must be valid latitude. + invalidLongitude: Field must be valid longitude. + invalidRouteType: Field must be a valid route type. + invalidUrl: Field must contain valid URL. + latLonRequired: Latitude and Longitude are required for your current location type. + mustBePositiveInteger: Field must be a positive integer. + mustBePositiveNumber: Field must be a positive number. + mustBeValidNumber: Field must be a valid number. + nameAlreadyUsed: "%name% is already used in another exception." + serviceRequired: Calendar must have service for at least one day. + stopNameRequired: Stop name is required for stop, station, and entrance location types. + requiredFieldEmpty: Required field must not be empty. + VersionButtonToolbar: + confirmDelete: Are you sure you want to delete this version? This cannot be undone. + confirmLoad: This will override all active GTFS Editor data for this Feed Source + with the data from this version. If there is unsaved work in the Editor you + want to keep, you must snapshot the current Editor data first. Are you sure + you want to continue? + delete: Delete + download: Download + feed: Feed + load: Load + noVersionsExist: No versions exist for this feed source. + status: Status + timestamp: File Timestamp + version: version + VersionComparisonDropdown: + compareToVersion: Comparing to version %version% + compareVersions: Compare versions + exit: Exit compare mode + loadAnother: Load another version to enable comparison + selectVersion: Select a version to compare with + VersionSelectorDropdown: + noVersions: No versions available + WatchButton: + emailVerificationConfirm: In order to receive email notification, you must first + verify your email address. Would you like to resend the email verification message + for your account? + unwatch: Unwatch + verificationSendError: There was an error sending the email verification! + verificationSent: Please check your inbox and confirm your email address by clicking + the verify link. You will then need to refresh this page after a moment or two + and re-click the Watch button to subscribe to notifications. + watch: Watch + WrapComponentInAuthStrategy: + adminTestFailed: You have attempted to view a restricted page without proper credentials + FeedTransformationErrors: + csvMissingName: Custom CSV must have a name. + csvNameContainsTxt: Custom CSV name cannot contain .txt + undefinedCSVData: CSV data must be defined. + undefinedTable: Table must be defined + PatternStopCard: + PatternStopContents: + defaultDwellTime: Default dwell time + defaultTravelTime: Default travel time + firstStopTravelTime: Travel time for first stop must be zero + stopHeadsignPlaceholder: Outbound + stopHeadsignText: Stop headsign + stopHeadsignTitle: Headsign that overrides trip headsign between stops. + timepoint: Timepoint? + travelTimeHelp: Define the default time it takes to travel to this stop from + the previous stop. + PickupDropOffSelect: + available: Available (0) + continuousDropOffTitle: Indicates whether a rider can alight from the transit + vehicle at any point along the vehicle's travel path. + continuousPickupTitle: Indicates whether a rider can board the transit vehicle + anywhere along the vehicle's travel path. + continuousServiceDefault: (Inherit from route) + dropOffTitle: Define the dropff method/availability at this stop. + mustCoordinate: Must coordinate with driver to arrange (3) + mustPhoneAgency: Must phone agency to arrange (2) + notAvailable: Not available (1) + pickupDropOffDefault: (Default - Available) + pickupTitle: Define the pickup method/availability at this stop. + TripSeriesModal: + alternateEvery: "Alternate every: " + automaticallyUpdateBlockIds: Automatically assign Block IDs for trips created in series? + automaticallyUpdateTripIds: Automatically update Trip IDs for trips created in series? + blockIdPrefixPlaceholder: Block ID prefix + blockIncrementPlaceholder: inc. by + close: Close + createTripSeriesBody: Enter the start and end time for the trip series (24 hour time) and headway between trips. Click generate to create the series of trips. + createTripSeriesQuestion: Create a series of trips + disabledTooltip: There is an issue with the input data + endTime: "End Time:" + formatExplanation: "* Block IDs will be formatted as {prefix}-{alternating number}, e.g. 'WEEKDAY-1' then 'WEEKDAY-2', etc.'" + generateTrips: Generate Trips + headway: "Headway:" + incrementAmountPlaceholder: Increment amount + incrementBy: inc. by + incrementStartPlaceholder: Increment start (default 0) + prefixPlaceholder: Trip ID prefix (optional) + startTime: "Start Time:" + tripsStartingWith: "trip(s), starting with:" From 3e961847cd165bd32ae5e6df4cdc01180a6d8c66 Mon Sep 17 00:00:00 2001 From: Josh Willis <168561922+josh-willis-arcadis@users.noreply.github.com> Date: Thu, 16 Oct 2025 15:53:08 -0500 Subject: [PATCH 3/5] look for `latestPublishedVersionId` on feedSource --- lib/manager/util/index.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/manager/util/index.js b/lib/manager/util/index.js index f43b1ca22..1f909a8f8 100644 --- a/lib/manager/util/index.js +++ b/lib/manager/util/index.js @@ -412,7 +412,7 @@ export function projectHasAtLeastOneDeployment (project: ?Project): boolean { export function projectHasAtLeastOneFeedWithAPublishedVersion (project: ?Project): boolean { return !!project && !!project.feedSources && - project.feedSources.some(feedSource => feedSource.publishedVersionId) + project.feedSources.some(feedSource => feedSource.latestPublishedVersionId) } export function validationState (val: ?boolean): ?string { From e0f2bce12f32496f626bf66099d6712449151b6f Mon Sep 17 00:00:00 2001 From: Josh Willis <168561922+josh-willis-arcadis@users.noreply.github.com> Date: Tue, 21 Oct 2025 22:14:40 -0500 Subject: [PATCH 4/5] add new publish state column and component --- lib/manager/components/FeedSourceTable.js | 14 +++++++----- lib/manager/components/FeedSourceTableRow.js | 22 ++++++++++++++++++- .../version/FeedVersionActionsMTC.js | 1 + 3 files changed, 30 insertions(+), 7 deletions(-) diff --git a/lib/manager/components/FeedSourceTable.js b/lib/manager/components/FeedSourceTable.js index b55fa8fea..acc28f878 100644 --- a/lib/manager/components/FeedSourceTable.js +++ b/lib/manager/components/FeedSourceTable.js @@ -78,12 +78,14 @@ export default class FeedSourceTable extends PureComponent { {this.messages('issues')} - -

- - {this.messages('publishState')} -

- + {comparisonColumn && comparisonColumn === 'PUBLISHED' && + +

+ + {this.messages('publishState')} +

+ + } diff --git a/lib/manager/components/FeedSourceTableRow.js b/lib/manager/components/FeedSourceTableRow.js index 1447ecf57..d93c37b41 100644 --- a/lib/manager/components/FeedSourceTableRow.js +++ b/lib/manager/components/FeedSourceTableRow.js @@ -164,6 +164,7 @@ export default class FeedSourceTableRow extends PureComponent { } } + // eslint-disable-next-line complexity render () { const { comparisonColumn, @@ -236,7 +237,11 @@ export default class FeedSourceTableRow extends PureComponent { {currentVersionData.endDate} {currentVersionData.errorCount} - test + {comparisonColumn && comparisonColumn === 'PUBLISHED' && + + + + } @@ -367,6 +372,21 @@ class Status extends PureComponent<{ } } +class PublishStatus extends PureComponent<{ + feedSource: Feed +}> { + messages = getComponentMessages('PublishStatus') + + render () { + return ( + + + {this.messages('notPublished')} + + ) + } +} + class FeedActionsDropdown extends PureComponent { messages = getComponentMessages('FeedActionsDropdown') diff --git a/lib/manager/components/version/FeedVersionActionsMTC.js b/lib/manager/components/version/FeedVersionActionsMTC.js index 4d0c0c53b..9f8ea0088 100644 --- a/lib/manager/components/version/FeedVersionActionsMTC.js +++ b/lib/manager/components/version/FeedVersionActionsMTC.js @@ -83,6 +83,7 @@ class FeedVersionActionsMTC extends Component { _onClickPublish: (() => any) = () => this.props.publishFeedVersion(this.props.version) + // eslint-disable-next-line complexity render (): React$Element<"div"> { const { feedSource, From 893e11fdcd0fc6f51212785a921ed0617caedbd4 Mon Sep 17 00:00:00 2001 From: Josh Willis <168561922+josh-willis-arcadis@users.noreply.github.com> Date: Fri, 7 Nov 2025 13:15:52 -0600 Subject: [PATCH 5/5] add logic to display publish status --- i18n/english.yml | 4 +- lib/manager/components/FeedSourceTable.js | 2 +- lib/manager/components/FeedSourceTableRow.js | 93 ++++++++++++++++++-- lib/manager/containers/FeedSourceTableRow.js | 2 + lib/types/index.js | 8 +- 5 files changed, 97 insertions(+), 12 deletions(-) diff --git a/i18n/english.yml b/i18n/english.yml index 72105379f..927d28282 100644 --- a/i18n/english.yml +++ b/i18n/english.yml @@ -370,7 +370,9 @@ components: feedInfo: Feed Info issues: Issues latestVersion: Latest Version - publishState: Publish State + publishState: + title: Publish State + sameAsPublished: Same as Published status: Status FeedSourceTableRow: dateFormat: MMM D, YYYY diff --git a/lib/manager/components/FeedSourceTable.js b/lib/manager/components/FeedSourceTable.js index acc28f878..5bb9881e4 100644 --- a/lib/manager/components/FeedSourceTable.js +++ b/lib/manager/components/FeedSourceTable.js @@ -82,7 +82,7 @@ export default class FeedSourceTable extends PureComponent {

- {this.messages('publishState')} + {this.messages('publishState.title')}

} diff --git a/lib/manager/components/FeedSourceTableRow.js b/lib/manager/components/FeedSourceTableRow.js index d93c37b41..8e3229a5a 100644 --- a/lib/manager/components/FeedSourceTableRow.js +++ b/lib/manager/components/FeedSourceTableRow.js @@ -24,7 +24,7 @@ import WatchButton from '../../common/containers/WatchButton' import FeedLabel from '../../common/components/FeedLabel' import LabelAssignerModal from '../components/LabelAssignerModal' import type { Props as ContainerProps } from '../containers/FeedSourceTableRow' -import type { Feed, ValidationSummary, Project } from '../../types' +import type { Feed, ServerJob, ValidationSummary, Project } from '../../types' import type { FeedSourceTableComparisonColumns, ManagerUserState @@ -37,6 +37,7 @@ type Props = ContainerProps & { createFeedSource: typeof feedsActions.createFeedSource, deleteFeedSource: typeof feedsActions.deleteFeedSource, feedSource: Feed, + jobs: Array, runFetchFeed: typeof feedsActions.runFetchFeed, updateFeedSource: typeof feedsActions.updateFeedSource, uploadFeed: typeof versionsActions.uploadFeed, @@ -170,6 +171,7 @@ export default class FeedSourceTableRow extends PureComponent { comparisonColumn, comparisonValidationSummary, feedSource, + jobs, project, user } = this.props @@ -239,7 +241,7 @@ export default class FeedSourceTableRow extends PureComponent { {currentVersionData.errorCount} {comparisonColumn && comparisonColumn === 'PUBLISHED' && - + } @@ -372,18 +374,91 @@ class Status extends PureComponent<{ } } +// TODO: a lot of duplication with FeedVersionActionsMTC.js class PublishStatus extends PureComponent<{ - feedSource: Feed + feedSource: Feed, + jobs: Array }> { messages = getComponentMessages('PublishStatus') render () { - return ( - - - {this.messages('notPublished')} - - ) + const {feedSource, jobs} = this.props + const isPublished = feedSource.latestPublishedVersionId != null && + feedSource.latestNamespace != null && + feedSource.latestPublishedVersionId === feedSource.latestNamespace + const hasGtfsPlusBlockingIssue = feedSource.latestGtfsPlusValidation && + feedSource.latestGtfsPlusValidation.issues && + feedSource.latestGtfsPlusValidation.issues.length > 0 + const now = +moment().startOf('day') + const end = feedSource.latestValidation && feedSource.latestValidation.endDate + ? +moment(feedSource.latestValidation.endDate) + : null + const expired = end != null ? end < now : false + const processing = feedSource.latestSentToExternalPublisher && !feedSource.latestProcessedByExternalPublisher + const jobsProcessingThisVersion = jobs && jobs.some(job => job.feedVersionId != null && job.feedVersionId === feedSource.id) + + const publishingDisabled = !feedSource.latestGtfsPlusValidation || + hasGtfsPlusBlockingIssue || + !feedSource.latestGtfsPlusValidation.published || + expired || + !feedSource.latestValidation || + // !feedSource.latestValidation.error_counts || + hasGtfsPlusBlockingIssue || + isPublished || + processing || + jobsProcessingThisVersion + + if (isPublished) { + return ( + + + {this.messages('published')} + + ) + } else if (processing) { + return ( + + + {this.messages('publishingInProgress')} + + ) + } else if (!feedSource.latestGtfsPlusValidation) { + return ( + + + {this.messages('no version')} + + ) + } else if (publishingDisabled) { + let reason = '' + if (hasGtfsPlusBlockingIssue) { + reason = this.messages('publishingDisabledBlockingIssue') + } else if (expired) { + reason = this.messages('publishingDisabledExpired') + } else if (!feedSource.latestGtfsPlusValidation || !feedSource.latestGtfsPlusValidation.published) { + reason = this.messages('publishingDisabledNotPublished') + } else if (!feedSource.latestValidation) { + reason = this.messages('publishingDisabledNoVersions') + } else if (jobsProcessingThisVersion) { + reason = this.messages('publishingDisabledProcessingJob') + } + return ( + + + {this.messages('publishDisabled')} +
+ {reason} +
+
+ ) + } else { + return ( + + + {this.messages('unpublished')} + + ) + } } } diff --git a/lib/manager/containers/FeedSourceTableRow.js b/lib/manager/containers/FeedSourceTableRow.js index e3221fe2c..de9e06c32 100644 --- a/lib/manager/containers/FeedSourceTableRow.js +++ b/lib/manager/containers/FeedSourceTableRow.js @@ -24,6 +24,7 @@ const mapStateToProps = (state: AppState, ownProps: Props) => { const {projects, user} = state const {feedSource, project} = ownProps const comparisonColumn = projects.filter.feedSourceTableComparisonColumn + const jobs = state.status.jobMonitor.jobs return { comparisonColumn, @@ -32,6 +33,7 @@ const mapStateToProps = (state: AppState, ownProps: Props) => { feedSource, comparisonColumn ), + jobs, user } } diff --git a/lib/types/index.js b/lib/types/index.js index 70cf72fe4..7d64eecb5 100644 --- a/lib/types/index.js +++ b/lib/types/index.js @@ -400,9 +400,15 @@ export type FeedSourceSummary = { isPublic: boolean, labelIds: Array, lastUpdated?: number, + latestGtfsPlusValidation?: GtfsPlusValidation, + latestNamespace?: ?string, + latestProcessedByExternalPublisher?: ?number, + latestPublishedVersionId?: ?string, + latestSentToExternalPublisher?: ?number, latestValidation?: ValidationSummary, name: string, - projectId: string + projectId: string, + publishedValidationSummary?: ValidationSummary } export type Feed = FeedSourceSummary & {